Details
Description
When building ATS 5.3.0 on Ubuntu >11.04[1,2] a linking failure occurs because of the ordering of the libraries:
libtool: link: c++ -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security -pipe -Wall -feliminate-unused-debug-symbols -fno-strict-aliasing -Wno-invalid-offsetof -mcx16 -rdynamic -Wl,-Bsymbolic-functions -fPIE -pie -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/traffic_manager AddConfigFilesHere.o traffic_manager.o StatProcessor.o StatType.o StatXML.o ../../mgmt/web2/libweb.a ../../mgmt/api/.libs/libmgmtapilocal.a /«PKGBUILDDIR»/lib/ts/.libs/libtsutil.so -lssl -lcrypto -L/usr/lib ../../mgmt/.libs/libmgmt_lm.a ../../proxy/hdrs/libhdrs.a ../../lib/records/librecords_lm.a ../../lib/ts/.libs/libtsutil.so ../../iocore/eventsystem/libinkevent.a ../../proxy/shared/liberror.a ../../proxy/shared/libdiagsconfig.a -lresolv -ltcl8.5 -lhwloc -lm ../../lib/wccp/libwccp.a ../../lib/tsconfig/.libs/libtsconfig.so -lcap -lpcre -lz -lcrypt -lpthread -lrt -ldl /usr/lib/x86_64-linux-gnu/libxml2.so -Wl,-rpath -Wl,/usr/lib/trafficserver
/usr/bin/ld: ../../lib/wccp/libwccp.a(WccpMsg.o): undefined reference to symbol 'MD5_Final@@OPENSSL_1.0.0'
/usr/bin/ld: note: 'MD5_Final@@OPENSSL_1.0.0' is defined in DSO /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../x86_64-linux-gnu/libcrypto.so so try adding it to the linker command line
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../x86_64-linux-gnu/libcrypto.so: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
make[3]: *** [traffic_manager] Error 1
make[3]: Leaving directory `/«PKGBUILDDIR»/cmd/traffic_manager'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/«PKGBUILDDIR»/cmd'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/«PKGBUILDDIR»'
dh_auto_build: make -j1 returned exit code 2
make: *** [binary-arch] Error 2
[1] https://wiki.debian.org/ToolChain/DSOLinking#Only_link_with_needed_libraries
[2] https://wiki.ubuntu.com/NattyNarwhal/ToolchainTransition
Issue Links
- is cloned by
-
TS-3806
In cmd/traffic_manager: libwccp.a(WccpMsg.o): undefined reference to symbol MD5_Final
-
- Closed
-
Activity
- All
- Comments
- Work Log
- History
- Activity
- Transitions
GitHub user jbfavre opened a pull request:
https://github.com/apache/trafficserver/pull/203
Solve 'undefined reference to symbol MD5_Final@@OPENSSL_1.0.0'.…
Fix for
TS-3632While building ATS 5.3 for Debian, I had the exact same error as reported in
TS-3632.I solved it adding OPENSSL_INCLUDE & OPENSSL_LIBS in Makefile.am.
Now build & tests are OK.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/jbfavre/trafficserver fix_TS3632
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/trafficserver/pull/203.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #203
commit 442f560ac4412a6cbbba6f69b029def418c9fbe8
Author: Jean Baptiste Favre <jean-baptiste.favre@blablacar.com>
Date: 2015-05-27T07:51:39Z
Solve 'undefined reference to symbol MD5_Final@@OPENSSL_1.0.0'. Fix
TS-3632