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. Django-cookie-sesson

    一 会话跟踪 我们需要先了解一下什么是会话!可以把会话理解为客户端与服务器之间的一次会晤,在一次会晤中可能会包含多次请求和响应.例如你给10086打个电话,你就是客户端,而10086服务人员就是服务器 ...

  2. Activity中使用PagerAdapter实现切换代码

    主活动 public class ViewPagerManager extends AppCompatActivity { private ViewPager viewPager; @Override ...

  3. 深入理解Java的三大特性之多态

    世界上最美丽的东西,看不见也摸不着,要靠心灵去感受. ——海伦·凯勒 面向对象编程有三大特性:封装.继承.多态. 封装隐藏了类的内部实现机制,可以在不影响类使用的情况下改变类的内部结构,并保护数据.对 ...

  4. Linux命令(用户管理、组和时间管理)

    用户管理    Linux系统是一个多用用户的系统 用户分为三类:      超级用户(root)用户的id是0     伪用户     用户的id是1----499,虽然存在,但不能被登录      ...

  5. Innodb内存结构

      聚集索引与非聚集索引: 聚集索引:主键,有序,存储顺序与内存一致 非聚集索引:非主键,无序 聚集索引在叶子节点存储的是表中的数据 非聚集索引在叶子节点存储的是主键和索引列 使用非聚集索引查询出数据 ...

  6. xss练习,alf.nu/alert1,1-12

    觉得自己很菜,故找一些题来做,随便找了下.记一下通关攻略 https://alf.nu/alert1 第一关 题目:warmup function escape(s) { return '<sc ...

  7. 邻居子系统 之 状态定时器回调neigh_timer_handler

    概述 在分配邻居子系统之后,会设置定时器来处理那些需要定时器处理的状态,定时器回调函数为neigh_timer_handler:函数会根据状态机变换规则对状态进行切换,切换状态后,如果需要更新输出函数 ...

  8. cv常用名词缩写

    lr:learning rate roi:region of interest,可能包含目标的区域. wd:weight decay fps:frame per second,每秒几帧 fine tu ...

  9. RHEL 7.6系统安装配置图解教程

  10. vga转HDMI与hdmi转VGA区别