Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 572608

Summary: =dev-qt/qt-creator-3.6.0 emake failed: undefined reference to Botan::{several symbols}
Product: Gentoo Linux Reporter: selurvedu <selurvedu>
Component: Current packagesAssignee: Davide Pesavento (RETIRED) <pesa>
Status: RESOLVED INVALID    
Severity: normal CC: qt
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: build.log.gz

Description selurvedu 2016-01-22 14:41:31 UTC
I tried compiling with =sys-devel/gcc-4.9.3 and =sys-devel/gcc-5.3.0, both fail.

The error messages begin on line 5176 of build.log:

/var/tmp/portage/dev-qt/qt-creator-3.6.0/work/qt-creator-opensource-src-3.6.0/lib64/qtcreator/libQtcSsh.so: undefined reference to `Botan::DL_Group::DL_Group(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/var/tmp/portage/dev-qt/qt-creator-3.6.0/work/qt-creator-opensource-src-3.6.0/lib64/qtcreator/libQtcSsh.so: undefined reference to `Botan::PK_Signer::PK_Signer(Botan::Private_Key const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Botan::Signature_Format, Botan::Fault_Protection)'
/var/tmp/portage/dev-qt/qt-creator-3.6.0/work/qt-creator-opensource-src-3.6.0/lib64/qtcreator/libQtcSsh.so: undefined reference to `Botan::to_string[abi:cxx11](unsigned long long, unsigned long)'
/var/tmp/portage/dev-qt/qt-creator-3.6.0/work/qt-creator-opensource-src-3.6.0/lib64/qtcreator/libQtcSsh.so: undefined reference to `Botan::PK_Verifier::PK_Verifier(Botan::Public_Key const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Botan::Signature_Format)'
/var/tmp/portage/dev-qt/qt-creator-3.6.0/work/qt-creator-opensource-src-3.6.0/lib64/qtcreator/libQtcSsh.so: undefined reference to `Botan::EC_Group::EC_Group(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/var/tmp/portage/dev-qt/qt-creator-3.6.0/work/qt-creator-opensource-src-3.6.0/lib64/qtcreator/libQtcSsh.so: undefined reference to `Botan::LibraryInitializer::initialize(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/var/tmp/portage/dev-qt/qt-creator-3.6.0/work/qt-creator-opensource-src-3.6.0/lib64/qtcreator/libQtcSsh.so: undefined reference to `Botan::Algorithm_Factory::prototype_block_cipher(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/var/tmp/portage/dev-qt/qt-creator-3.6.0/work/qt-creator-opensource-src-3.6.0/lib64/qtcreator/libQtcSsh.so: undefined reference to `Botan::Algorithm_Factory::make_hash_function(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/var/tmp/portage/dev-qt/qt-creator-3.6.0/work/qt-creator-opensource-src-3.6.0/lib64/qtcreator/libQtcSsh.so: undefined reference to `Botan::PEM_Code::encode(Botan::MemoryRegion<unsigned char> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned long)'
/var/tmp/portage/dev-qt/qt-creator-3.6.0/work/qt-creator-opensource-src-3.6.0/lib64/qtcreator/libQtcSsh.so: undefined reference to `Botan::X509::PEM_encode[abi:cxx11](Botan::Public_Key const&)'
/var/tmp/portage/dev-qt/qt-creator-3.6.0/work/qt-creator-opensource-src-3.6.0/lib64/qtcreator/libQtcSsh.so: undefined reference to `Botan::Algorithm_Factory::prototype_hash_function(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/var/tmp/portage/dev-qt/qt-creator-3.6.0/work/qt-creator-opensource-src-3.6.0/lib64/qtcreator/libQtcSsh.so: undefined reference to `Botan::User_Interface::User_Interface(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/var/tmp/portage/dev-qt/qt-creator-3.6.0/work/qt-creator-opensource-src-3.6.0/lib64/qtcreator/libQtcSsh.so: undefined reference to `Botan::Pipe::write(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/var/tmp/portage/dev-qt/qt-creator-3.6.0/work/qt-creator-opensource-src-3.6.0/lib64/qtcreator/libQtcSsh.so: undefined reference to `Botan::PKCS8::PEM_encode[abi:cxx11](Botan::Private_Key const&)'
/var/tmp/portage/dev-qt/qt-creator-3.6.0/work/qt-creator-opensource-src-3.6.0/lib64/qtcreator/libQtcSsh.so: undefined reference to `Botan::PKCS8::PEM_encode(Botan::Private_Key const&, Botan::RandomNumberGenerator&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
collect2: error: ld returned 1 exit status
Makefile:191: recipe for target '../../../libexec/qtcreator/buildoutputparser' failed
Comment 1 selurvedu 2016-01-22 14:46:16 UTC
Created attachment 423606 [details]
build.log.gz
Comment 2 Davide Pesavento (RETIRED) gentoo-dev 2016-01-22 15:55:33 UTC
I cannot reproduce with gcc-4.9.3. Could be C++11 related.
Does it work if you unmerge gcc-5.x? Also post your emerge --info please.
Comment 3 Michael Palimaka (kensington) gentoo-dev 2016-01-22 16:04:53 UTC
dev-libs/botan likely needs rebuilding due to GCC ABI breakage.
Comment 4 Davide Pesavento (RETIRED) gentoo-dev 2016-01-22 16:07:45 UTC
Sorry, I forgot that qt-creator uses system botan, not the bundled copy. So yes it's very likely what Michael said.
Comment 5 selurvedu 2016-01-24 02:12:53 UTC
(In reply to Michael Palimaka (kensington) from comment #3)
> dev-libs/botan likely needs rebuilding due to GCC ABI breakage.

Thanks, that helped, Qt Creator doesn't complain about Botan anymore. Looks like I forgot to run revep-rebuild...
Comment 6 selurvedu 2016-01-24 02:14:14 UTC
Meanwhile:

make[2]: Leaving directory '/var/tmp/portage/dev-qt/qt-creator-3.6.0/work/qt-creator-opensource-src-3.6.0/share/qtcreator'
make[1]: Leaving directory '/var/tmp/portage/dev-qt/qt-creator-3.6.0/work/qt-creator-opensource-src-3.6.0/share'
/var/tmp/portage/dev-qt/qt-creator-3.6.0/temp/environment: line 831: estack_push: command not found
/var/tmp/portage/dev-qt/qt-creator-3.6.0/temp/environment: line 820: estack_pop: command not found
 * ERROR: dev-qt/qt-creator-3.6.0::gentoo failed (install phase):
 *   eshopts_pop: unbalanced push
 *
 * Call stack:
 *     ebuild.sh, line  133:  Called src_install
 *   environment, line 2043:  Called make_desktop_entry 'qtcreator' 'Qt Creator' 'QtProject-qtcreator' 'Qt;Development;IDE'
 *   environment, line 1517:  Called eshopts_pop
 *   environment, line  820:  Called die
 * The specific snippet of code:
 *       estack_pop eshopts s || die "${FUNCNAME}: unbalanced push";
Comment 7 Davide Pesavento (RETIRED) gentoo-dev 2016-01-24 02:27:36 UTC
(In reply to selurvedu from comment #5)
> (In reply to Michael Palimaka (kensington) from comment #3)
> > dev-libs/botan likely needs rebuilding due to GCC ABI breakage.
> 
> Thanks, that helped, Qt Creator doesn't complain about Botan anymore. Looks
> like I forgot to run revep-rebuild...

Closing as invalid then.
Comment 8 selurvedu 2016-01-24 02:28:52 UTC
How about installation phase failing?
Comment 9 Davide Pesavento (RETIRED) gentoo-dev 2016-01-24 02:29:15 UTC
(In reply to selurvedu from comment #6)
> make[1]: Leaving directory
> '/var/tmp/portage/dev-qt/qt-creator-3.6.0/work/qt-creator-opensource-src-3.6.
> 0/share'
> /var/tmp/portage/dev-qt/qt-creator-3.6.0/temp/environment: line 831:
> estack_push: command not found
> /var/tmp/portage/dev-qt/qt-creator-3.6.0/temp/environment: line 820:
> estack_pop: command not found
>  * ERROR: dev-qt/qt-creator-3.6.0::gentoo failed (install phase):
>  *   eshopts_pop: unbalanced push

That's bug 568640.
Comment 10 selurvedu 2016-01-24 02:31:12 UTC
Thanks! :)