Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 117547 - [GCC 4] crypto++ 5.2.1 fails to link cryptest.exe when compiled with GCC 4.0.2
Summary: [GCC 4] crypto++ 5.2.1 fails to link cryptest.exe when compiled with GCC 4.0.2
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] GCC Porting (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Crypto team [DISABLED]
URL: http://packages.ubuntu.com/dapper/lib...
Whiteboard:
Keywords:
Depends on:
Blocks: 117482
  Show dependency tree
 
Reported: 2006-01-03 00:50 UTC by Dirk Heinrichs
Modified: 2006-01-26 18:34 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dirk Heinrichs 2006-01-03 00:50:23 UTC
It works fine when compiled with GCC 3.4.5, however, when compiling with GCC
4.0.2 I get the following error:

g++ -o cryptest.exe -g -msse2 -pipe bench.o bench2.o test.o validat1.o validat2.o validat3.o adhoc.o datatest.o regtest.o fipsalgt.o dlltest.o -L. -lcryptopp
bench.o: In function `CryptoPP::SymmetricCipherFinal<CryptoPP::ConcretePolicyHolder<CryptoPP::SEAL_Policy<CryptoPP::EnumToType<CryptoPP::ByteOrder, 1> >, CryptoPP::AdditiveCipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::AdditiveCipherAbstractPolicy, CryptoPP::TwoBases<CryptoPP::SimpleKeyedTransformation<CryptoPP::StreamTransformation>, CryptoPP::RandomNumberGenerator> > >, CryptoPP::AdditiveCipherAbstractPolicy>, CryptoPP::SEAL_Info<CryptoPP::EnumToType<CryptoPP::ByteOrder, 1> > >::SetKey(unsigned char const*, unsigned int, CryptoPP::NameValuePairs const&)':
/gentoo/build/portage/crypto++-5.2.1/work/strciphr.h:282: undefined reference to `CryptoPP::AdditiveCipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::AdditiveCipherAbstractPolicy, CryptoPP::TwoBases<CryptoPP::SimpleKeyedTransformation<CryptoPP::StreamTransformation>, CryptoPP::RandomNumberGenerator> > >::UncheckedSetKey(CryptoPP::NameValuePairs const&, unsigned char const*, unsigned int, unsigned char const*)'
bench.o: In function `CryptoPP::SymmetricCipherFinal<CryptoPP::ConcretePolicyHolder<CryptoPP::SEAL_Policy<CryptoPP::EnumToType<CryptoPP::ByteOrder, 0> >, CryptoPP::AdditiveCipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::AdditiveCipherAbstractPolicy, CryptoPP::TwoBases<CryptoPP::SimpleKeyedTransformation<CryptoPP::StreamTransformation>, CryptoPP::RandomNumberGenerator> > >, CryptoPP::AdditiveCipherAbstractPolicy>, CryptoPP::SEAL_Info<CryptoPP::EnumToType<CryptoPP::ByteOrder, 0> > >::SetKey(unsigned char const*, unsigned int, CryptoPP::NameValuePairs const&)':
/gentoo/build/portage/crypto++-5.2.1/work/strciphr.h:282: undefined reference to `CryptoPP::AdditiveCipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::AdditiveCipherAbstractPolicy, CryptoPP::TwoBases<CryptoPP::SimpleKeyedTransformation<CryptoPP::StreamTransformation>, CryptoPP::RandomNumberGenerator> > >::UncheckedSetKey(CryptoPP::NameValuePairs const&, unsigned char const*, unsigned int, unsigned char const*)'
bench.o: In function `CryptoPP::SymmetricCipherFinal<CryptoPP::ConcretePolicyHolder<CryptoPP::WAKE_Policy<CryptoPP::EnumToType<CryptoPP::ByteOrder, 1> >, CryptoPP::AdditiveCipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::AdditiveCipherAbstractPolicy, CryptoPP::TwoBases<CryptoPP::SimpleKeyedTransformation<CryptoPP::StreamTransformation>, CryptoPP::RandomNumberGenerator> > >, CryptoPP::AdditiveCipherAbstractPolicy>, CryptoPP::WAKE_OFB_Info<CryptoPP::EnumToType<CryptoPP::ByteOrder, 1> > >::SetKey(unsigned char const*, unsigned int, CryptoPP::NameValuePairs const&)':
/gentoo/build/portage/crypto++-5.2.1/work/strciphr.h:282: undefined reference to `CryptoPP::AdditiveCipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::AdditiveCipherAbstractPolicy, CryptoPP::TwoBases<CryptoPP::SimpleKeyedTransformation<CryptoPP::StreamTransformation>, CryptoPP::RandomNumberGenerator> > >::UncheckedSetKey(CryptoPP::NameValuePairs const&, unsigned char const*, unsigned int, unsigned char const*)'
bench.o: In function `CryptoPP::SymmetricCipherFinal<CryptoPP::ConcretePolicyHolder<CryptoPP::WAKE_Policy<CryptoPP::EnumToType<CryptoPP::ByteOrder, 0> >, CryptoPP::AdditiveCipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::AdditiveCipherAbstractPolicy, CryptoPP::TwoBases<CryptoPP::SimpleKeyedTransformation<CryptoPP::StreamTransformation>, CryptoPP::RandomNumberGenerator> > >, CryptoPP::AdditiveCipherAbstractPolicy>, CryptoPP::WAKE_OFB_Info<CryptoPP::EnumToType<CryptoPP::ByteOrder, 0> > >::SetKey(unsigned char const*, unsigned int, CryptoPP::NameValuePairs const&)':
/gentoo/build/portage/crypto++-5.2.1/work/strciphr.h:282: undefined reference to `CryptoPP::AdditiveCipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::AdditiveCipherAbstractPolicy, CryptoPP::TwoBases<CryptoPP::SimpleKeyedTransformation<CryptoPP::StreamTransformation>, CryptoPP::RandomNumberGenerator> > >::UncheckedSetKey(CryptoPP::NameValuePairs const&, unsigned char const*, unsigned int, unsigned char const*)'
bench.o: In function `CryptoPP::SymmetricCipherFinal<CryptoPP::ConcretePolicyHolder<CryptoPP::PanamaCipherPolicy<CryptoPP::EnumToType<CryptoPP::ByteOrder, 0> >, CryptoPP::AdditiveCipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::AdditiveCipherAbstractPolicy, CryptoPP::TwoBases<CryptoPP::SimpleKeyedTransformation<CryptoPP::StreamTransformation>, CryptoPP::RandomNumberGenerator> > >, CryptoPP::AdditiveCipherAbstractPolicy>, CryptoPP::ConcretePolicyHolder<CryptoPP::PanamaCipherPolicy<CryptoPP::EnumToType<CryptoPP::ByteOrder, 0> >, CryptoPP::AdditiveCipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::AdditiveCipherAbstractPolicy, CryptoPP::TwoBases<CryptoPP::SimpleKeyedTransformation<CryptoPP::StreamTransformation>, CryptoPP::RandomNumberGenerator> > >, CryptoPP::AdditiveCipherAbstractPolicy> >::SetKey(unsigned char const*, unsigned int, CryptoPP::NameValuePairs const&)':
/gentoo/build/portage/crypto++-5.2.1/work/strciphr.h:282: undefined reference to `CryptoPP::AdditiveCipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::AdditiveCipherAbstractPolicy, CryptoPP::TwoBases<CryptoPP::SimpleKeyedTransformation<CryptoPP::StreamTransformation>, CryptoPP::RandomNumberGenerator> > >::UncheckedSetKey(CryptoPP::NameValuePairs const&, unsigned char const*, unsigned int, unsigned char const*)'
bench.o:/gentoo/build/portage/crypto++-5.2.1/work/strciphr.h:282: more undefined references to `CryptoPP::AdditiveCipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::AdditiveCipherAbstractPolicy, CryptoPP::TwoBases<CryptoPP::SimpleKeyedTransformation<CryptoPP::StreamTransformation>, CryptoPP::RandomNumberGenerator> > >::UncheckedSetKey(CryptoPP::NameValuePairs const&, unsigned char const*, unsigned int, unsigned char const*)' follow
bench.o: In function `CryptoPP::SymmetricCipherFinal<CryptoPP::ConcretePolicyHolder<CryptoPP::WAKE_Policy<CryptoPP::EnumToType<CryptoPP::ByteOrder, 1> >, CryptoPP::CFB_EncryptionTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::CFB_CipherAbstractPolicy, CryptoPP::SimpleKeyedTransformation<CryptoPP::StreamTransformation> > >, CryptoPP::CFB_CipherAbstractPolicy>, CryptoPP::WAKE_CFB_Info<CryptoPP::EnumToType<CryptoPP::ByteOrder, 1> > >::SetKey(unsigned char const*, unsigned int, CryptoPP::NameValuePairs const&)':
/gentoo/build/portage/crypto++-5.2.1/work/strciphr.h:282: undefined reference to `CryptoPP::CFB_CipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::CFB_CipherAbstractPolicy, CryptoPP::SimpleKeyedTransformation<CryptoPP::StreamTransformation> > >::UncheckedSetKey(CryptoPP::NameValuePairs const&, unsigned char const*, unsigned int, unsigned char const*)'
bench.o: In function `CryptoPP::SymmetricCipherFinal<CryptoPP::ConcretePolicyHolder<CryptoPP::WAKE_Policy<CryptoPP::EnumToType<CryptoPP::ByteOrder, 0> >, CryptoPP::CFB_EncryptionTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::CFB_CipherAbstractPolicy, CryptoPP::SimpleKeyedTransformation<CryptoPP::StreamTransformation> > >, CryptoPP::CFB_CipherAbstractPolicy>, CryptoPP::WAKE_CFB_Info<CryptoPP::EnumToType<CryptoPP::ByteOrder, 0> > >::SetKey(unsigned char const*, unsigned int, CryptoPP::NameValuePairs const&)':
/gentoo/build/portage/crypto++-5.2.1/work/strciphr.h:282: undefined reference to `CryptoPP::CFB_CipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::CFB_CipherAbstractPolicy, CryptoPP::SimpleKeyedTransformation<CryptoPP::StreamTransformation> > >::UncheckedSetKey(CryptoPP::NameValuePairs const&, unsigned char const*, unsigned int, unsigned char const*)'
bench.o: In function `CryptoPP::XMACC_Base<CryptoPP::MD5>::TruncatedFinal(unsigned char*, unsigned int)':
/gentoo/build/portage/crypto++-5.2.1/work/xormac.h:123: undefined reference to `CryptoPP::IteratedHashBase<unsigned int, CryptoPP::SimpleKeyedTransformation<CryptoPP::HashTransformation> >::PadLastBlock(unsigned int, unsigned char)'
bench.o: In function `CryptoPP::XMACC_Base<CryptoPP::MD5>::TruncatedVerify(unsigned char const*, unsigned int)':
/gentoo/build/portage/crypto++-5.2.1/work/xormac.h:149: undefined reference to `CryptoPP::IteratedHashBase<unsigned int, CryptoPP::SimpleKeyedTransformation<CryptoPP::HashTransformation> >::PadLastBlock(unsigned int, unsigned char)'
bench.o: In function `CryptoPP::IteratedHashBase2<unsigned int, CryptoPP::EnumToType<CryptoPP::ByteOrder, 0>, CryptoPP::SimpleKeyedTransformation<CryptoPP::HashTransformation> >::TruncatedFinal(unsigned char*, unsigned int)':
/gentoo/build/portage/crypto++-5.2.1/work/iterhash.h:110: undefined reference to `CryptoPP::IteratedHashBase<unsigned int, CryptoPP::SimpleKeyedTransformation<CryptoPP::HashTransformation> >::PadLastBlock(unsigned int, unsigned char)'
bench.o: In function `CryptoPP::IteratedHashBase2<unsigned long long, CryptoPP::EnumToType<CryptoPP::ByteOrder, 1>, CryptoPP::HashTransformation>::TruncatedFinal(unsigned char*, unsigned int)':
/gentoo/build/portage/crypto++-5.2.1/work/iterhash.h:110: undefined reference to `CryptoPP::IteratedHashBase<unsigned long long, CryptoPP::HashTransformation>::PadLastBlock(unsigned int, unsigned char)'
bench.o: In function `CryptoPP::IteratedHashBase2<unsigned long long, CryptoPP::EnumToType<CryptoPP::ByteOrder, 0>, CryptoPP::HashTransformation>::TruncatedFinal(unsigned char*, unsigned int)':
/gentoo/build/portage/crypto++-5.2.1/work/iterhash.h:110: undefined reference to `CryptoPP::IteratedHashBase<unsigned long long, CryptoPP::HashTransformation>::PadLastBlock(unsigned int, unsigned char)'
bench2.o: In function `CryptoPP::MQV_Domain<CryptoPP::DL_GroupParameters_EC<CryptoPP::EC2N>, CryptoPP::EnumToType<CryptoPP::CofactorMultiplicationOption, 2> >::Agree(unsigned char*, unsigned char const*, unsigned char const*, unsigned char const*, unsigned char const*, bool) const':
/gentoo/build/portage/crypto++-5.2.1/work/mqv.h:103: undefined reference to `CryptoPP::DL_GroupParameters_EC<CryptoPP::EC2N>::MultiplyElements(CryptoPP::EC2NPoint const&, CryptoPP::EC2NPoint const&) const'
/gentoo/build/portage/crypto++-5.2.1/work/mqv.h:116: undefined reference to `CryptoPP::DL_GroupParameters_EC<CryptoPP::EC2N>::CascadeExponentiate(CryptoPP::EC2NPoint const&, CryptoPP::Integer const&, CryptoPP::EC2NPoint const&, CryptoPP::Integer const&) const'
bench2.o: In function `CryptoPP::MQV_Domain<CryptoPP::DL_GroupParameters_EC<CryptoPP::ECP>, CryptoPP::EnumToType<CryptoPP::CofactorMultiplicationOption, 2> >::Agree(unsigned char*, unsigned char const*, unsigned char const*, unsigned char const*, unsigned char const*, bool) const':
/gentoo/build/portage/crypto++-5.2.1/work/mqv.h:103: undefined reference to `CryptoPP::DL_GroupParameters_EC<CryptoPP::ECP>::MultiplyElements(CryptoPP::ECPPoint const&, CryptoPP::ECPPoint const&) const'
/gentoo/build/portage/crypto++-5.2.1/work/mqv.h:116: undefined reference to `CryptoPP::DL_GroupParameters_EC<CryptoPP::ECP>::CascadeExponentiate(CryptoPP::ECPPoint const&, CryptoPP::Integer const&, CryptoPP::ECPPoint const&, CryptoPP::Integer const&) const'
validat2.o: In function `ValidateECP()':
/gentoo/build/portage/crypto++-5.2.1/work/validat2.cpp:614: undefined reference to `CryptoPP::DL_GroupParameters_EC<CryptoPP::ECP>::GetNextRecommendedParametersOID(CryptoPP::OID const&)'
./libcryptopp.a(md5mac.o): In function `CryptoPP::MD5MAC_Base::TruncatedFinal(unsigned char*, unsigned int)':
/gentoo/build/portage/crypto++-5.2.1/work/md5mac.cpp:54: undefined reference to `CryptoPP::IteratedHashBase<unsigned int, CryptoPP::SimpleKeyedTransformation<CryptoPP::HashTransformation> >::PadLastBlock(unsigned int, unsigned char)'
./libcryptopp.a(tiger.o): In function `CryptoPP::Tiger::TruncatedFinal(unsigned char*, unsigned int)':
/gentoo/build/portage/crypto++-5.2.1/work/tiger.cpp:22: undefined reference to `CryptoPP::IteratedHashBase<unsigned long long, CryptoPP::HashTransformation>::PadLastBlock(unsigned int, unsigned char)'
./libcryptopp.a(ttmac.o): In function `CryptoPP::TTMAC_Base::TruncatedFinal(unsigned char*, unsigned int)':
/gentoo/build/portage/crypto++-5.2.1/work/ttmac.cpp:30: undefined reference to `CryptoPP::IteratedHashBase<unsigned int, CryptoPP::SimpleKeyedTransformation<CryptoPP::HashTransformation> >::PadLastBlock(unsigned int, unsigned char)'
./libcryptopp.a(wake.o): In function `CryptoPP::SymmetricCipherFinal<CryptoPP::ConcretePolicyHolder<CryptoPP::WAKE_Policy<CryptoPP::EnumToType<CryptoPP::ByteOrder, 1> >, CryptoPP::CFB_DecryptionTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::CFB_CipherAbstractPolicy, CryptoPP::SimpleKeyedTransformation<CryptoPP::StreamTransformation> > >, CryptoPP::CFB_CipherAbstractPolicy>, CryptoPP::WAKE_CFB_Info<CryptoPP::EnumToType<CryptoPP::ByteOrder, 1> > >::SetKey(unsigned char const*, unsigned int, CryptoPP::NameValuePairs const&)':
/gentoo/build/portage/crypto++-5.2.1/work/strciphr.h:282: undefined reference to `CryptoPP::CFB_CipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::CFB_CipherAbstractPolicy, CryptoPP::SimpleKeyedTransformation<CryptoPP::StreamTransformation> > >::UncheckedSetKey(CryptoPP::NameValuePairs const&, unsigned char const*, unsigned int, unsigned char const*)'
./libcryptopp.a(whrlpool.o): In function `CryptoPP::Whirlpool::TruncatedFinal(unsigned char*, unsigned int)':
/gentoo/build/portage/crypto++-5.2.1/work/whrlpool.cpp:74: undefined reference to `CryptoPP::IteratedHashBase<unsigned long long, CryptoPP::HashTransformation>::PadLastBlock(unsigned int, unsigned char)'
collect2: ld returned 1 exit status
make: *** [cryptest.exe] Error 1

!!! ERROR: dev-libs/crypto++-5.2.1 failed.


Portage 2.1_pre3-r1 (default-linux/x86/2005.1, gcc-4.0.2, glibc-2.3.6-r1, 2.6.14.4 i686)
=================================================================
System uname: 2.6.14.4 i686 Intel(R) Pentium(R) M processor 1500MHz
Gentoo Base System version 1.12.0_pre12
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
dev-lang/python:     2.4.2
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.16.1-r1
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r3
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O3 -march=pentium4 -fomit-frame-pointer -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/kde/3/share/config /usr/share/X11/xkb /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/texmf/web2c /etc/env.d"
CXXFLAGS="-O3 -march=pentium4 -fomit-frame-pointer -pipe"
DISTDIR="/gentoo/distfiles"
FEATURES="autoconfig distlocks sandbox sfperms strict"
GENTOO_MIRRORS="http://ftp.easynet.nl/mirror/gentoo/ http://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ ftp://mirror.switch.ch/mirror/gentoo/ ftp://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ ftp://mirrors.sec.informatik.tu-darmstadt.de/gentoo/ http://ftp.easynet.nl/mirror/gentoo/ http://ftp.snt.utwente.nl/pub/os/linux/gentoo http://ftp.uni-erlangen.de/pub/mirrors/gentoo http://gentoo.osuosl.org"
LINGUAS="de"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/gentoo/build"
PORTDIR="/gentoo/portage"
PORTDIR_OVERLAY="/gentoo/build/overlay"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 X Xaw3d a52 aac aalib acl acpi activefilter ada afs alsa aotuv arts asf audiofile avi bash-completion berkdb bitmap-fonts bluetooth browserplugin bzip2 caps cdb cdda cddb cdio cdparanoia cdr chipcard client-only cpudetection crypt cups dlloader doc dri dtaus dv dvd dvdread edl emacs emboss encode exif expat fam ffmpeg flac font-server foomaticdb ftp gd-external gdbm geldkarte gif glut gmp gnutls gphoto2 gpm gtk2 hardened hbci httpd icq idn imagemagick imap imlib ipppd irda irmc isdnlog jpeg jpeg2k kcal kde kerberos latex lcms ldap libg++ libwww lm_sensors lua lzo mad madwifi maildir mbox mime mng motif mozsvg mp3 mpeg mule musicbrainz nas ncurses nls no-old-linux noantlr nobcel nobeanutils nobsh nocommonslogging nocommonsnet nojdepend nojsch nojython nolog4j nooro noregexp norhino noxalan noxerces nptl nptlonly nsplugin objc ofx ogg oggvorbis openexr opengl pam pam_console pcre pdflib perl perlsuid pg-intdatetime pic png postgres ppds pppd pwdb python qt quicktime rdesktop readline real recode rtc savedconfig slang slp sms sockets socks5 speedo speex spell sql sse ssl stream subversion svg svga symlink sysfs tcpd tetex theora threads tiff toolbar truetype truetype-fonts type1-fonts udev unicode usb userlocales vcd vim-with-x vlm vorbis wifi win32codecs wxwindows xine xml2 xprint xscreensaver xv xvid xvmc zeroconf zlib elibc_glibc kernel_linux linguas_de userland_GNU"
Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, MAKEOPTS
Comment 1 Marcelo Goes (RETIRED) gentoo-dev 2006-01-26 18:34:07 UTC
Fixed in cvs, I ported some fixes from Ubuntu.