我正在開發一個使用第三方dll和庫的項目。我想用靜態CRT(LIBCMTD)構建我的項目,因爲我希望在「IBM purifier」中運行我的應用程序。但是,第三方庫是使用動態CRT(MSVCRT)構建的。StaticCRT(LIBCMT(D))和DynamicCRT(MSVCRT(D))衝突
這使聯誤差爲: MSVCRTD.LIB(MSVCR80D.dll):錯誤LNK2005:__mktime64在LIBCMTD.lib(mktime64.obj)MSVCRTD.LIB(MSVCR80D.dll)已經定義:誤差LNK2005:__gmtime64已經定義在LIBCMTD.lib(gmtime64.obj)MSVCRTD.lib(MSVCR80D.dll)中:錯誤LNK2005:__localtime64已在LIBCMTD.lib中定義(loctim64.obj)
我嘗試了各種鏈接器設置。此外,我給/ FORCE:MULTIPLE連接器命令行忽略多個定義並創建一個構建。它這樣做了,但我的應用程序不能運行在淨化器中。
有沒有一種很好的方法來做我想要達到的目標?我無法控制第三方源代碼來控制其設置。
感謝