Я готовлю программу Socket C, используя пакет OpenSSL в Ubuntu 18. Когда я пытаюсь скомпилировать программу, используя следующую команду:
gcc WinSocketClientSSL.c -o WinSocketClientSSL -lssl
Я получаю следующую ошибку:
/usr/bin/ld: /tmp/ccfr2z39.o: undefined reference to symbol 'OPENSSL_init_crypto@@OPENSSL_1_1_0'
/usr/bin/ld: /lib/x86_64-linux-gnu/libcrypto.so.1.1: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
Я уже пытался использовать target_link_libraries (), так как мои файлы libssl.a и libcrypto.a находятся в папке / usr / lib / x86_64-linux-gnu /. Ниже моя запись:
add_executable(Win_Socket_Client_SSL src/WinSocketClientSSL.c)
target_link_libraries(WinSocketClientSSL /usr/libx86_64-linux-gnu/libssl.a)
target_link_libraries(WinSocketClientSSL /usr/libx86_64-linux-gnu/libcrypto.a)