1
我對C++還是比較新的,所以如果我誤解了某些東西,請原諒我。添加了對.lib項目的引用 - 項目沒有使用.cpp文件?
我有一個包含sql連接類的C++庫,我想在項目中使用它。我有:
- 將其添加到同一個解決方案
- 新增的「框架和參考」對它的引用
- 包含在主體工程
- 加入stdafx.cpp庫的頭文件圖書館項目的目錄作爲包含目錄到主項目
但是,編譯項目時,我仍然得到unresolved external symbol
錯誤的數量。
如果我包含庫項目的* .cpp文件,它工作正常,但我不認爲你必須這樣做。
這些都是確切的錯誤,我越來越:
2>Link:
2> sqlConnector.obj : MSIL .netmodule or module compiled with /GL found; restarting link with /LTCG; add /LTCG to the link command line to improve linker performance
2> Creating library .\Release\MainProject.lib and object .\Release\MainProject.exp
2>LINK : warning LNK4098: defaultlib 'mfc100u.lib' conflicts with use of other libs; use /NODEFAULTLIB:library
2>LINK : warning LNK4098: defaultlib 'mfcs100u.lib' conflicts with use of other libs; use /NODEFAULTLIB:library
2>MainProject.obj : error LNK2001: unresolved external symbol "public: bool __thiscall SQLQuery::AddParameter(class ATL::CStringT<char,class StrTraitMFC_DLL<char,class ATL::ChTraitsCRT<char> > >)" ([email protected]@@[email protected][email protected][email protected]@[email protected]@@@@[email protected]@@Z)
2>MainProject.obj : error LNK2001: unresolved external symbol "public: void __thiscall SQLQuery::SetQuery(class ATL::CStringT<char,class StrTraitMFC_DLL<char,class ATL::ChTraitsCRT<char> > >)" ([email protected]@@[email protected][email protected][email protected]@[email protected]@@@@[email protected]@@Z)
2>MainProject.obj : error LNK2001: unresolved external symbol "public: bool __thiscall SQLQuery::Open(class ATL::CStringT<char,class StrTraitMFC_DLL<char,class ATL::ChTraitsCRT<char> > >)" ([email protected]@@[email protected][email protected][email protected]@[email protected]@@@@[email protected]@@Z)
2>MainProject.obj : error LNK2001: unresolved external symbol "public: void __thiscall SQLQuery::SetConnectionString(class ATL::CStringT<char,class StrTraitMFC_DLL<char,class ATL::ChTraitsCRT<char> > >)" ([email protected]@@[email protected][email protected][email protected]@[email protected]@@@@[email protected]@@Z)
2>sqlConnector.obj : error LNK2001: unresolved external symbol "public: void __thiscall CAMTrace::SetEXEName(wchar_t const *)" ([email protected]@@[email protected])
2>sqlConnector.obj : error LNK2001: unresolved external symbol "public: void __thiscall CAMTrace::Trace(wchar_t const *,int,int)" ([email protected]@@[email protected])
2>.\Release\MainProject.exe : fatal error LNK1120: 6 unresolved externals
感謝您的迴應,但我已經做到了,並且仍然得到相同的錯誤......是否將lib從release文件夾移動到了一個常用文件夾,其中有很多lib文件被保存? – Raiden616
不,只要公用文件夾也添加到項目中。您收到的錯誤消息表示找不到所需的符號。你確定圖書館包含它們嗎? –
抱歉是一個麻煩 - 我將如何檢查確切的?庫項目編譯得很好,就像我說的,如果我包含.cpp文件,它一切正常。 – Raiden616