Poco C++是一個C++的開源框架,詳細介紹能夠問百度介紹更詳細,這裏我就記錄下我從零編譯poco-1.9.0和配置 VS2015的環境,以備不時之需。ios
步驟:
1、安裝cmake;
2、編譯poco-1.9.0;
3、將編譯後的poco-1.9.0配置到VS2015的項目中;
4、示例簡單示例。c++
安裝cmake
個人電腦環境:
win7 64位;
cmake-3.12.1-win64-x64(官網下載:點擊我下載cmake)。
安裝cmake按常規安裝便可,可是記得勾選:
這個主要是爲了防止電腦登陸其餘用戶沒有cmake,建議把CMake加到系統PATH中。其餘的下一步便可。
關於cmka GUI和命令行的用法(下面會配置PocoC++使用命令行用法),也能夠自行百度。windows
編譯Poco C++
前提條件:
1)Poco C++源碼(官網下載:點擊我下載);
2)已經安裝VS2015;
3)已經安裝cmake。框架
編譯poco c++(poco-1.9.0.zip、Visual Studio 2015)
1)用windows的命令行轉到poco-1.9.0文件夾,即源碼目錄。
2)執行下面命令(命令最後一句的」..」切記不可遺漏了哦):ui
mkdir cmake_build_x64
cd cmake_build_x64
cmake -G 「Visual Studio 14 2015 Win64」 ..spa
3)而後進入make_build_x64 文件夾裏面,用 Visual Studio 2015 打開 Poco.sln,用VS編譯 POCO C++ Libraries 的動態連接庫 ,建議同時編譯debug和release版本(跟普通的編譯VS工程同樣,即按快捷鍵F7便可),至此PocoC++編譯完成了,在目錄cmake_build_x64文件夾下面的的 bin、lib 子目錄中,就是咱們最終獲得的動態連接庫等文件。.net
poco-1.9.0配置到VS2015的項目中
1)在源碼目錄下新建v1.9.0_compact_MSVC文件夾,如個人:命令行
D:\poco\poco-1.9.0\v1.9.0_compact_MSVCdebug
而後設置系統環境變量指向POCO_ROOT,即點擊「」個人電腦「–》右擊「屬性」–》高級系統設置–》環境變量–》點擊系統環境變量下面的「新建」按鈕,填寫:
2)將全部的 include下面文件夾集中在 %POCO_ROOT%\include 目錄中,如個人D:\poco\poco-1.9.0\Foundation\include\Poco文件下面的東西拷貝D:\poco\poco-1.9.0\v1.9.0_compact_MSVC\include\Poco下面。同理D:\poco\poco-1.9.0\Encodings\include\Poco一樣處理(你會留意到有Encodings Foundation JSON Net Util XML這些文件夾下面\include\Poco下面的文件及文件夾須要這樣處理)。這樣作主要是爲包含頭文件方便些,最終處理完以下圖所示:
3)在v1.9.0_compact_MSVC文件夾下面創建build/x64文件夾,將編譯獲得的 bin、lib 文件夾都收集到build/x64下,以下圖:
4)在VS工程鏈接動態庫和頭文件:
a.右擊你的VS工程,點擊「屬性」–》C/C++–》常規–》添加包含目錄,輸入:orm
$(POCO_ROOT)\include
b.點擊「屬性」–》鏈接器–》附加庫目錄,輸入:
D:\poco\poco-1.9.0\v1.9.0_compact_MSVC\build\x64\lib\Debug
D:\poco\poco-1.9.0\v1.9.0_compact_MSVC\build\x64\bin\Debug
c.點擊「屬性」–》鏈接器–》輸入–》附加依賴項。
針對Debug,輸入:
PocoEncodingsd.lib
PocoFoundationd.lib
PocoJSONd.lib
PocoNetd.lib
PocoUtild.lib
針對Release輸入:
PocoEncodings.lib
PocoFoundation.lib
PocoJSON.lib
PocoNet.lib
PocoUtil.lib
PocoXML.lib
4)將對應庫配置到編譯輸出目錄。「屬性」–》生成事件–》命名行,輸入:
copy 「(POCOROOT)\build$(Platform)\bin$(Configuration)\*.∗"(POCOROOT)\build$(Platform)\bin$(Configuration)\*.∗"(TargetDir)
pooc c++使用簡單示例代碼:
#include <iostream>
#include "Poco\Timer.h"
#include "Poco\Thread.h"
using Poco::Timer;
using Poco::Thread;
using Poco::TimerCallback;
using namespace std;
class TimerExample
{
public:
void onTimer(Poco::Timer &timer)
{
cout << "func : " << __FUNCTION__ << endl;
}
};
int main(int argc, char** argv)
{
TimerExample te;
Timer timer(2000, 1000);
timer.start(TimerCallback<TimerExample>(te, &TimerExample::onTimer));
Thread::sleep(5000);
timer.stop();
return 0;
}
已上是我今天編譯poco c++、配置VS2015工程環境、簡單使用的總結筆記,若有不當之處,還請大俠多多指教哦~from:https://blog.csdn.net/u013421892/article/details/82467086