Sto provando a compilare il server ASIO SSL Boost 1.47 e gli esempi di client. Posso integrare con successo Boost nel mio progetto, ma non posso incorporare OpenSSL. Quando provo ad aggiungerlo ricevo gli errori:Boost SSL con Visual Studio 2010 e OpenSSL
1>SSLServer.obj : error LNK2019: unresolved external symbol _ERR_reason_error_string referenced in function "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall boost::asio::error::detail::ssl_category::message(int)const " ([email protected][email protected]@[email protected]@[email protected]@[email protected][email protected]@[email protected]@[email protected]@[email protected]@[email protected]@[email protected])
1>SSLServer.obj : error LNK2019: unresolved external symbol _CRYPTO_set_id_callback referenced in function "public: __thiscall boost::asio::ssl::detail::openssl_init_base::do_init::do_init(void)" ([email protected][email protected]@[email protected]@[email protected]@[email protected])
1>SSLServer.obj : error LNK2019: unresolved external symbol _CRYPTO_set_locking_callback referenced in function "public: __thiscall boost::asio::ssl::detail::openssl_init_base::do_init::do_init(void)" ([email protected][email protected]@[email protected]@[email protected]@[email protected])
1>SSLServer.obj : error LNK2019: unresolved external symbol _CRYPTO_num_locks referenced in function "public: __thiscall boost::asio::ssl::detail::openssl_init_base::do_init::do_init(void)" ([email protected][email protected]@[email protected]@[email protected]@[email protected])
1>SSLServer.obj : error LNK2019: unresolved external symbol _SSL_load_error_strings referenced in function "public: __thiscall boost::asio::ssl::detail::openssl_init_base::do_init::do_init(void)" ([email protected][email protected]@[email protected]@[email protected]@[email protected])
1>SSLServer.obj : error LNK2019: unresolved external symbol _SSL_library_init referenced in function "public: __thiscall boost::asio::ssl::detail::openssl_init_base::do_init::do_init(void)" ([email protected][email protected]@[email protected]@[email protected]@[email protected])
1>SSLServer.obj : error LNK2019: unresolved external symbol _ENGINE_cleanup referenced in function "public: __thiscall boost::asio::ssl::detail::openssl_init_base::do_init::~do_init(void)" ([email protected][email protected]@[email protected]@[email protected]@[email protected])
1>SSLServer.obj : error LNK2019: unresolved external symbol _CONF_modules_unload referenced in function "public: __thiscall boost::asio::ssl::detail::openssl_init_base::do_init::~do_init(void)" ([email protected][email protected]@[email protected]@[email protected]@[email protected])
1>SSLServer.obj : error LNK2019: unresolved external symbol _CRYPTO_cleanup_all_ex_data referenced in function "public: __thiscall boost::asio::ssl::detail::openssl_init_base::do_init::~do_init(void)" ([email protected][email protected]@[email protected]@[email protected]@[email protected])
1>SSLServer.obj : error LNK2019: unresolved external symbol _EVP_cleanup referenced in function "public: __thiscall boost::asio::ssl::detail::openssl_init_base::do_init::~do_init(void)" ([email protected][email protected]@[email protected]@[email protected]@[email protected])
1>SSLServer.obj : error LNK2019: unresolved external symbol _ERR_remove_state referenced in function "public: __thiscall boost::asio::ssl::detail::openssl_init_base::do_init::~do_init(void)" ([email protected][email protected]@[email protected]@[email protected]@[email protected])
1>SSLServer.obj : error LNK2019: unresolved external symbol _ERR_free_strings referenced in function "public: __thiscall boost::asio::ssl::detail::openssl_init_base::do_init::~do_init(void)" ([email protected][email protected]@[email protected]@[email protected]@[email protected])
1>C:\Users\Epicism\Documents\Visual Studio 2010\Projects\SSLServer\Debug\SSLServer.exe : fatal error LNK1120: 12 unresolved externals
1>
1>Build FAILED.
Ho provato ad aggiungere la directory C: \ OpenSSL-Win32 \ lib \ C: \ OpenSSL-Win32 \ lib \ VC \ C: \ OpenSSL -Win32 \ lib \ VC \ static, C: \ OpenSSL-Win32 \ bin, C: \ OpenSSL-Win32 \ include in Project-> Proprietà generali-> Linker-> Directory di libreria aggiuntive utilizzando le librerie precompilate di openssl (http: //www.openssl.org/related/binaries.html). Ho anche provato a compilare OpenSSL con gli stessi errori. Sono davvero in perdita, ho provato tutto quello che ho cercato di Google circa un migliaio di volte, ha cercato IRC, ogni combinazione di directory che posso pensare ...
La mia configurazione è: Windows 7 64-bit Windows Visual Studio 2010 64 bit Boost 1.47 OpenSSL 1.0.0E e G C/C++ Directory di inclusione aggiuntive: C: \ Programmi (x86) \ boost \ boost_1_47; C: \ openssl \ include \; C: \ OpenSSL- Win32 \ lib;% (AdditionalIncludeDirectories) Progetto-> Proprietà generali-> Linker-> Directory di libreria aggiuntive: C: \ Programmi (x86) \ boost \ boost_1_47 \ lib; C: \ openssl \ lib; C: \ openssl; % (AdditionalLibraryDirectories) - Ho provato ad aggiungere ogni directory anche a questa proprietà ....
In questo momento mi sto solo cercando di compilare il seguente in un progetto di console VS C++:
// SSLServer.cpp: Definisce il punto di ingresso per l'applicazione di console. //
#include "stdafx.h"
#include <cstdlib>
#include <iostream>
#include <boost/bind.hpp>
#include <boost/asio.hpp>
#include <boost/asio/ssl.hpp>
int _tmain(int argc, _TCHAR* argv[])
{
return 0;
}
Grazie in anticipo.
SÌ anche io ho questo problema come bene – jzeus
Ho anche questo problema. Qualcuno è riuscito a capirlo? Si prega di postare se lo fai. Ho provato il suggerimento di Fraser in basso, ma ho ancora il problema. –