[MacPorts] #42155: octave-3.6.4_11 +atlas +gcc48 install fails, calls out a 32-bit fortran lib instead of a 64-bit one

MacPorts noreply at macports.org
Thu Jan 16 11:31:10 PST 2014


#42155: octave-3.6.4_11 +atlas +gcc48 install fails, calls out a 32-bit fortran lib
instead of a 64-bit one
-------------------------------------------------+-------------------------
 Reporter:  wcarter@…                            |      Owner:  macports-
     Type:  defect                               |  tickets@…
 Priority:  Normal                               |     Status:  new
Component:  ports                                |  Milestone:
 Keywords:  octave, libgfortran, 64 bit, 32 bit  |    Version:  2.2.1
                                                 |       Port:
                                                 |  octave-3.6.4_11
-------------------------------------------------+-------------------------
 I'm running Mavericks (10.9.1) and have Xcode 5.0.2 installed. When I try
 to build octave from a clean install

 {{{

 elrond:~ wwc$ sudo port install octave +atlas+gcc48

 }}}

  it fails when attempting to build liboctave.la. The log file shows this:

 {{{

 :info:build ld: warning: ignoring file /usr/local/lib/libgfortran.dylib,
 file was built for i386 which is not the architecture being linked
 (x86_64): /usr/local/lib/libgfortran.dylib
 :info:build Undefined symbols for architecture x86_64:
 :info:build   "__gfortran_concat_string", referenced from:
 :info:build       _cgesvd_ in liblapack.a(cgesvd.o)
 :info:build       _dgesvd_ in liblapack.a(dgesvd.o)
 :info:build       _sgesvd_ in liblapack.a(sgesvd.o)
 :info:build       _zgesvd_ in liblapack.a(zgesvd.o)
 :info:build       _chseqr_ in liblapack.a(chseqr.o)
 :info:build       _cunmbr_ in liblapack.a(cunmbr.o)
 :info:build       _cunmlq_ in liblapack.a(cunmlq.o)
 :info:build       ...
 :info:build   "__gfortran_pow_i4_i4", referenced from:
 :info:build       _clalsa_ in liblapack.a(clalsa.o)
 :info:build       _dlalsa_ in liblapack.a(dlalsa.o)
 :info:build       _dlasd0_ in liblapack.a(dlasd0.o)
 :info:build       _dlasda_ in liblapack.a(dlasda.o)
 :info:build       _slalsa_ in liblapack.a(slalsa.o)
 :info:build       _slasd0_ in liblapack.a(slasd0.o)
 :info:build       _slasda_ in liblapack.a(slasda.o)
 :info:build       ...
 :info:build ld: symbol(s) not found for architecture x86_64
 :info:build clang: error: linker command failed with exit code 1 (use -v
 to see invocation)

 }}}


 As I was investigating the error, I found a fortran library at
 /opt/local/lib/libgcc/libgfortran.3.dylib, which would seem to be the
 library that octave needs:

 {{{

 elrond:~ wwc$ file /opt/local/lib/libgcc/libgfortran.3.dylib
 /opt/local/lib/libgcc/libgfortran.3.dylib: Mach-O 64-bit dynamically
 linked shared library x86_64

 }}}

 I think this library was installed as an octave dependency, so I'm not
 sure why the octave build doesn't call it out. What do I need to tweak so
 that the build process picks up the 64-bit library?

 I've attached the full build log file.

 Thanks for your help.

-- 
Ticket URL: <https://trac.macports.org/ticket/42155>
MacPorts <http://www.macports.org/>
Ports system for OS X


More information about the macports-tickets mailing list