随笔 - 298  文章 - 377  trackbacks - 0
<2018年1月>
31123456
78910111213
14151617181920
21222324252627
28293031123
45678910

常用链接

留言簿(34)

随笔分类

随笔档案

文章档案

相册

收藏夹

搜索

  •  

最新评论

阅读排行榜

评论排行榜

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 development
  • 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

支持平台

  • Microsoft Windows
  • Linux
  • 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的.

posted on 2018-01-16 23:05 聂文龙 阅读(2100) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理