一、下載
- 下載地址:https://pocoproject.org/releases/poco-1.9.0/
- 下載
poco-1.9.0-all.zip,其中不帶all的是基礎版本,只包含基本的poco類庫,帶all的是全功能版本,包含sqlite,opensll等等。 - 解壓縮zip包后,得到
完整截圖
二、編譯
---- Windows平臺下
1、用記事本或UltraEdit打開components文件,添加或刪除指定的行即可配置編譯哪些模塊。
例如:
CppUnit
CppUnit/WinTestRunner
Foundation
Encodings
XML
JSON
Util
Net
Zip
=> 只編譯基本模塊2、根據(jù)Visual Studio版本,在文件夾中直接雙擊build_vsxxx.cmd文件即可自動編譯。
VS2008: build_vs90.cmd
VS2013: build_vs120.cmd
VS2015: build_vs140.cmd
VS2017: build_vs150.cmd3、本人使用的VS2013因此,雙擊運行了文件夾中的build_vs120.cmd。之后會自動執(zhí)行編譯腳本,并在當前目錄下生成兩個文件夾bin和lib。
lib:該文件夾中存放了.lib靜態(tài)連接庫等文件。編譯自己寫的源代碼時需要。
bin:該文件夾中存放了.dll動態(tài)鏈接庫等文件。運行編譯好的可執(zhí)行文件時需要。4、 以上兩個文件夾中文件可以更細分為用于release版和用于debug版(名字后帶d)。為了后面方便和VS鏈接使用更方便,可以將這些文件分到debug和release子文件夾。
image.png
三、在VS2013中使用POCO庫編程
- 1、將poco源路徑添加為環(huán)境變量POCO_PATH,之后就可以使用
$(POCO_PATH)統(tǒng)一表示這個路徑。
添加環(huán)境變量
- 2、頭文件問題
新建一個VS2013工程,輸入使用poco的代碼,會發(fā)現(xiàn)找不到相關頭文件,原因是我們沒有將需要的頭文件包含到該工程,報錯如下圖:
解決辦法:點擊VS菜單欄“項目”=》最下面“屬性”,添加附加頭文件目錄
再看代碼,可以發(fā)現(xiàn)已經(jīng)不會報錯找不到頭文件了:
- 3、編譯時靜態(tài)庫問題
直接編譯,發(fā)現(xiàn)還是會報錯,說明找不到代碼運行需要鏈接的靜態(tài)庫:
解決辦法:將debug版的靜態(tài)鏈接庫的目錄添加。(如果后期要使用release版也要再添加相應的庫目錄$(POCO_PATH)/build/lib/Release)
再次編譯,就不會報錯找不到相關的.lib文件了。
- 4、運行時動態(tài)庫問題
編譯通過后,運行代碼,還是會報錯,找不到.dll動態(tài)鏈接庫,因此程序無法執(zhí)行。
可以查看VS工程項目目錄,確實沒有該.dll動態(tài)庫文件。
解決方法:將需要用到的.dll動態(tài)鏈接庫復制到VS工程項目目錄。(若是要得到Release版本,那就要將對應的Release版的動態(tài)庫復制過去)
再次運行代碼,這次成功執(zhí)行:
》更便捷的做法:使用VS的運行輸出時命令,自動將所有的.dll文件拷貝到目標文件夾。命令:copy $(POCO_PATH)\build\bin\Debug\*.dll D:\src\c_cpp\poco_project\Test\test1
查看VS工程項目的目錄,會發(fā)現(xiàn)所有的.dll動態(tài)庫,都自動拷貝過來了:
》》》》》通過以上的步驟,就成功且方便的將POCO庫和VS連接好,后面寫代碼就方便了。
















