2016-11-23 172 views
0

我有我想要導入庫的項目。當我這樣做,(進口的.lib從庫文件),比調用從庫中的任何功能,我得到以下錯誤:printf/_vsnprintf_l /已經在msvcrtd.lib中定義(MSVCR120D.dll)

 "C:\Uz\myproj.vcxproj" (default target) (1) ->(Link target) -> 
    aziotsharedutil.lib(consolelogger.obj) : error LNK2005: printf already defined in msvcrtd.lib(MSVCR120D.dll) [C:\Uz\myproj.vcxproj] 
    aziotsharedutil.lib(socketio_win32.obj) : error LNK2005: _vsnprintf_l already defined in msvcrtd.lib(MSVCR120D.dll) [C:\Uz\myproj.vcxproj] 
    uamqp.lib(amqpvalue_to_string.obj) : error LNK2005: _vsnprintf_l already defined in msvcrtd.lib(MSVCR120D.dll) [C:\Uz\myproj.vcxproj] 
    C:\Dz\myproj.vcxproj\myproj.dll : fatal error LNK1169: one or more multiply defined symbols found [C:\Uz\myproj.vcxproj] 

0警告(S) 4個錯誤

有誰知道我能解決這個問題嗎? 我有以下的在我的項目導入的庫:

msvcprtd.lib

msvcrtd.lib 
kernel32.lib 
ole32.lib 
aziotsharedutil.lib //imported Library .lib file 
uamqp.lib    //imported Library .lib file 
eventhub_client.lib //imported Library .lib file 
Advapi32.lib 
Crypt32.lib 
Ws2_32.lib 
Secur32.lib 
ucrt.lib 
vcruntime.lib 

注1

被構建爲靜態鏈接庫的.lib所有3個項目,具有相同的設置多線程調試DLL(/ MDd),與我的項目相同。

謝謝!

回答

0

使用相同版本的編譯器進行編譯,解決了我的問題!