[MacPorts] #22766: octave-database-1.0.4 fails to compile because gcc43 doesn't understand command line option "-arch"

MacPorts noreply at macports.org
Tue Mar 27 06:56:18 PDT 2012


#22766: octave-database-1.0.4 fails to compile because gcc43 doesn't understand
command line option "-arch"
-------------------------------+--------------------------------------------
  Reporter:  earcar@…          |       Owner:  and.damore@…           
      Type:  defect            |      Status:  closed                 
  Priority:  Normal            |   Milestone:                         
 Component:  ports             |     Version:  1.9.1                  
Resolution:  wontfix           |    Keywords:  swig                   
      Port:  octave-database   |  
-------------------------------+--------------------------------------------
Changes (by and.damore@…):

  * status:  reopened => closed
  * resolution:  => wontfix


Old description:

> Other strange things happens in octave related packages:
>
> {{{
> checking for gcc... /usr/bin/gcc-4.2
> checking whether /usr/bin/gcc-4.2 accepts -g... yes
> checking for /usr/bin/gcc-4.2 option to accept ISO C89... none needed
> checking how to run the C preprocessor... /usr/bin/gcc-4.2 -E
> [cut]
> /opt/local/bin/g++-mp-4.3 -c -I/opt/local/include -I/opt/local/include
> -fPIC -I/opt/local/include/octave-3.2.3
> -I/opt/local/include/octave-3.2.3/octave -I/opt/local/include -mieee-fp
> -I/opt/local/include/freetype2 -I/opt/local/include -pipe -arch x86_64
> -DHAVE_OCTAVE_32 sqlite3_wrap.cpp -o sqlite3_wrap.o
> cc1plus: error: unrecognized command line option "-arch"
> }}}
>
> This happens because the configure script at first tests for the default
> compiler (the apple one in my case) and then uses the compiler that built
> octave (gcc43).
>
> The worst part is that it seems to use MacPorts' default CXXFLAGS:
>
> {{{
> -pipe -O2 -arch x86_64
> }}}
>
> in combination with the compiler that built octave:
>
> {{{
> $ mkoctfile -p CXX
> /opt/local/bin/g++-mp-4.3
> }}}
>
> The Makeconf file is in fact hilarious about this:
>
> {{{
> # Most octave programs will be compiled with $(MKOCTFILE).  Those which
> # cannot use mkoctfile directly can request the flags that mkoctfile
> # would use as follows:
> #    FLAG = $(shell $(MKOCTFILE) -p FLAG)
> # The following flags are for compiling programs that are independent
> # of Octave.  How confusing.
> }}}
>
> Yeah, how confusing.

New description:

 Other strange things happens in octave related packages:

 {{{
 checking for gcc... /usr/bin/gcc-4.2
 checking whether /usr/bin/gcc-4.2 accepts -g... yes
 checking for /usr/bin/gcc-4.2 option to accept ISO C89... none needed
 checking how to run the C preprocessor... /usr/bin/gcc-4.2 -E
 [cut]
 /opt/local/bin/g++-mp-4.3 -c -I/opt/local/include -I/opt/local/include
 -fPIC \
 -I/opt/local/include/octave-3.2.3 -I/opt/local/include/octave-3.2.3/octave
 \
 -I/opt/local/include -mieee-fp -I/opt/local/include/freetype2
 -I/opt/local/include \
 -pipe -arch x86_64 -DHAVE_OCTAVE_32 sqlite3_wrap.cpp -o sqlite3_wrap.o
 cc1plus: error: unrecognized command line option "-arch"
 }}}

 This happens because the configure script at first tests for the default
 compiler (the apple one in my case) and then uses the compiler that built
 octave (gcc43).

 The worst part is that it seems to use MacPorts' default CXXFLAGS:

 {{{
 -pipe -O2 -arch x86_64
 }}}

 in combination with the compiler that built octave:

 {{{
 $ mkoctfile -p CXX
 /opt/local/bin/g++-mp-4.3
 }}}

 The Makeconf file is in fact hilarious about this:

 {{{
 # Most octave programs will be compiled with $(MKOCTFILE).  Those which
 # cannot use mkoctfile directly can request the flags that mkoctfile
 # would use as follows:
 #    FLAG = $(shell $(MKOCTFILE) -p FLAG)
 # The following flags are for compiling programs that are independent
 # of Octave.  How confusing.
 }}}

 Yeah, how confusing.

--

Comment:

 The '-march' option is easily corrected in r91251 but the package is
 broken upstream, cf. [http://octave.1599824.n4.nabble.com/Best-
 replacement-for-curr-sym-tab-in-octave-3-2-td1638528.html 1] and
 [http://octave.1599824.n4.nabble.com/Issue-installing-Octave-forge-
 database-1-0-4-td4173368.html 2] because it has not been upgraded for
 working with new octave's API.

 I'm closing the ticket, I suggest to ask the
 [http://octave.sourceforge.net/database/index.html upstream package
 author] to update the package for octave 3.2.x

-- 
Ticket URL: <https://trac.macports.org/ticket/22766#comment:13>
MacPorts <http://www.macports.org/>
Ports system for Mac OS


More information about the macports-tickets mailing list