Archived
This forum has been archived. Please start a new discussion on GitHub.
type and size of dynamic symbol `DES_SPtrans' are not defined
shi12957
in Help Center
after i build the third party software,i start building source of Ice3.5.1,when i execute "make" command i got an error like this:
g++ -Wl,--enable-new-dtags -Wl,-rpath,/usr/local/ICE-3.5.1/Ice-3.5.1/lib -rdynamic -Wall -Werror -pthread -fPIC -g -L../../lib -o ../../bin/glacier2router Blobject.o ClientBlobject.o CryptPermissionsVerifierI.o Glacier2Router.o Instance.o Instrumentation.o InstrumentationI.o ProxyVerifier.o RequestQueue.o RouterI.o RoutingTable.o FilterI.o FilterManager.o ServerBlobject.o SessionRouterI.o -lGlacier2 -Wl,-rpath-link,/usr/local/ICE-3.5.1/bzip2-1.0.6/lib -lIce -lIceUtil -lIceSSL -L/usr/local/ICE-3.5.1/openssl/lib -lssl -lcrypto
/usr/bin/ld: warning: type and size of dynamic symbol `DES_SPtrans' are not defined
/usr/bin/ld: dynamic variable `DES_SPtrans' is zero size
/usr/bin/ld: /usr/local/ICE-3.5.1/openssl/lib/libcrypto.a(crypt586.o)(.text+0xa): unresolvable R_386_32 relocation against symbol `DES_SPtrans'
/usr/bin/ld: final link failed: Nonrepresentable section on output
collect2: ld return 1
make[2]: *** [../../bin/glacier2router] error 1
make[2]: Leaving directory `/root/ICE/Ice-3.5.1/cpp/src/Glacier2'
make[1]: *** [Glacier2] error 2
make[1]: Leaving directory `/root/ICE/Ice-3.5.1/cpp/src'
make: *** [all] error 1
g++ -Wl,--enable-new-dtags -Wl,-rpath,/usr/local/ICE-3.5.1/Ice-3.5.1/lib -rdynamic -Wall -Werror -pthread -fPIC -g -L../../lib -o ../../bin/glacier2router Blobject.o ClientBlobject.o CryptPermissionsVerifierI.o Glacier2Router.o Instance.o Instrumentation.o InstrumentationI.o ProxyVerifier.o RequestQueue.o RouterI.o RoutingTable.o FilterI.o FilterManager.o ServerBlobject.o SessionRouterI.o -lGlacier2 -Wl,-rpath-link,/usr/local/ICE-3.5.1/bzip2-1.0.6/lib -lIce -lIceUtil -lIceSSL -L/usr/local/ICE-3.5.1/openssl/lib -lssl -lcrypto
/usr/bin/ld: warning: type and size of dynamic symbol `DES_SPtrans' are not defined
/usr/bin/ld: dynamic variable `DES_SPtrans' is zero size
/usr/bin/ld: /usr/local/ICE-3.5.1/openssl/lib/libcrypto.a(crypt586.o)(.text+0xa): unresolvable R_386_32 relocation against symbol `DES_SPtrans'
/usr/bin/ld: final link failed: Nonrepresentable section on output
collect2: ld return 1
make[2]: *** [../../bin/glacier2router] error 1
make[2]: Leaving directory `/root/ICE/Ice-3.5.1/cpp/src/Glacier2'
make[1]: *** [Glacier2] error 2
make[1]: Leaving directory `/root/ICE/Ice-3.5.1/cpp/src'
make: *** [all] error 1
0
Comments
-
Thanks,Benoit
I use Linux Operation System named Neokylin Linux, and I use gcc c++ 4.4.5 as the compiler, yes i built openssl by myself because i don't think there is a suitable version for this system.
However i tried using the rpm for red hat on your website, it worked. So does this mean i can use this version? Or is there any risk for using ice in this way?0 -
Hi,
I don't recommend using binaries from another platform, it might work if the C and C++ libraries are compatible but you might also run into subtle issues. The best would be to figure out why it fails to link with your OpenSSL build. There's a thread here describing a similar problem, it looks like this might be an issue with OpenSSL assembly code. I recommend to discuss this with the OpenSSL developers on OpenSSL mailing lists.
Cheers,
Benoit.0
