[MacPorts] #18894: Internal libboost dependency failure at reference time.
MacPorts
noreply at macports.org
Sun Mar 22 14:32:09 PDT 2009
#18894: Internal libboost dependency failure at reference time.
--------------------------------+-------------------------------------------
Reporter: trog24@… | Owner: macports-tickets@…
Type: defect | Status: new
Priority: Normal | Milestone: Port Bugs
Component: ports | Version: 1.7.0
Keywords: | Port:
--------------------------------+-------------------------------------------
Comment(by trog24@…):
There are three different behaviors to the linkage failure as I noted in
the discussion list before filing the bug report.
Failure 1 when linking to the /usr/local/lib Boost using the suffix
-xgcc40-mt libraries is:
{{{
g++ -D_THREAD_SAFE -g -O2 -o .libs/browser browser.o -Wl,-bind_at_load
-L/usr/local/spidermonkey/lib/ ./.libs/libtest-openvrml.a
/Users/frank/FirefoxDownloads/openvrml-0.17.11/src/libopenvrml/.libs/libopenvrml.dylib
-L/opt/local/lib -L/sw/lib/firefox2 /opt/local/lib/libjpeg.dylib
/opt/local/lib/libpng12.dylib /opt/local/lib/libfontconfig.dylib
/opt/local/lib/libiconv.dylib /opt/local/lib/libexpat.dylib
/opt/local/lib/libfreetype.dylib -lz -lmozjs -lplds4 -lplc4 -lnspr4 -ldl
-lboost_thread-xgcc40-mt -lboost_unit_test_framework-xgcc40-mt
-lboost_filesystem-xgcc40-mt
/usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: warning can't open
dynamic library: libboost_system-xgcc40-mt-1_37.dylib referenced from:
/usr/local/lib/libboost_filesystem-xgcc40-mt.dylib (checking for undefined
symbols may be affected) (No such file or directory, errno = 2)
/usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: Undefined symbols:
boost::system::get_system_category()
boost::system::get_generic_category()
boost::system::get_system_category() referenced from libboost expected
to be defined in libboost_system-xgcc40-mt-1_37.dylib
boost::system::get_generic_category() referenced from libboost
expected to be defined in libboost_system-xgcc40-mt-1_37.dylib
collect2: ld returned 1 exit status
make[2]: *** [browser] Error 1
make[2]: Leaving directory
`/Users/frank/FirefoxDownloads/openvrml-0.17.11/tests'
make[1]: *** [check-am] Error 2
make[1]: Leaving directory
`/Users/frank/FirefoxDownloads/openvrml-0.17.11/tests'
make: *** [check-recursive] Error 1
}}}
Failure 1 when linking to the /usr/local/lib Boost using the suffix
-xgcc40-mt-1_37 libraries is:
{{{
g++ -D_THREAD_SAFE -g -O2 -o .libs/browser browser.o -Wl,-bind_at_load
-lboost_system-xgcc40-mt-1_37.dylib ./.libs/libtest-openvrml.a
-L/usr/local/lib -L/opt/local/lib
/Users/frank/FirefoxDownloads/openvrml-0.17.12/src/libopenvrml/.libs/libopenvrml.dylib
-L/opt/local/lib/firefox-2.0.0.20 /opt/local/lib/libjpeg.dylib
/opt/local/lib/libpng12.dylib /opt/local/lib/libfontconfig.dylib
/opt/local/lib/libiconv.dylib /opt/local/lib/libexpat.dylib
/opt/local/lib/libfreetype.dylib -lz -lmozjs -lplds4 -lplc4 -lnspr4
-lboost_thread-xgcc40-mt-1_37 -lboost_unit_test_framework-xgcc40-mt-1_37
-lboost_filesystem-xgcc40-mt-1_37
/usr/bin/ld: can't locate file for: -lboost_system-xgcc40-mt-1_37.dylib
collect2: ld returned 1 exit status
make[2]: *** [browser] Error 1
make[2]: Leaving directory
`/Users/frank/FirefoxDownloads/openvrml-0.17.12/tests'
make[1]: *** [check-am] Error 2
make[1]: Leaving directory
`/Users/frank/FirefoxDownloads/openvrml-0.17.12/tests'
make: *** [check-recursive] Error 1
}}}
and failure 3 when linking to the /opt/local/lib Boost libraries
(MacPorts) is:
{{{
g++ -D_THREAD_SAFE -g -O2 -o .libs/browser browser.o -Wl,-bind_at_load
-L/usr/local/spidermonkey/lib/ -L/opt/local/lib ./.libs/libtest-openvrml.a
/Users/frank/FirefoxDownloads/openvrml-0.17.11/src/libopenvrml/.libs/libopenvrml.dylib
-L/sw/lib/firefox2 /opt/local/lib/libjpeg.dylib
/opt/local/lib/libpng12.dylib /opt/local/lib/libfontconfig.dylib
/opt/local/lib/libiconv.dylib /opt/local/lib/libexpat.dylib
/opt/local/lib/libfreetype.dylib -lz -lmozjs -lplds4 -lplc4 -lnspr4 -ldl
-lboost_thread-mt -lboost_unit_test_framework-mt -lboost_filesystem-mt
/usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: Undefined symbols:
boost::system::get_system_category()
boost::system::get_generic_category()
collect2: ld returned 1 exit status
make[2]: *** [browser] Error 1
make[2]: Leaving directory
`/Users/frank/FirefoxDownloads/openvrml-0.17.11/tests'
make[1]: *** [check-am] Error 2
make[1]: Leaving directory
`/Users/frank/FirefoxDownloads/openvrml-0.17.11/tests'
make: *** [check-recursive] Error 1
}}}
with the differences between the three being:
Failure 1 includes:
{{{
/usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: warning can't open
dynamic library: libboost_system-xgcc40-mt-1_37.dylib referenced from:
/usr/local/lib/libboost_filesystem-xgcc40-mt.dylib (checking for undefined
symbols may be affected) (No such file or directory, errno = 2)
}}}
Failure 2 includes:
{{{
/usr/bin/ld: can't locate file for: -lboost_system-xgcc40-mt-1_37.dylib
}}}
in their respective error message sequence when when trying to link. In
these two case, ld cannot cannot find the designated dependent library
even though the library exists within their respective directories as
indicated by all being resolved using:
{{{
make check LIBPATH="-llibboost_system-xgcc40-mt", make check LIBPATH
="-llibboost_system-xgcc40-mt-1_37", or make check LIBPATH
="-llibboost_system-mt" respectively.
}}}
----
--
Ticket URL: <http://trac.macports.org/ticket/18894#comment:9>
MacPorts <http://www.macports.org/>
Ports system for Mac OS
More information about the macports-tickets
mailing list