poco编译与运行
1.引言
Poco C++库是:
-
一系列C++类库,类似Java类库,.Net框架,Apple的Cocoa;
-
侧重于互联网时代的网络应用程序
-
使用高效的,现代的标准ANSI/ISO C++,并基于STL
-
高可移值性,并可在多个平台下可用
-
开源,并使用Boost Software License发布
-
不管是否商用,都完全免费
2.POCO库的编译
首先从github网站下载POCO库的源码,链接为:https://github.com/pocoproject/poco
进入到poco目录,按找电脑上的visual studio版本,修改完buildwin.cmd文件后,使用vs2015的Tools中“Visual Studio x64 Win64 命令提示(2015)”命令,进入命令行状态。转到Poco所在的根目录,直接输入命令:
buildwin 140 build all both x64 samples
就可以看到如下界面
编译生成的库文件在lib64目录下。
另外,可以编译Win32版本链接库,输入命令如下
3. Visual Studio 2015下编译
打开Visual Studio 2015,新建空项目
然后新建一个test.cpp文件,参考https://pocoproject.org/documentation/index.html 中,找一个poco库应用的例子
这里找一个系统时间相关的例子:
#include "Poco/DateTime.h"
using Poco::DateTime;
int main(int argc, char** argv)
{
DateTime now; // the current date and time in UTC
int year = now.year();
int month = now.month();
int day = now.day();
int dow = now.dayOfWeek();
int doy = now.dayOfYear();
int hour = now.hour();
int hour12 = now.hourAMPM();
int min = now.minute();
int sec = now.second();
int ms = now.millisecond();
int us = now.microsecond();
double jd = now.julianDay();
Poco::Timestamp ts = now.timestamp();
DateTime xmas(2006, 12, 25); // 2006-12-25 00:00:00
Poco::Timespan timeToXmas = xmas - now;
DateTime dt(1973, 9, 12, 2, 30, 45); // 1973-09-12 02:30:45
dt.assign(2006, 10, 13, 13, 45, 12, 345); // 2006-10-13 12:45:12.345
bool isAM = dt.isAM(); // false
bool isPM = dt.isPM(); // true
bool isLeap = DateTime::isLeapYear(2006); // false
int days = DateTime::daysOfMonth(2006, 2); // 28
bool isValid = DateTime::isValid(2006, 02, 29); // false
dt.assign(2006, DateTime::OCTOBER, 22); // 2006-10-22 00:00:00
if (dt.dayOfWeek() == DateTime::SUNDAY)
{
}
return 0;
}
选择项目test,右击选择属性,进入到如下界面,
填写PocoFoundationd.lib库文件的目录(在此之前,首先将编译生成的PocoFoundationd.lib文件放在test工程所在目录下lib文件夹里,poco的头文件文件夹(poco\Foundation\include)也需要放到工程目录下)
点击“确定”,然后编译,运行的时候,出现如下错误
需要将编译生成的PocoFoundationd.dll放到test.exe所在目录,这样就可以运行了。
参考链接:
https://blog.csdn.net/llg070401046/article/details/52382481
https://www.cnblogs.com/fuland/p/3768705.html
https://pocoproject.org/documentation/index.html