error LNK2019,error LNK2001:無法解析的外部符號
環境:win7 ,vs2010
目的:安裝protobuf
問題:
test.pb.obj : error LNK2019: 無法解析的外部符號 "public: virtual __thiscall google::protobuf::MessageLite::~MessageLite(void)" ([email protected]@[email protected]@[email protected]),該符號在函式
[email protected]@@[email protected]$0 中被引用
1>test.pb.obj : error LNK2001: 無法解析的外部符號 "public: virtual class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall google::protobuf::MessageLite::InitializationErrorString(void)const " (
分析原因:
lib 庫沒有載入,或者路徑不對
解決辦法:
1.用程式碼 :#pragma comment(lib,"libprotobuf.lib")
#pragma comment(lib,"libprotoc.lib")
2.右鍵->屬性->聯結器->輸入->附加依賴項 新增libprotobuf.lib,libprotoc.lib
倆種方法都是一樣的,都是在工程裡面新增靜態庫。
擴充套件:
#pragma是一個很常用的關鍵字。
#pragma pack(n) 以n個位元組對齊(struct 存在對齊補齊)。最常用的場合應該是網路處理。n 大於結構體補齊的位元組時候,按照結構體補齊的位元組對齊,反之則按照n位元組對齊。
#pragma pop 取消n位元組對齊。
相關推薦
c++連接mysql數據庫出現無法解析外部符號的問題
vs、解析外部符號include,lib文件夾都已經拷到了項目根目錄,並且設置好了路徑,生成就會出現無法解析的外部符號,提示我無法轉到函數的定義,最後發現vs2017默認win32,但是我的程序集64位的。更改後,重新設置目錄,路徑即可。c++連接mysql數據庫出現無法解析外部符號的問題
error2019無法解析外部符號
“error LNK2019: 無法解析的外部符號 error LNK2001: 無法解析的外部符號“private: static struct _OVERLAPPED CUsbCom::g_WriteOverlapped” 應該是工程設定的問題 沒有連線相應
VS2015無法解析外部符號
在使用VS編輯C++時,遇到了無法解析外部符號的錯誤 嚴重性程式碼說明專案 檔案行 錯誤LNK2019 無法解析的外部符號 "public: __thiscall Employee::Employe
OpenCv在win下靜態庫的編譯和使用,以及部分無法解析外部符號的錯誤解決
這裡演示的是opencv3.4版本的編譯和使用過程。1、靜態庫編譯CMake進行配置,編譯時我選擇build目錄為build-static。其中需要設定選擇安裝目錄,設定 “CMAKE_INSTALL_PREFIX” 為 /build-static/install
error LNK2019,error LNK2001:無法解析的外部符號
環境:win7 ,vs2010 目的:安裝protobuf 問題: test.pb.obj : error LNK2019: 無法解析的外部符號 "public: virtual __thiscall google::protobuf::MessageLite::~
error LNK2019: 無法解析的外部符號;fatal error LNK1120: 1 個無法解析的外部命令; 可能存在的問題
alt 配置 pan ron ima detail deb 16px 管理 一、問題:使用一個.lib出現如下錯誤 (我使用的環境 vs2012) error LNK2019: 無法解析的外部符號 _SSL_CTX_new,該符號在函數 _main 中被引用; fa
Error LNK2001 無法解析的外部符號 的幾種情況及解決
VC++時經常會遇到連結錯誤LNK2001,該錯誤非常討厭,因為對於程式設計者來說,最好改的錯誤莫過於編譯錯誤,而一般說來發生連線錯誤時,編譯都已通過。產生連線錯誤的原因非常多,尤其LNK2001錯誤,常常使人不明其所以然。如果不深入地學習和理解VC++,要想改正連線錯誤LNK2001非常困難。 &
"error LNK2001: 無法解析的外部符號 _sscanf " 問題 解決方法
問題場景: 使用VS2015的軟體開發環境中,在引用第三方檔案庫時,出現了 “libx264.a(ratecontrol.o) : error LNK2019: 無法解析的外部符號 _sscanf,該符號在函式 _x264_ratecontrol_new 中被引用” 等錯誤
C++工程編譯之“error LNK2001: 無法解析的外部符號”
今天一整天都在折騰“error LNK2001: 無法解析的外部符號”,就在頭疼不已的時候,總算是找到問題原因了:各個動態連結庫的編譯方式必須統一才行,要不然很容易對庫函式的引用產生衝突。簡單來說就是,如果使用的第三方函式庫編譯方式採用/MD,那麼主工程也應該
error LNK2001: 無法解析的外部符號 "public: virtual struct QMetaObject const * __thiscall Widget::metaObject
其原因是系統無法訪問到Moc檔案。解決方案如下: 專案–>右鍵點選–>Qt Project Settings 檢查你的 MocDirectory 其值是否是 .\Generat
VS2013執行錯誤:error LNK2001: 無法解析的外部符號
1>Goods.obj: error LNK2001:無法解析的外部符號 "int (* arr)[20]" ([email protected]@[email protected]) 1>Connect.obj: error LNK2001
error LNK2001: 無法解析的外部符號 fatal error LNK1120: 1 個無法解析的外部命令(呼叫約定的問題)
問題背景: 我在用MFC寫的一個單文件的程式呼叫以MFC通過.def模組匯出的DLL時出現瞭如下錯誤 error LNK2001: 無法解析的外部符號 "unsigned short __cdecl SearchCtrl(struct tagPARAMS &,sh
ogre-procedural library building error LNK2001: 無法解析的外部符號
在編譯ogre-procedural的lib時出現了很多錯誤,修改之後沒有報錯了 但是又出現如下問題:1> 正在建立庫 D:\Ogre\OgreAddOn\ogre-procedural\lib\Debug\OgreProcedural_d.lib 和物件 D:
Visual Studio Error LNK2001 無法解析的外部符號 的幾種情況
VC++時經常會遇到連結錯誤LNK2001,該錯誤非常討厭,因為對於程式設計者來說,最好改的錯誤莫過於編譯錯誤,而一般說來發生連線錯誤時,編譯都已通過。產生連線錯誤的原因非常多,尤其LNK2001錯誤,常常使人不明其所以然。如果不深入地學習和理解VC+
vc2008 錯誤:error LNK2001: 無法解析的外部符號之一
error LNK2001: 無法解析的外部符號 "protected: virtual struct AFX_MSGMAP const * __thiscall ****::GetMessageMap(void)const " ([email protect
error lnk2001無法解析的外部符號_main 無法解析的外部符號[email
這個問題表明你新建的是一個main型別函式(控制檯程式),而你的程式中有視窗程式,顯然是個win32函式,解決方法:專案-屬性-連結器-系統-子系統-把控制檯該為windows剛學WinAPI編譯遇到不少問題,LNK2019: 無法解析的外部符號 _main,該符號在函式 ___tmainCRTStartup
關於 error LNK2001: 無法解析的外部符號 ___wargv問題
筆者用VS2010生成64位的MFC應用程式時發現,輸出中提示 1> uafxcwd.lib(appcore.obj) : error LNK2001: 無法解析的外部符號 ___wargv1>uafxcwd.lib(appcore.obj) : error L
error LNK2001: 無法解析的外部符號 "public: void __thiscall Cmfc_DeleteFileDlg::OnBnClickedButton3(void)"
連結錯誤:出現這個2001錯誤,是因為連結失敗,然而連結失敗,又是因為以下原因: 1.你在標頭檔案中聲明瞭函式,但是cpp檔案缺少了函式實現部分。 2.忘了將這個.h,.cpp Add to project; 3.以上兩種情況都沒有做,沒有將它對應的lib檔案新增到
VS error LNK2001無法解析的外部符號_CrtDbgReportW
本文提供的只是可能的一種解決方案,一種解決這個錯誤的思路,並不一定符合所有情況。 最近經常遇到這個錯誤,總是在解決後忘記怎麼解決的,下次又花費很多時間去找原因。今天,做個筆記,嗯。 首先,列出原因: 其次,給出解決方法: 這是解決前問題根源:
編譯Qt時遇到”error LNK2001: 無法解析的外部符號“
解決辦法:執行QT的命令列工具 From a command prompt, change the directory to hello, and typeqmake -project to create a platform-independent project fil