неопределенная функция BIO_new_socket в библиотеке OpenSSL

Я получаю следующую проблему с некоторым кодом openssl (да, я знаю, что он плохо документирован, но я хочу использовать его в любом случае) в моем проекте (написанном на c, на osx и протестированном в ubuntu):

Неопределенные символы:
"_BIO_new_socket", на который ссылается: _main в ccG3cvyw.o ld: символ(ы) не найден collect2: ld вернул 1 статус выхода

У меня были проблемы с библиотекой SSL, потому что я забыл связать свою программу с библиотеками openssl. Однако указанное выше undefined все еще остается в силе.

Моя строка компиляции:

gcc -o test_app test_app.c -lssl

Версии, которые я использую: (GCC) 4.2.1 OpenSSL 0.9.8l 5 ноября 2009 г.

Я вполне уверен, что это (связанная) проблема с библиотекой, поскольку функция SSL SSL_set_bio() работает (так как не вызывает ошибки сборки).

Любая подсказка очень ценится :)

  • Чак

person Chuck    schedule 16.06.2010    source источник


Ответы (1)


Библиотека, которую я искал, была крипто. О! Решение: добавьте -lcrypto в строку gcc.

person Chuck    schedule 16.06.2010