正文
CMS (stands for C++ Messaging Service)类似于JMS API用于同Message Brokers通讯(例如Active MQ)。
Active MQ-CPP是客户端库。http://activemq.apache.org/cms/
准备开发环境
APR(Apache portable Run-time libraries,Apache可移植运行库)的目的如其名称一样,主要为上层的应用程序提供一个可以跨越多操作系统平台使用的底层支持接口库。 从http://apr.apache.org/ 下载apr-iconv包、apr-util包、apr包等三个包,并解压缩到 C:\\work\\apr\\ C:\\work\\apr-iconv\\ C:\\work\\apr-util\\
从http://sourceforge.net/apps/mediawiki/cppunit/index.php?title=Main_Page下载CppUnit包,并解压到 C:\\work\\CppUnit
从http://activemq.apache.org/cms/ 下载activemq-cpp-library,并解压到 C:\\work\\activemq-cpp-library
等以上三个目录(必须是在上面的路径中,否则会找不到工程依赖文件和依赖函数实现) 如果需要调试则所有都编译为Debug版本,否则都编译Release版本
每个过程编译出来的的lib和dll全部移到同一个文件夹,比如Debug移到D:\\libd,Release移到D:\\lib
第一步:编译apr包,无需依赖,直接编译即可 编译apr,生成apr-1.lib
编译libapr,生成libapr-1.lib和libapr-1.dll 第二步:编译apr-iconv包 编译apriconv,生成apriconv.lib
编译libapriconv,需要添加第一步生成的lib文件,生成libapriconv-1.lib和libapriconv-1.dll 第三步:编译apr-util包 编译aprutil,生成aprutil-1.lib 编译xml\\expat\\lib\\xml,生成xml.lib
编译libaprutil,需要添加前面所有的lib,生成libaprutil-1.lib和libaprutil-1.dll 第四步:编译CppUnit包
只需要编译cppunit或者cppunit_dll其中一个,前者为lib,后者为dll 第五步:编译activemq-cpp-library包
只需要编译activmq-cpp,需要添加 ..\\src\\main
c:\\work\\apr-iconv\\include c:\\work\\apr-util\\include c:\\work\\apr\\include
添加依赖库路径D:\\libd或者D:\\lib
添加依赖库ws2_32.lib libapr-1.lib libaprutil-1.lib 建议编译成dll版本,lib版本体积太大而且编译慢 生成activemq-cpp.lib和activemq-cpp.dll
至此前期所有工作都已经完成
开始编写自己的Activemq程序
首先需要搭建Activemq的服务器,从http://activemq.apache.org/下载最新版,解压运行bin目录下bat即可运行,运行需要JAVA环境
可以参考C:\\work\\activemq-cpp-library-3.6.0\\src\\examples\\main.cpp 新建空工程,将main.cpp添加到工程 添加
C:\\work\\apr\\include C:\\work\\apr-iconv\\include C:\\work\\apr-util\\include C:\\work\\cppunit\\include
C:\\work\\activemq-cpp-library\\src\\main 添加依赖库路径D:\\libd或者D:\\lib
添加依赖库ws2_32.lib activemq-cppd.lib libapr-1.lib libaprutil-1.lib 编译即可
因篇幅问题不能全部显示,请点此查看更多更全内容