Poco介绍及编译
2017-02-05 21:36
211 查看
转自:http://www.cnblogs.com/fuland/p/3768705.html
一系列C++类库,类似Java类库,.Net框架,Apple的Cocoa;
侧重于互联网时代的网络应用程序
使用高效的,现代的标准ANSI/ISO C++,并基于STL
高可移值性,并可在多个平台下可用
开源,并使用Boost Software License发布
不管是否商用,都完全免费
Cache框架
基于OpenSSL的密码系统
日期,时间类库
事件和通知框架
FTP客户端
跨平台的文件系统类库
HTML表单类库
HTTP客户端和服务端(支持SSL),C++ 服务器页面编译器
日志框架
多线程框架(线程池,活动对象,工作队列等)
POP3客户端类库
跨平台,一次编写,多平台编译和运行
进程管理和进程间通信类库
反射框架
基于PCRE的正则表达式
SMTP客户端类库
数据库访问类库(SQLite,MySQL, ODBC)
支持SSL/TLS,基于OpenSSL
动态类库加载
先进的内存和指针管理(Buffer, Pool)
Socket类库
网络数据流类库,支持Base64,HexBinary编解码,压缩等等
字符串格式化和其它字符串工具类库
TCP服务器框架(多线程)
文本编码和转换
Tuples
URI支持
支持UTF8和Unicode编码
UUID生成器
XML生成和解析器
Zip文件操作类库
Poco帮助你创建跨平台的应用程序(一次编写,多平台编译和运行)
模块化和可扩展,可应用于嵌入式到企业级程序
提供全面,易懂的编程接口
使用C++语言,快速且高效
Poco崇尚简易
在设计,代码风格和文档上保持一致
Poco强调代码质量,包括可读性,综合性,一致性,编码风格和可测试性
Poco使得C++编程更加容易
高度关注测试
注重实用性
基于现有的,可靠的组件开发
February 2005: First release on SourceForge
(Release 0.91 under Sleepycat license)
May 2005: First contributions by Aleksandar Fabijanic
January 2006: Release 1.0
March 2006: Release 1.1
July 2006: Moved to Boost license, POCO Community Website
August 2006: Release 1.2
May 2007: Release 1.3
July 2010: Stable Release 1.3.7,
about 20 contributors, used in 100s of projects
Linux
Mac OS X
HP-UX, Solaris, AIX*
Embedded Linux (uClibc, glibc)
iOS
Windows Embedded CE
QNX
工业自动化和工业设备
流量控制系统
健康系统
测量,数据收集和测试系统
消费电子产品和家庭自动化产品
测量
航空交通管理系统
VoIP
票务和入口控制系统
包装应用程序
易学易使用,以及相当多的示例代码和良好的文档
原生的C++代码,性能优秀,低内存占用
平台无关,一处编写,跨平台编译和运行
大多数情况下,可以开发机上完成开发和调试工作
可以非常容易的迁移到新平台
以 vs2008 为例:
Poco 根目录下有
build_vs90.cmd
buildwin.cmd
这两个批处理文件, 我们得修改一下它们
把build_vs90.cmd 修改为以下内容:
@echo off
if defined VS90COMNTOOLS (
call "%VS90COMNTOOLS%\vsvars32.bat")
buildwin 90 build all both Win32 samples
如果你不需要 NetSSL_OpenSSL 和 MySQL
,此时保存后就双击它就行了. 它会自动编译好各种库.
如果你要NetSSL_OpenSSL 这个库 你必须:
在buildwin.cmd 中的38行 设置 openssl 的路径, 它默认在C:\OpenSSL. 可以修改为 你的路径.
如果你要 Poco 中的 MySQL 库 你还得安装. Mysql
关于 OpenSSL 和 Mysql 库的的安装包
OpenSSL:
在这里下载一个安装包
http://slproweb.com/products/Win32OpenSSL.html
注意Light 是没有开发包的. 有x64 和x32 之分, x32 在64位windows下也可以完全正常工作. 如果要编译poco的话 我建议用x32.
不要下载d结尾的,d结尾的缺少部分dll,下载k结尾的例如Win32OpenSSL-1_0_2k.exe
mysql:
http://www.mysql.com/downloads/connector/c/
这个也有x32 和x64之分.一般下载x32的就可以了.
关于x32和x64 :
Poco 默认是x32的, 所以我们的 OpensSSL 和 Mysql 也必须使用 x32的.
http://blog.csdn.net/wangxvfeng101/article/details/47002375
Poco C++库是:
一系列C++类库,类似Java类库,.Net框架,Apple的Cocoa;侧重于互联网时代的网络应用程序
使用高效的,现代的标准ANSI/ISO C++,并基于STL
高可移值性,并可在多个平台下可用
开源,并使用Boost Software License发布
不管是否商用,都完全免费
Poco库概览
特性:
DynamicAny与Any类Cache框架
基于OpenSSL的密码系统
日期,时间类库
事件和通知框架
FTP客户端
跨平台的文件系统类库
HTML表单类库
HTTP客户端和服务端(支持SSL),C++ 服务器页面编译器
日志框架
多线程框架(线程池,活动对象,工作队列等)
POP3客户端类库
跨平台,一次编写,多平台编译和运行
进程管理和进程间通信类库
反射框架
基于PCRE的正则表达式
SMTP客户端类库
数据库访问类库(SQLite,MySQL, ODBC)
支持SSL/TLS,基于OpenSSL
动态类库加载
先进的内存和指针管理(Buffer, Pool)
Socket类库
网络数据流类库,支持Base64,HexBinary编解码,压缩等等
字符串格式化和其它字符串工具类库
TCP服务器框架(多线程)
文本编码和转换
Tuples
URI支持
支持UTF8和Unicode编码
UUID生成器
XML生成和解析器
Zip文件操作类库
Poco的使命
Poco是一个强大的类库,并易于构建自己的应用程序Poco帮助你创建跨平台的应用程序(一次编写,多平台编译和运行)
模块化和可扩展,可应用于嵌入式到企业级程序
提供全面,易懂的编程接口
使用C++语言,快速且高效
Poco崇尚简易
在设计,代码风格和文档上保持一致
Poco强调代码质量,包括可读性,综合性,一致性,编码风格和可测试性
Poco使得C++编程更加容易
指导方针
高度关注代码质量,编码风格,一致性,可读性高度关注测试
注重实用性
基于现有的,可靠的组件开发
版本历史
Summer 2004: Günter Obiltschnig started developmentFebruary 2005: First release on SourceForge
(Release 0.91 under Sleepycat license)
May 2005: First contributions by Aleksandar Fabijanic
January 2006: Release 1.0
March 2006: Release 1.1
July 2006: Moved to Boost license, POCO Community Website
August 2006: Release 1.2
May 2007: Release 1.3
July 2010: Stable Release 1.3.7,
about 20 contributors, used in 100s of projects
支持平台
Microsoft WindowsLinux
Mac OS X
HP-UX, Solaris, AIX*
Embedded Linux (uClibc, glibc)
iOS
Windows Embedded CE
QNX
Poco应用场景
创建自动化的中间件和设备工业自动化和工业设备
流量控制系统
健康系统
测量,数据收集和测试系统
消费电子产品和家庭自动化产品
测量
航空交通管理系统
VoIP
票务和入口控制系统
包装应用程序
Poco的优势
全面的,完整的C++框架,可减少开发工作,快速让产品走向市场易学易使用,以及相当多的示例代码和良好的文档
原生的C++代码,性能优秀,低内存占用
平台无关,一处编写,跨平台编译和运行
大多数情况下,可以开发机上完成开发和调试工作
可以非常容易的迁移到新平台
编译
以 vs2008 为例:Poco 根目录下有
build_vs90.cmd
buildwin.cmd
这两个批处理文件, 我们得修改一下它们
把build_vs90.cmd 修改为以下内容:
@echo off
if defined VS90COMNTOOLS (
call "%VS90COMNTOOLS%\vsvars32.bat")
buildwin 90 build all both Win32 samples
如果你不需要 NetSSL_OpenSSL 和 MySQL
,此时保存后就双击它就行了. 它会自动编译好各种库.
如果你要NetSSL_OpenSSL 这个库 你必须:
在buildwin.cmd 中的38行 设置 openssl 的路径, 它默认在C:\OpenSSL. 可以修改为 你的路径.
如果你要 Poco 中的 MySQL 库 你还得安装. Mysql
关于 OpenSSL 和 Mysql 库的的安装包
OpenSSL:
在这里下载一个安装包
http://slproweb.com/products/Win32OpenSSL.html
注意Light 是没有开发包的. 有x64 和x32 之分, x32 在64位windows下也可以完全正常工作. 如果要编译poco的话 我建议用x32.
不要下载d结尾的,d结尾的缺少部分dll,下载k结尾的例如Win32OpenSSL-1_0_2k.exe
mysql:
http://www.mysql.com/downloads/connector/c/
这个也有x32 和x64之分.一般下载x32的就可以了.
关于x32和x64 :
Poco 默认是x32的, 所以我们的 OpensSSL 和 Mysql 也必须使用 x32的.
http://blog.csdn.net/wangxvfeng101/article/details/47002375
相关文章推荐
- DirectX 9高层着色语言介绍1——引言、简单例子、汇编语言和编译对象
- DirectX 9高层着色语言介绍1 —— 引言、简单例子、汇编语言和编译对象
- VC++6.0编译环境介绍
- 在WinCE5.0和WinCE6.0下,编译选项介绍
- Microsoft Visual C++ 2008 Express Edition 编译poco c++库
- java编译执行与jvm介绍
- 如何编译PHP源代码(介绍Zend Encode的安装方法)
- 在WinCE5.0和WinCE6.0下,编译选项介绍
- WinCE5.0编译选项介绍
- Linux服务器内核编译基础--几个重要的RedHat Linux内核文件介绍
- VC.net 开发环境介绍系列三(编译部分)
- VC++6.0编译环境介绍
- Eclipse反编译插件Jadclipse介绍
- 在WinCE5.0和WinCE6.0下,编译选项介绍
- Dev-Cpp/Mingw32 开发环境介绍(1)安装,新建项目与编译
- java编译执行与jvm介绍
- Eclipse反编译插件Jadclipse介绍
- 本文介绍在VC 6.0中编译和使用OpenSSL的过程
- VC++6.0编译环境介绍
- VC++6.0编译环境介绍