#49633: octave-3.8.2 build failure because of symbol(s) not found for architecture x86_64 --------------------------+------------------------- Reporter: nico.mack@… | Owner: michaelld@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: octave | --------------------------+------------------------- Comment (by nico.mack@…): Replying to [comment:4 michaelld@…]:
Yes, I was going for the instructions [https://trac.macports.org/wiki/LibcxxOnOlderSystems#LionandMountainLion here]. Which is what it looks like you did given the "uninstall installed" and such from the top.
Looking through the logfile again, the 2 interesting things I see are: (1) this is the first linking of a dynamic library; all the other linking are for static libraries. (2) -stdlib=FOO is not passed through libtool into the actual command. Thus, can you try the following & see if it works: {{{ cd $(port work octave)/octave*/liboctave /usr/bin/clang++ -dynamiclib -stdlib=libc++ -o .libs/liboctave.2.dylib -Wl,-force_load,array/.libs/libarray.a -Wl,-force_load,cruft/.libs/libcruft.a -Wl,-force_load,cruft/ranlib/.libs/libranlib.a -Wl,-force_load,numeric/.libs/libnumeric.a -Wl,-force_load,operators/.libs/liboperators.a -Wl,-force_load,system/.libs/libsystem.a -Wl,-force_load,util/.libs/libutil.a -Wl,-force_load,../libgnu/.libs/libgnu.a -lcurl -lcholmod -lumfpack -lSuiteSparse -lamd -lcamd -lcolamd -lccolamd -lcxsparse -larpack -lqrupdate -lfftw3_threads -lfftw3 -lfftw3f_threads -lfftw3f -llapack -lcblas -lf77blas -latlas -lreadline -lncurses -L/opt/local/lib -lpcre -ldl -L/opt/local/lib/gcc5/gcc/x86_64-apple-darwin12/5.2.0 -L/opt/local/lib/gcc5/gcc/x86_64-apple-darwin12/5.2.0/../../.. -lgfortran -lquadmath -lm -Os -arch x86_64 -pthread -pthread -install_name /opt/local/lib/octave/3.8.2/liboctave.2.dylib -compatibility_version 3 -current_version 3.0 -Wl,-single_module }}} The above is just the same link command, but with "-stdlib=libc++" added in. Not sure if this will make a difference, but it's worth a try. If it does work, then that says the issue is in how libtool passes -stdlib, which is not a big surprise given that libtool is not written with OS X / Clang in mind. Hi Michael, I tried the link command and it appears to work fine. When I look into the .lib folder I see the liboctave.2.dylib library (20210164 bytes)
-- Ticket URL: <https://trac.macports.org/ticket/49633#comment:5> MacPorts <https://www.macports.org/> Ports system for OS X