Получение ошибки при компиляции программы Socket C для HTTPS (OPENSSL) с использованием gcc - PullRequest
1 голос
/ 01 июля 2019

Я готовлю программу 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)
...