Неопределенная ссылка на t1sl_steup_key_block при связывании OpenSSL

У меня возникла проблема связывания библиотеки OpenSSL с существующим проектом. Где я ошибаюсь?

Ниже приведены шаги, которые я выполнил.

Я загрузил библиотеку SSL, настроил и установил ее. Он устанавливается в /usr/local/ssl .

2) Я скопировал libcrypto.a и libssl.a из /usr/local/ssl/lib в мой проект, что-то вроде /mnt/linux/bla/bla/lib .

3) Затем я редактирую файл make и добавляет путь libssl libcrpto. Добавленный путь – это тот, который находится в проекте, например /mnt/linux/bla /bla

3) сделать

4) построить проект через slick редактировать

Когда он строит, я получаю длинную цепочку ошибок, например

 ../lib/libssl.a(t1_enc.o) :In function 't1sl_steup_key_block: undefined ref 

Теперь, я думаю, что копирование файлов .a в проект может быть проблемой. Есть ли какая-то альтернатива для этого или я должен использовать ln -s для связывания .a файлов form /usr/local/openssl/lib в моей папке библиотеки проектов? Ниже приведена ошибка.

  Debug/FC5/m2pa.o -ldl -lpthread -ltdapi ../septel/gctlib.lib ../lib/libpq.a ../asn1/lib/libasn1per.a ../mysql/lib/libmysqlclient.a -L../lib ../asn1/lib/libasn1rt.a -lm -lcrypt -lcrypto -lssl -rdynamic ../lib/libssl.a(ssl_lib.o): In function `SSL_set_quiet_shutdown':ssl_lib.c:(.text+0x670): multiple definition of `SSL_set_quiet_shutdown' ../mysql/lib/libmysqlclient.a(ssl.o):ssl.cpp:(.text+0x125c): first defined here /usr/bin/ld: Warning: size of symbol `SSL_set_quiet_shutdown' changed from 45 in ../mysql/lib/libmysqlclient.a(ssl.o) to 12 in ../lib/libssl.a(ssl_lib.o) ../lib/libssl.a(ssl_lib.o): In function `SSL_get_quiet_shutdown':ssl_lib.c:(.text+0x680): multiple definition of `SSL_get_quiet_shutdown' ../mysql/lib/libmysqlclient.a(ssl.o):ssl.cpp:(.text+0x12down' changed from 35 in ../mysql/lib/libmysqlclient.a(ssl.o) to 8 in ../lib/libssl.a(ssl_lib.o) ../lib/libssl.a(ssl_err2.o): In function `SSL_load_error_strings':ssl_err2.c:(.text+0x4): undefined reference to `ERR_load_crypto_strings' ../lib/libssl.a(ssl_algs.o): In function `SSL_library_init':ssl_algs.c:(.text+0x4): undefined reference to `EVP_des_cbc' :ssl_algs.c:(.text+0xc): undefined reference to `EVP_add_cipher' :ssl_algs.c:(.text+0x11): undefined reference to `EVP_des_ede3_cbc' :ssl_algs.c:(.text+0x19): undefined reference to `EVP_add_cipher' :ssl_algs.c:(.text+0x1e): undefined reference to `EVP_idea_cbc' 

    Вы пробовали использовать libssl и libcrypto, уже установленные в каталоге / usr / lib (если вы установили пакеты dev для обоих)? После компиляции и запуска без ошибок с помощью установки по умолчанию вы можете создать свой новый libssl / libcrypto (?) Из источника, установить в usr / local и перестроить, используя библиотеки usr / local.

    Вам нужно добавить флаг -lssl и -lcrypto в свой файл makefile ‘

    Например:

     gcc somefile.c -o someprogram -lssl -lcrypto