使用CMake的第一步就像一个魅力。没有错误出现,一切都会按预期生成,但是当我尝试在Visual Studio中构建它时,我收到11条错误和3条警告。
所以.obj文件中存在错误,并且不确定如何解决它们。第一个错误在Authserver项目的Main.obj中,第二个错误在worldserver项目的main.obj中
错误1:
严重性代码描述项目文件行抑制状态 错误LNK2019无法解析的外部符号SSLeay_version在函数“ int __cdecl ace_main_i(int,char * * const)”中引用(?ace_main_i @@ YAHHQEAPEAD @ Z)身份验证服务器C:\ Azerothcore \ Build \ src \ server \ authserver \ Main.obj 1 / p>
错误2:
严重性代码描述项目文件行抑制状态 错误LNK2019无法解析的外部符号SSLeay_version在函数“ int __cdecl ace_main_i(int,char * * const)”中引用(?ace_main_i @@ YAHHQEAPEAD @ Z)worldserver C:\ Azerothcore \ Build \ src \ server \ worldserver \ Main.obj 1 / p>
接下来的4个错误是在worldserver项目的shared.lib(OpenSSL crypto.obj)文件中。
错误1:
严重性代码描述项目文件行抑制状态 错误LNK2019无法解析的外部符号CRYPTO_num_locks在函数“ void __cdecl OpenSSLCrypto :: threadsSetup(void)”中引用(?threadsSetup @ OpenSSLCrypto @@ YAXXZ)worldserver C:\ Azerothcore \ Build \ src \ server \ worldserver \ shared.lib(OpenSSLCrypto.obj )1
错误2:
严重性代码描述项目文件行抑制状态 错误LNK2019无法解析的外部符号CRYPTO_set_locking_callback在函数“ void __cdecl OpenSSLCrypto :: threadsSetup(void)”中引用(?threadsSetup @ OpenSSLCrypto @@ YAXXZ)worldserver C:\ Azerothcore \ Build \ src \ server \ worldserver \ shared.lib(OpenSSLCrypto.obj )1
错误3:
严重性代码描述项目文件行抑制状态 错误LNK2019无法解析的外部符号CRYPTO_THREADID_set_numeric在函数“ void __cdecl threadIdCallback(struct crypto_threadid_st *)”中引用(?threadIdCallback @@ YAXPEAUcrypto_threadid_st @@@ Z)worldserver C:\ Azerothcore \ Build \ src \ server \ worldserver \ sharedlib。 obj)1
错误4:
严重性代码描述项目文件行抑制状态 错误LNK2019无法解析的外部符号CRYPTO_THREADID_set_callback在函数“ void __cdecl OpenSSLCrypto :: threadsSetup(void)”中引用(?threadsSetup @ OpenSSLCrypto @@ YAXXZ)worldserver C:\ Azerothcore \ Build \ src \ server \ worldserver \ shared.lib(OpenSSLCrypto.obj )1
接下来的3个错误在shared.lib(ARC4.obj)shared.lib(HMACSHA1.obj)文件中。
错误号1 ARC4.obj文件:
严重性代码描述项目文件行抑制状态 错误LNK2019无法解析的外部符号EVP_CIPHER_CTX_init在函数“ public:__cdecl ARC4 :: ARC4(unsigned int)”中引用(?? 0ARC4 @@ QEAA @ I @ Z)worldserver C:\ Azerothcore \ Build \ src \ server \ worldserver \ shared。 lib(ARC4.obj)1
错误编号2 HMACSHA1文件:
严重性代码描述项目文件行抑制状态 错误LNK2019无法解析的外部符号HMAC_CTX_init在函数“ struct hmac_ctx_st * __cdecl HMAC_CTX_new(void)”(?HMAC_CTX_new @@ YAPEAUhmac_ctx_st @@ XZ)中引用了worldserver C:\ Azerothcore \ Build \ src \ server \ worldserver \ Sharedlib。 )1
错误号3 HMACSHA1文件:
严重性代码描述项目文件行抑制状态 错误LNK2019无法解析的外部符号HMAC_CTX_cleanup在函数“ void __cdecl HMAC_CTX_free(struct hmac_ctx_st *)”中引用(? obj)1
答案 0 :(得分:5)
解决了该问题,OpenSSL的版本已损坏,因此在通过Cmake运行时并没有注意到它,但是visual studio这样做了,因此删除了OpenSSL,重新安装并重新运行了Cmake,现在它确实可以正常运行了