Opened 11 years ago
Closed 11 years ago
#42155 closed defect (invalid)
octave-3.6.4_11 +atlas +gcc48 install fails, calls out a 32-bit fortran lib instead of a 64-bit one
Reported by: | wcarter@… | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.2.1 |
Keywords: | Cc: | michaelld (Michael Dickens), ryandesign (Ryan Carsten Schmidt) | |
Port: | octave |
Description
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.
Attachments (1)
Change History (2)
Changed 11 years ago by wcarter@…
comment:1 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | ryandesign@… added; wcarter@… removed |
---|---|
Keywords: | octave libgfortran 64 bit 32 bit removed |
Port: | octave added; octave-3.6.4_11 removed |
Resolution: | → invalid |
Status: | new → closed |
Replying to wcarter@…:
: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
It is not supported to have files installed in /usr/local while using MacPorts, because, as you see, they can interfere. See also wiki:FAQ#usrlocal.
build log file