编译链接问题。
在网上下载了一个VC项目开源代码。还剩下几个链接错误,不知道怎么解决。
MD4.obj : error LNK2019: 无法解析的外部符号 _MD4_Add_p5,该符号在函数 "public: void __thiscall CMD4::Add(void const *,unsigned long)" (?Add@CMD4@@QAEXPBXK@Z) 中被引用
MD5.obj : error LNK2019: 无法解析的外部符号 _MD5_Add_p5,该符号在函数 "public: void __thiscall CMD5::Add(void const *,unsigned long)" (?Add@CMD5@@QAEXPBXK@Z) 中被引用
SHA.obj : error LNK2019: 无法解析的外部符号 _SHA_Add_p5,该符号在函数 "public: void __thiscall CSHA::Add(void const *,unsigned long)" (?Add@CSHA@@QAEXPBXK@Z) 中被引用
TigerTree.obj : error LNK2019: 无法解析的外部符号 _TigerTree_Tiger_SSE2,该符号在函数 "public: __thiscall CTigerTree::CTigerTree(void)" (??0CTigerTree@@QAE@XZ) 中被引用
TigerTree.obj : error LNK2019: 无法解析的外部符号 _TigerTree_Tiger_p5,该符号在函数 "public: __thiscall CTigerTree::CTigerTree(void)" (??0CTigerTree@@QAE@XZ) 中被引用
msvcrtd.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用
在工程目录下搜了一下,发现_MD4_Add_p5 居然是在一个.asm的文件中定义的。
MD4_Add_p5 PROC PUBLIC, _this:DWORD, _Data:DWORD, _nLength:DWORD
pusha
__this textequ <[esp+36]> ; different offset due to pusha
__Data textequ <[esp+40]>
__nLength textequ <[esp+44]>
mov ecx, __nLength
and ecx, ecx
jz get_out
xor edx, edx
mov ebp, __Data
。。。。
这工程怎么编译呀。这个问题难倒我了。请高人帮帮忙。。。