фатальная ошибка LNK1120: 16 неразрешенных внешних openssl: ssleay32MD.lib, libeay32MD.lib - PullRequest
2 голосов
/ 14 марта 2012

Я новичок в Openssl, и пытаюсь запустить программу dhclient, доступную онлайн на http://www.josuegomes.com/codeblog/dhclient.htm.

При этом я получаю следующие ошибки,

dhclient.cpp
1> dhclient.obj: ошибка LNK2019: неразрешенный внешний символ _ERR_print_errors_fp, на который есть ссылка в функции "void __cdecl handle_error (char const *, int, char const *)" (? Handle_error @@ YAXPBDH0 @ Z) * ​​1008 * 1> dhclient.obj: ошибка LNK2019: неразрешенный внешний символ _SSL_load_error_strings, на который ссылается функция «void __cdecl init_OpenSSL (void)» (? Init_OpenSSL @@ YAXXZ)
1> dhclient.obj: ошибка LNK2019: неразрешенный внешний символ _SSL_library_init, на который ссылается функция «void __cdecl init_OpenSSL (void)» (? Init_OpenSSL @@ YAXXZ)
1> dhclient.obj: ошибка LNK2019: неразрешенный внешний символ _SSL_CTX_set_cipher_list, указанный в функции "struct ssl_ctx_st * __cdecl setup_ctx (void)" (? Setup_ctx @@ YAPAUssl_ctx_st @@ XZ)
1> dhclient.obj: ошибка LNK2019: неразрешенный внешний символ _SSL_CTX_new, на который ссылается функция «struct ssl_ctx_st * __cdecl setup_ctx (void)» (? Setup_ctx @@ YAPAUssl_ctx_st @@ XZ)
1> dhclient.obj: ошибка LNK2019: неразрешенный внешний символ _TLSv1_client_method, указанный в функции "struct ssl_ctx_st * __cdecl setup_ctx (void)" (? Setup_ctx @@ YAPAUssl_ctx_st @@ XZ)
1> dhclient.obj: ошибка LNK2019: неразрешенный внешний символ _SSL_CTX_free, указанный в функции _main
1> dhclient.obj: ошибка LNK2019: неразрешенный внешний символ _SSL_free, указанный в функции _main
1> dhclient.obj: ошибка LNK2019: неразрешенный внешний символ _SSL_shutdown, на который ссылается функция _main
1> dhclient.obj: ошибка LNK2019: неразрешенный внешний символ _SSL_read, на который ссылается функция _main
1> dhclient.obj: ошибка LNK2019: неразрешенный внешний символ _SSL_write, указанный в функции _main
1> dhclient.obj: ошибка LNK2019: неразрешенный внешний символ _SSL_connect, указанный в функции _main
1> dhclient.obj: ошибка LNK2019: неразрешенный внешний символ _SSL_set_bio, указанный в функции _main
1> dhclient.obj: ошибка LNK2019: неразрешенный внешний символ _SSL_new, указанный в функции _main 1> dhclient.obj: ошибка LNK2019: неразрешенный внешний символ _BIO_ctrl, указанный в функции _main 1> dhclient.obj: ошибка LNK2019: неразрешенный внешний символ _BIO_new_connect, указанный в функции _main 1> C: \ Users \ Rucha \ Documents \ Visual Studio 2010 \ Projects \ emptyprojectssl \ Debug \ emptyprojectssl.exe: фатальная ошибка LNK1120: 16 неразрешенных внешних объектов

Я добавил include и пути к библиотекам, также моя библиотека времени выполнения MD, и я добавил ssleay32MD.lib libeay32MD.lib для внешних зависимостей.

Пожалуйста, помогите.

Ответы [ 2 ]

1 голос
/ 22 мая 2012

У меня была похожая проблема, и я решил. Попробуйте посмотреть, используете ли вы правильные библиотеки, я имею в виду, если вы используете x64 lib и компилируете с 32-битной версией, то произойдет та же ошибка. Счастливое кодирование

0 голосов
/ 14 марта 2012

Я думаю, что отладочные библиотеки ssleay32MDd.lib и libeay32MDd.lib (обратите внимание на суффикс "d").

...