Linux/ visual studio 编译使用Poco
1. 下载源码包。在POCO的官方网站下载最新的POCO源码包。http://pocoproject.org/download/index.html
2.解压源码包。下载的文件名是“poco-1.6.0.zip”,将其解压在F:\POCO目录下。
3.编译库文件。开始菜单–Microsoft Visual Studio 2012–Visual Studio Tools—Open Visual Studio 2012 Command Prompt 打开命令行窗口。cd命令进入poco根目录,F:\POCO\poco-1.6.0。输入命令:buildwin 120 回车。
4.等待编译完成,花费了一个多小时。
5.可将各个不同模块下的include目录放在一起方便随后程序使用,像我这样
然后本地创建lib目录,将用到的lib和dll放入lib目录中,
比如
然后添加include文件,
添加lib目录
可以修改生产的可执行文件位置和名字
如果上面的修改了,那么debug是用到的命令也要修改
另外,指定了库的路径后,还要指定lib库的名字:
当然,指定lib文件名字,除了通过输入 -》附加依赖项之外,还可以在程序内部指定:
#ifdef _DEBUG #pragma comment(lib, "PocoFoundationd.lib") #pragma comment(lib, "PocoNetd.lib") #pragma comment(lib, "libprotobufd.lib") #else #pragma comment(lib, "PocoFoundation.lib") #pragma comment(lib, "PocoNet.lib") #pragma comment(lib, "libprotobuf.lib") #endif
Linux 编译
默认,make即可,在lib目录下生产so文件
如果想生产静态文件,configure --statis,然后make即可。
另外,linux下使用poco库是,指定.a 静态库的顺序有一来,比如 4 LDFLAGS = -L$(LIBS_PATH) -lSchedSDK -lPocoNet -lPocoFoundation
PocoNet 依赖 PocoFoundation,所以lPocoFoundation 要放在PocoNet后面。
换句话说,如果 a依赖b,b依赖c
那么引用库的顺序应该是 c b a, 越基础的越在后面