[MacPorts] #48717: uhd @ 3.8.5_1 Undefined symbols for architecture x86_64
#48717: uhd @ 3.8.5_1 Undefined symbols for architecture x86_64 ----------------------------+-------------------------------- Reporter: soundbastler@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Keywords: | Port: uhd ----------------------------+-------------------------------- {{{ --- OS 10.8.5 XCODE 5.1.1 --- sudo port install uhd Error: }}} {{{ :info:build Undefined symbols for architecture x86_64: :info:build "boost::archive::basic_text_iprimitive<std::istream>::~basic_text_iprimitive()", referenced from: :info:build boost::archive::text_iarchive_impl<boost::archive::text_iarchive>::~text_iarchive_impl() in rpc_client.cpp.o :info:build "boost::archive::basic_text_oprimitive<std::ostream>::~basic_text_oprimitive()", referenced from: :info:build boost::archive::text_oarchive_impl<boost::archive::text_oarchive>::~text_oarchive_impl() in rpc_client.cpp.o :info:build boost::archive::text_oarchive_impl<boost::archive::text_oarchive>::~text_oarchive_impl() in usrprio_rpc_client.cpp.o :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) :info:build make[2]: *** [lib/libuhd.003.008.dylib] Error 1 :info:build make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_uhd/uhd/work/build' :info:build make[1]: *** [lib/CMakeFiles/uhd.dir/all] Error 2 :info:build make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_uhd/uhd/work/build' :info:build make: *** [all] Error 2 :info:build make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_uhd/uhd/work/build' :info:build Command failed: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_uhd/uhd/work/build" && /usr/bin/make -j4 -w all VERBOSE=ON :info:build Exit code: 2 :error:build org.macports.build for port uhd returned: command execution failed }}} -- Ticket URL: <https://trac.macports.org/ticket/48717> MacPorts <https://www.macports.org/> Ports system for OS X
#48717: uhd @ 3.8.5_1 Undefined symbols for architecture x86_64 -----------------------------+------------------------- Reporter: soundbastler@… | Owner: michaelld@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: | Keywords: Port: uhd | -----------------------------+------------------------- Changes (by ryandesign@…): * owner: macports-tickets@… => michaelld@… Comment: Possibly an incompatibility with boost 1.59.0 -- Ticket URL: <https://trac.macports.org/ticket/48717#comment:1> MacPorts <https://www.macports.org/> Ports system for OS X
#48717: uhd @ 3.8.5_1 Undefined symbols for architecture x86_64 -----------------------------+------------------------- Reporter: soundbastler@… | Owner: michaelld@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: | Keywords: Port: uhd | -----------------------------+------------------------- Comment (by michaelld@…): I saw this when Boost was updated to 1.59.0, too. I'm pretty sure it's an internal inconsistency in Boost, based on the old boost still being around while the new one is compiled. Removing Boost entirely and building from scratch worked for me: {{{ sudo port -f uninstall boost sudo port clean "uhd*" sudo port selfupdate sudo port install uhd }}} or, whatever works for you with variants for boost, and uhd or uhd-devel plus variants. Or, something like this. -- Ticket URL: <https://trac.macports.org/ticket/48717#comment:2> MacPorts <https://www.macports.org/> Ports system for OS X
#48717: uhd @ 3.8.5_1 Undefined symbols for architecture x86_64 -----------------------------+------------------------- Reporter: soundbastler@… | Owner: michaelld@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: | Keywords: Port: uhd | -----------------------------+------------------------- Comment (by soundbastler@…): {{{ systemoperators-macbook-air:~ sysop$ sudo port selfupdate ---> Updating MacPorts base sources using rsync MacPorts base version 2.3.3 installed, MacPorts base version 2.3.3 downloaded. ---> Updating the ports tree ---> MacPorts base is already the latest version }}} The Problem ist: Yesterday I downloaded and installed for the first time xcode + command line tools, then MacPorts 2.3.3 and did nothing else then typing "sudo port install gqrx" - so this _is_ a build from scratch. As you see there are no updates avail. Anyway I tried your fix - but with same result as in Post #1. I also tried to build uhd-devel with same result. Any advise on this? Cheers, Chris -- Ticket URL: <https://trac.macports.org/ticket/48717#comment:3> MacPorts <https://www.macports.org/> Ports system for OS X
#48717: uhd @ 3.8.5_1 Undefined symbols for architecture x86_64 -----------------------------+------------------------- Reporter: soundbastler@… | Owner: michaelld@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: | Keywords: Port: uhd | -----------------------------+------------------------- Comment (by michaelld@…): Try building boost from source: {{{ sudo port -f uninstall boost sudo port -s install boost }}} then clean and try uhd and/or uhd-devel from source again. -- Ticket URL: <https://trac.macports.org/ticket/48717#comment:4> MacPorts <https://www.macports.org/> Ports system for OS X
#48717: uhd @ 3.8.5_1 Undefined symbols for architecture x86_64 -----------------------------+------------------------- Reporter: soundbastler@… | Owner: michaelld@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: | Keywords: Port: uhd | -----------------------------+------------------------- Comment (by soundbastler@…): {{{ systemoperators-macbook-air:~ sysop$ sudo port -f uninstall boost Password: ---> Deactivating boost @1.59.0_0+no_single+no_static+python27 ---> Cleaning boost ---> Uninstalling boost @1.59.0_0+no_single+no_static+python27 ---> Cleaning boost systemoperators-macbook-air:~ sysop$ sudo port clean "uhd*" ---> Cleaning uhd ---> Cleaning uhd-devel systemoperators-macbook-air:~ sysop$ sudo port selfupdate ---> Updating MacPorts base sources using rsync MacPorts base version 2.3.3 installed, MacPorts base version 2.3.3 downloaded. ---> Updating the ports tree ---> MacPorts base is already the latest version The ports tree has been updated. To upgrade your installed ports, you should run port upgrade outdated systemoperators-macbook-air:~ sysop$ port upgrade outdated Nothing to upgrade. systemoperators-macbook-air:~ sysop$ sudo port install uhd ---> Computing dependencies for uhd ---> Dependencies to be installed: boost ---> Fetching archive for boost ---> Attempting to fetch boost-1.59.0_1+no_single+no_static+python27.darwin_12.x86_64.tbz2 from http://nue.de.packages.macports.org/macports/packages/boost ---> Attempting to fetch boost-1.59.0_1+no_single+no_static+python27.darwin_12.x86_64.tbz2 from http://lil.fr.packages.macports.org/boost ---> Attempting to fetch boost-1.59.0_1+no_single+no_static+python27.darwin_12.x86_64.tbz2 from http://mse.uk.packages.macports.org/sites/packages.macports.org/boost ---> Fetching distfiles for boost ---> Verifying checksums for boost ---> Extracting boost ---> Applying patches to boost ---> Configuring boost ---> Building boost ---> Staging boost into destroot ---> Installing boost @1.59.0_1+no_single+no_static+python27 ---> Activating boost @1.59.0_1+no_single+no_static+python27 ---> Cleaning boost ---> Fetching archive for uhd ---> Attempting to fetch uhd-3.8.5_1+docs+examples+libusb+manpages+manual+orc+test.darwin_12.x86_64.tbz2 from http://nue.de.packages.macports.org/macports/packages/uhd ---> Attempting to fetch uhd-3.8.5_1+docs+examples+libusb+manpages+manual+orc+test.darwin_12.x86_64.tbz2 from http://lil.fr.packages.macports.org/uhd ---> Attempting to fetch uhd-3.8.5_1+docs+examples+libusb+manpages+manual+orc+test.darwin_12.x86_64.tbz2 from http://mse.uk.packages.macports.org/sites/packages.macports.org/uhd ---> Fetching distfiles for uhd ---> Verifying checksums for uhd ---> Extracting uhd ---> Configuring uhd ---> Building uhd Error: org.macports.build for port uhd returned: command execution failed Please see the log file for port uhd for details: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_uhd/uhd/main.log To report a bug, follow the instructions in the guide: http://guide.macports.org/#project.tickets Error: Processing of port uhd failed }}} This ends up in an endless loop with the result of post #1. -- Ticket URL: <https://trac.macports.org/ticket/48717#comment:5> MacPorts <https://www.macports.org/> Ports system for OS X
#48717: uhd @ 3.8.5_1 Undefined symbols for architecture x86_64 -----------------------------+------------------------- Reporter: soundbastler@… | Owner: michaelld@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: | Keywords: Port: uhd | -----------------------------+------------------------- Comment (by michaelld@…): OK; hmmm. So, for my edification can you upload a new logfile that comes after a "clean", and not just the build itself? Sometimes seeing the earlier info can be useful. Also, what is your OS, Xcode version, and the like? -- Ticket URL: <https://trac.macports.org/ticket/48717#comment:6> MacPorts <https://www.macports.org/> Ports system for OS X
#48717: uhd @ 3.8.5_1 Undefined symbols for architecture x86_64 -----------------------------+------------------------- Reporter: soundbastler@… | Owner: michaelld@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: | Keywords: Port: uhd | -----------------------------+------------------------- Comment (by soundbastler@…): Late but... OS 10.8.5 XCODE 5.1.1 What do you mean by "after clean" ? "/opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_uhd/uhd/main.log" does not exist after typing sudo port clean "uhd*" How do I generate the logfile you aksed for? Chris -- Ticket URL: <https://trac.macports.org/ticket/48717#comment:7> MacPorts <https://www.macports.org/> Ports system for OS X
#48717: uhd @ 3.8.5_1 Undefined symbols for architecture x86_64 -----------------------------+------------------------- Reporter: soundbastler@… | Owner: michaelld@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: | Keywords: Port: uhd | -----------------------------+------------------------- Comment (by michaelld@…): FYI in the future: "clean", meaning: {{{ sudo port clean uhd sudo port install uhd }}} and, then if the issue happens again then upload the new logfile. In this way, we get the whole log from start to error, not just the error part. Having the whole log sometimes helps us debug issues. In your particular case our auto-build system ("buildbots") has this issue on 10.8 so I actually have a good logfile to work off of. I'm still not sure what the answer is, but I'll look into it this coming week. -- Ticket URL: <https://trac.macports.org/ticket/48717#comment:8> MacPorts <https://www.macports.org/> Ports system for OS X
#48717: uhd @ 3.8.5_1 Undefined symbols for architecture x86_64 -----------------------------+------------------------- Reporter: soundbastler@… | Owner: michaelld@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: | Keywords: Port: uhd | -----------------------------+------------------------- Comment (by nrasser@…): I'm running into the same issue with uhd and boost. Build of uhd fails with main.log info identical to OP's. OS 10.8.5, XCode 5.1.1 -- Ticket URL: <https://trac.macports.org/ticket/48717#comment:9> MacPorts <https://www.macports.org/> Ports system for OS X
#48717: uhd @ 3.8.5_1 Undefined symbols for architecture x86_64 -----------------------------+------------------------- Reporter: soundbastler@… | Owner: michaelld@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: | Keywords: Port: uhd | -----------------------------+------------------------- Comment (by frederic.devernay@…): This is a boost/ boost port issue: all template specializations from boost_1_59_0/libs/serialization/src are stripped at link time because they are not exported. Maybe Boost serialization should be linked without -dead-strip Homebrew doesn't have this issue (see nm output below) {{{ $ nm /usr/local.bak/lib/libboost_serialization-mt.dylib |fgrep basic_text_iprimitive |c++filt 0000000000004c90 T boost::archive::basic_text_iprimitive<std::__1::basic_istream<char, std::__1::char_traits<char> > >::load_binary(void*, unsigned long) 00000000000047a0 T boost::archive::basic_text_iprimitive<std::__1::basic_istream<char, std::__1::char_traits<char> > >::load(signed char&) 00000000000046d0 T boost::archive::basic_text_iprimitive<std::__1::basic_istream<char, std::__1::char_traits<char> > >::load(char&) 0000000000004870 T boost::archive::basic_text_iprimitive<std::__1::basic_istream<char, std::__1::char_traits<char> > >::load(unsigned char&) 0000000000004940 T boost::archive::basic_text_iprimitive<std::__1::basic_istream<char, std::__1::char_traits<char> > >::load(wchar_t&) 0000000000004ba0 T boost::archive::basic_text_iprimitive<std::__1::basic_istream<char, std::__1::char_traits<char> >
::basic_text_iprimitive(std::__1::basic_istream<char, std::__1::char_traits<char> >&, bool) 0000000000004a10 T boost::archive::basic_text_iprimitive<std::__1::basic_istream<char, std::__1::char_traits<char> > ::basic_text_iprimitive(std::__1::basic_istream<char, std::__1::char_traits<char> >&, bool) 0000000000004c80 T boost::archive::basic_text_iprimitive<std::__1::basic_istream<char, std::__1::char_traits<char> > >::~basic_text_iprimitive() 0000000000004bb0 T boost::archive::basic_text_iprimitive<std::__1::basic_istream<char, std::__1::char_traits<char> > >::~basic_text_iprimitive() 0000000000026740 D typeinfo for boost::archive::basic_text_iprimitive<std::__1::basic_istream<char, std::__1::char_traits<char> > > 00000000000210d0 S typeinfo name for boost::archive::basic_text_iprimitive<std::__1::basic_istream<char, std::__1::char_traits<char> > > }}}
-- Ticket URL: <https://trac.macports.org/ticket/48717#comment:11> MacPorts <https://www.macports.org/> Ports system for OS X
#48717: uhd @ 3.8.5_1 Undefined symbols for architecture x86_64 -----------------------------+------------------------- Reporter: soundbastler@… | Owner: michaelld@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: | Keywords: Port: uhd | -----------------------------+------------------------- Comment (by thesamprice@…): CC Me! -- Ticket URL: <https://trac.macports.org/ticket/48717#comment:13> MacPorts <https://www.macports.org/> Ports system for OS X
#48717: uhd @ 3.8.5_1 Undefined symbols for architecture x86_64 -----------------------------+------------------------- Reporter: soundbastler@… | Owner: michaelld@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: | Keywords: Port: uhd | -----------------------------+------------------------- Comment (by frederic.devernay@…): I found the problem, and filed a ticket upstream https://svn.boost.org/trac/boost/ticket/11671 -- Ticket URL: <https://trac.macports.org/ticket/48717#comment:15> MacPorts <https://www.macports.org/> Ports system for OS X
#48717: boost @1.59.0: explicit template instantiations don't always get exported -----------------------------+-------------------------- Reporter: soundbastler@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: | Keywords: Port: boost | -----------------------------+-------------------------- Changes (by ryandesign@…): * status: new => assigned * cc: primalbuddhist@…, michaelld@… (added) * owner: michaelld@… => ryandesign@… * port: uhd => boost Old description:
{{{ --- OS 10.8.5 XCODE 5.1.1 ---
sudo port install uhd
Error: }}}
{{{ :info:build Undefined symbols for architecture x86_64: :info:build "boost::archive::basic_text_iprimitive<std::istream>::~basic_text_iprimitive()", referenced from: :info:build boost::archive::text_iarchive_impl<boost::archive::text_iarchive>::~text_iarchive_impl() in rpc_client.cpp.o :info:build "boost::archive::basic_text_oprimitive<std::ostream>::~basic_text_oprimitive()", referenced from: :info:build boost::archive::text_oarchive_impl<boost::archive::text_oarchive>::~text_oarchive_impl() in rpc_client.cpp.o :info:build boost::archive::text_oarchive_impl<boost::archive::text_oarchive>::~text_oarchive_impl() in usrprio_rpc_client.cpp.o :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) :info:build make[2]: *** [lib/libuhd.003.008.dylib] Error 1 :info:build make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_uhd/uhd/work/build' :info:build make[1]: *** [lib/CMakeFiles/uhd.dir/all] Error 2 :info:build make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_uhd/uhd/work/build' :info:build make: *** [all] Error 2 :info:build make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_uhd/uhd/work/build' :info:build Command failed: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_uhd/uhd/work/build" && /usr/bin/make -j4 -w all VERBOSE=ON :info:build Exit code: 2 :error:build org.macports.build for port uhd returned: command execution failed }}}
New description: --- \\ OS 10.8.5 \\ XCODE 5.1.1 \\ --- {{{ sudo port install uhd }}} Error: {{{ :info:build Undefined symbols for architecture x86_64: :info:build "boost::archive::basic_text_iprimitive<std::istream>::~basic_text_iprimitive()", referenced from: :info:build boost::archive::text_iarchive_impl<boost::archive::text_iarchive>::~text_iarchive_impl() in rpc_client.cpp.o :info:build "boost::archive::basic_text_oprimitive<std::ostream>::~basic_text_oprimitive()", referenced from: :info:build boost::archive::text_oarchive_impl<boost::archive::text_oarchive>::~text_oarchive_impl() in rpc_client.cpp.o :info:build boost::archive::text_oarchive_impl<boost::archive::text_oarchive>::~text_oarchive_impl() in usrprio_rpc_client.cpp.o :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) :info:build make[2]: *** [lib/libuhd.003.008.dylib] Error 1 :info:build make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_uhd/uhd/work/build' :info:build make[1]: *** [lib/CMakeFiles/uhd.dir/all] Error 2 :info:build make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_uhd/uhd/work/build' :info:build make: *** [all] Error 2 :info:build make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_uhd/uhd/work/build' :info:build Command failed: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_uhd/uhd/work/build" && /usr/bin/make -j4 -w all VERBOSE=ON :info:build Exit code: 2 :error:build org.macports.build for port uhd returned: command execution failed }}} -- Comment: Has duplicates #49118 and #49130. -- Ticket URL: <https://trac.macports.org/ticket/48717#comment:16> MacPorts <https://www.macports.org/> Ports system for OS X
#48717: boost @1.59.0: explicit template instantiations don't always get exported -----------------------------+-------------------------- Reporter: soundbastler@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: | Keywords: Port: boost | -----------------------------+-------------------------- Comment (by michaelld@…): Should be fixed in r140988. I'm running 10.11 so I can't test on 10.8 right now. Hopefully others can and report back here, success or failure. I'm leaving this ticket open until we hear back successes. -- Ticket URL: <https://trac.macports.org/ticket/48717#comment:17> MacPorts <https://www.macports.org/> Ports system for OS X
#48717: boost @1.59.0: explicit template instantiations don't always get exported -----------------------------+-------------------------- Reporter: soundbastler@… | Owner: ryandesign@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 2.3.3 Resolution: fixed | Keywords: Port: boost | -----------------------------+-------------------------- Changes (by ryandesign@…): * status: assigned => closed * resolution: => fixed Comment: User reported success by email. -- Ticket URL: <https://trac.macports.org/ticket/48717#comment:18> MacPorts <https://www.macports.org/> Ports system for OS X
participants (1)
-
MacPorts