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

poco编译与运行的更多相关文章

  1. notepad++编译并运行java (自定义包)

    最近用Notepad++写汇编,感觉用起来挺顺手,于是想能不能也在这个优秀的编辑器下编写java并编译运行呢,因为每次启动eclipse都要挺长时间,而且eclipse实在太占内存了... 于是各种百 ...

  2. 手动编译并运行Java项目的过程

    现在Java开发基本上就是IDE调试,如果跨平台打个jar包过去运行一般就可以了,但是有些情况比如需要引入外部依赖的时候,这个时候是不能直接运行的,还需要引入一些外部的参数,并不是简单的javac和j ...

  3. 如何使用命令行编译以及运行java文件

    要想编译和运行java文件,很简单,只需要两个命令: (1) javac:作用:编译java文件:使用方法: javac Hello.java ,如果不出错的话,在与Hello.java 同一目录下会 ...

  4. [JAVA] 一个可以编辑、编译、运行Java简单文件的记事本java实现

    本来是Java课做一个仿windows记事本的实验,后来突然脑子一热,结果就给它加了一个编译运行Java文件的功能. 本工程总共大约3000行代码,基本上把所学的java界面.文件.控件的功能都包含在 ...

  5. .NET程序的编译和运行

    程序的编译和运行,总得来说大体是:首先写好的程序是源代码,然后编译器编译为本地机器语言,最后在本地操作系统运行. 下图为传统代码编译运行过程: .NET的编译和运行过程与之类似,首先编写好的源代码,然 ...

  6. Java程序编译和运行的过程

    Java整个编译以及运行的过程相当繁琐,本文通过一个简单的程序来简单的说明整个流程. 如下图,Java程序从源文件创建到程序运行要经过两大步骤:1.源文件由编译器编译成字节码(ByteCode)  2 ...

  7. Java程序编译和运行的过程【转】

    转自:http://www.360doc.com/content/14/0218/23/9440338_353675002.shtml Java整个编译以及运行的过程相当繁琐,本文通过一个简单的程序来 ...

  8. .NET概念:.NET程序编译和运行

    .NET概念:.NET程序编译和运行 分类: c#程序设计 2012-02-29 15:46 3001人阅读 评论(2) 收藏 举报 .net编译器语言microsoftassemblyvb.net ...

  9. Xcode常见的编译、运行等错误的解决

    Xcode常见的编译.运行等错误的解决 项目没找到Info.plist的错误 The solution for this particular instance of the error was “I ...

随机推荐

  1. jquery里把数组转换成json的方法

    首先来看,jquery里自带的,和json相关的函数: 1.$.parseJSON  :  用来解析JSON字符串,返回一个对象. 什么叫“JSON字符串”? 比如: var a={name:&quo ...

  2. 小米oj 有多少个公差为2的等差数列

     有多少个公差为 2 的等差数列 序号:#31难度:有挑战时间限制:1000ms内存限制:10M 描述 给出一个正整数N(2<= N <=10000000),统计有多少公差为2的正整数等差 ...

  3. 微信小程序地图总结

    小程序官方的 map地图说明文档已经非常详细了,但是鉴于如果没有一个合适的使用场景,对于刚接触 map 的初级开发,看着这些繁杂又贼多的属性名和字段,外加急切的开发需求,晕头转向是不可避免的了.接下来 ...

  4. kubernetes 的数据的存储 存储卷

    根据应用本身是否 需要持久存储数据,以及某一此请求和此前的请求是否有关联性,可以分为四类应用: 1.有状态要存储 2.有状态无持久存储 3.无状态无持久存储4.无状态有持久存储 在k8s上的数据持久性 ...

  5. 【MAC工具】手机抓包工具之 —— whistle

    本文链接:https://blog.csdn.net/weixin_42534940/article/details/88783455安装参考: https://github.com/avwo/whi ...

  6. python 绘制五角星

    code import turtle n = eval(input("请输入五角星的长度")) turtle.begin_fill() #开始填充颜色 i = : turtle.f ...

  7. 用ST解决RMQ问题

    用ST算法解决RMQ(区间最值问题) 在解决CF上的6E Exposition时,用到了RMQ+二分的方法.学习了用ST来快速解决RMQ问题,因此做一个小记 建表 用DP的方式来建ST. dp[i][ ...

  8. 2016"百度之星" - 初赛(Astar Round2A)1006 Gym Class(HDU5695)——贪心+拓扑排序

    分析:首先,利用贪心可知,如果要所有人的分数和最高,需要把序号大的优先放在前面.其次,对于a的前面不能为b,那么只能a在b前面了,那么就建立一条从a到b的边,并且b的入度加1.然后就是拓扑排序了.要分 ...

  9. java 网络文件下载(并命中文名)

    public void download(HttpServletRequest request, HttpServletResponse response){ //获取服务器文件 String fil ...

  10. 5.rabbitmq--通配符模式Topics

    rabbitmq--通配符模式Topics topic模式也称为主题模式,其实他相对于routing模式最大的好处就是他多了一种匹配模式的路由,怎么理解匹配呢,其实就相当于我们之前正则的.*这种,不过 ...