[Bug 1331242] Re: libstdc++6: missing symbols std::__once_functor, std::__get_once_mutex(), `std::__set_once_functor_lock_ptr(std::unique_lock<std::mutex>*)
Matthias Klose
doko at ubuntu.com
Wed Jun 18 08:52:41 UTC 2014
fixed in binutils, and a rebuild of gcc-4.8 and gcc-4.9 with the new
binutils
** Changed in: gcc-4.9 (Ubuntu)
Status: New => Fix Released
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to gcc-4.9 in Ubuntu.
https://bugs.launchpad.net/bugs/1331242
Title:
libstdc++6: missing symbols std::__once_functor,
std::__get_once_mutex(),
`std::__set_once_functor_lock_ptr(std::unique_lock<std::mutex>*)
Status in “gcc-4.9” package in Ubuntu:
Fix Released
Bug description:
Building unity-scope-click in the landing ppa against current utopic
fails with undefined references to various libstdc functions.
/usr/bin/arm-linux-gnueabihf-g++ -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -std=c++11 -O2 -g -Wextra -Wall -Werror -fPIC -Wl,-Bsymbolic-functions -Wl,-z,relro CMakeFiles/libclick-scope-tests.dir/test_download_manager.cpp.o CMakeFiles/libclick-scope-tests.dir/test_index.cpp.o CMakeFiles/libclick-scope-tests.dir/test_interface.cpp.o CMakeFiles/libclick-scope-tests.dir/test_configuration.cpp.o CMakeFiles/libclick-scope-tests.dir/test_reviews.cpp.o CMakeFiles/libclick-scope-tests.dir/test_smartconnect.cpp.o CMakeFiles/libclick-scope-tests.dir/test_webclient.cpp.o CMakeFiles/libclick-scope-tests.dir/test_data.cpp.o CMakeFiles/libclick-scope-tests.dir/libclick-scope-tests_automoc.cpp.o -o libclick-scope-tests -rdynamic /usr/lib/arm-linux-gnueabihf/libQt5Core.so.5.2.1 ../click/libclickscope.a -lunity-scopes -lunity-api -lubuntuoneauth-2.0 -lQt5DBus -lQt5Network -lsignon-qt5 -laccounts-qt5 -lQt5Xml -lQt5Core -lubuntu-download-manager-client -lQt5DBus -lQt5Core -lubuntu-download-manager-common -lQt5DBus -lQt5Core -ljsoncpp ../../gmock/libgmock.a ../../gmock/libgmock_main.a -lpthread -lQt5Network -lsignon-qt5 -laccounts-qt5 -lQt5Xml -lubuntu-download-manager-client -lubuntu-download-manager-common -lboost_locale
../click/libclickscope.a(qtbridge.cpp.o): In function `void std::call_once<void (std::__future_base::_State_base::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>&, bool&), std::__future_base::_State_base* const, std::reference_wrapper<std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()> >, std::reference_wrapper<bool> >(std::once_flag&, void (std::__future_base::_State_base::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>&, bool&), std::__future_base::_State_base* const&&, std::reference_wrapper<std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()> >&&, std::reference_wrapper<bool>&&)':
/usr/include/c++/4.8/mutex:779: undefined reference to `std::__get_once_mutex()'
/usr/include/c++/4.8/mutex:783: undefined reference to `std::__set_once_functor_lock_ptr(std::unique_lock<std::mutex>*)'
/usr/include/c++/4.8/mutex:790: undefined reference to `std::__set_once_functor_lock_ptr(std::unique_lock<std::mutex>*)'
../click/libclickscope.a(qtbridge.cpp.o): In function `function<std::call_once(std::once_flag&, _Callable&&, _Args&& ...) [with _Callable = void (std::__future_base::_State_base::*)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter>()>&, bool&); _Args = {std::__future_base::_State_base* const, std::reference_wrapper<std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter>()> >, std::reference_wrapper<bool>}]::__lambda0, void>':
/usr/include/c++/4.8/functional:2030: undefined reference to `std::__once_functor'
collect2: error: ld returned 1 exit status
https://launchpadlibrarian.net/177798305/buildlog_ubuntu-utopic-armhf.unity-scope-click_0.1%2B14.10.20140617.5-0ubuntu1_FAILEDTOBUILD.txt.gz
https://launchpad.net/~ci-train-ppa-service/+archive/landing-018/
This build was done with binutils 2.24.51.20140617-1ubuntu1, g++-4.8
4.8.3-3ubuntu2, libstdc++-4.8-dev .3-3ubuntu2, and libstdc++6
4.9.0-7ubuntu2.
/usr/include/c++/4.8/mutex:779: undefined reference to `std::__get_once_mutex()'
/usr/include/c++/4.8/mutex:783: undefined reference to `std::__set_once_functor_lock_ptr(std::unique_lock<std::mutex>*)'
/usr/include/c++/4.8/mutex:790: undefined reference to `std::__set_once_functor_lock_ptr(std::unique_lock<std::mutex>*)'
None of these symbols are present in libstdc++6 4.8.2-19ubuntu1 from
trusty, nor are they present in current libstdc++6 4.9.0-7ubuntu2 in
utopic. All were present in libstdc++6 4.9.0-7ubuntu1.
The same issue has been seen when building mir in the landing-016
silo.
https://launchpad.net/~ci-train-ppa-service/+archive/landing-016/+build/6107085/+files/buildlog_ubuntu-utopic-armhf.mir_0.3.0%2B14.10.20140617.4-0ubuntu1_FAILEDTOBUILD.txt.gz
https://launchpad.net/~ci-train-ppa-service/+archive/landing-016/
(Other packages in that silo have failed to build because they're
incorrectly building against an older version of mir in the ppa. They
are basically showing the converse of this bug, caused by a previous
mir build succeeding against a libstdc++6 with a different ABI.)
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gcc-4.9/+bug/1331242/+subscriptions
More information about the foundations-bugs
mailing list