다음 CMakeLists.txt를 사용하세요(AMAP으로 잘라내려고 했습니다)
https://gist.github.com/perbertoni/29200833dc562ab6ee2c
make
연결할 때 다음 오류가 발생합니다.
/usr/bin/ld: CMakeFiles/blockmon.dir/bin/blockmon.cpp.o: undefined reference to symbol 'SSL_load_error_strings@@OPENSSL_1.0.0'
//lib/x86_64-linux-gnu/libssl.so.1.0.0: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
/usr/bin/ld: CMakeFiles/blockmonWithXmlRPC.dir/bin/blockmonWithXmlRPC.cpp.o: undefined reference to symbol 'SSL_load_error_strings@@OPENSSL_1.0.0'
//lib/x86_64-linux-gnu/libssl.so.1.0.0: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
Cmake가 대상으로 하는 두 개의 실행 파일 각각에 대해. 산출:
ldd /lib/x86_64-linux-gnu/libssl.so.1.0.0
예
linux-vdso.so.1 => (0x00007ffc5a1f4000)
libcrypto.so.1.0.0 => /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 (0x00007fad78c52000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fad7888d000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fad78688000)
/lib64/ld-linux-x86-64.so.2 (0x00007fad792bd000)
나는 그것을 사용하고 있습니다 Ubuntu 14.04.2 LTS x64
. Debian 7.8 x64
시스템 상 참고해주세요효과가있다!
이 요지를 기반으로 실행 가능한 코드를 잘라내려고 합니다.
답변1
개발자가 기호를 제거했습니다. 바라보다https://github.com/openssl/openssl/blob/72257204bd2a88773461150765dfd0e0a428ee86/include/openssl/ssl.h#L1495당신이 해야 할 일은 #define OPENSSL_API_COMPAT 0x0908
기호를 매크로로 정의하기 위해 어딘가에 추가하는 것입니다.