Apache QPID windows vs2010编译

http://www.th7.cn/system/win/201406/60608.shtml


Apache QPID windows vs2010编译

2014-06-19 07:32:22 CSDN- supermingxing- 点击数:27
id="cproIframe_u848856" width="336" height="280" src="http://pos.baidu.com/acom?adn=3&at=103&aurl=&cad=1&ccd=24&cec=UTF-8&cfv=12&ch=0&col=zh-CN&conOP=0&cpa=1&dai=2&dis=0&ltr=http%3A%2F%2Fcn.bing.com%2Fsearch%3Fq%3Dqpid%2Bwindows%26qs%3DAS%26pq%3Dqpid%2Bwind%26sc%3D3-9%26sp%3D1%26cvid%3D1c2f5652c78d461fbe9e5efd1a625331%26FORM%3DQBRE&ltu=http%3A%2F%2Fwww.th7.cn%2Fsystem%2Fwin%2F201406%2F60608.shtml&lunum=6&n=smileking_cpr&pcs=1024x597&pis=10000x10000&ps=350x72&psr=1024x768&pss=1024x351&qn=15f035bb85448bda&rad=&rsi0=336&rsi1=280&rsi5=4&rss0=%23F5F8FD&rss1=%23F5F8FD&rss2=%23000000&rss3=%23444444&rss4=%23444444&rss5=&rss6=%23444444&rss7=&scale=&skin=&td_id=848856&tn=text_default_336_280&tpr=1411691181714&ts=1&xuanting=0&dtm=BAIDU_DUP2_SETJSONADSLOT&dc=2&di=u848856" align="center,center" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" allowtransparency="true">

这几天使用apache qpid,网上关于在windows下的编译过程几乎没有,自己编译时候也废了点功夫,现记录以飨他人。

首先,可以确定的是qpid确实支持windows平台的。但是编译过程类似与linux编译过程,需要再次生成一次工程才能形成windows下的sln文件

第一步:准备环境,需要安装的软件如下:

1.ruby

2.python

3.cmake

4.boost

1.2项是用来再次生成工程用的,以后并不使用

3项是必要的,qpid是个cmake工程,符合发展趋势的

4项是编译必要的函数库,也建议devs都能使用,boost编译过程网上一大把,很容易编译

第二步:解压出qpid-cpp-0.28文件夹,注意,应当形成这样的文件夹树:

---任意文件夹名,例如qpid-cpp

-------qpid-cpp-0.28

-------cpp//自建的文件夹,必须要这个名字

之后把qpid-cpp-0.28下的所有东西复制到cpp文件夹下。

第三步:win+r  powershell,把qpid-cpp-0.28文件夹下的bld-winsdk.ps1文件拖进powershell,并加上参数:boost路径+空格+boost版本,例如1.53.0+空格+vs2010之类的+编译版本,x86或者x64,具体如下


之后会出现大堆的编译信息,不用管,最后会在qpid-cpp文件夹同层析目录树生成一个文件夹,名叫:

编译版本,x86或者x64+vs2010之类的,例如x86-vs2010,该目录下就是sln文件了,如果设置了denev的路径的话,就会自动编译的

文件夹下的文件示例:



编译中可能问题:

1.个人编译boost后库路径根据个人喜好可能导致cmake找不到boost库位置,编译中可能提示:

这个错误我按照提示设置后好像没有效果,我采用了另一种办法,使用ue打开cpp/src/CMakeLists.txt 288行,

find_package(Boost ${Boost_minversion} REQUIRED COMPONENTS ${Boost_components})
改成

set(Boost_LIBRARY_DIRS "F:/BOOST/lib")#find_package(Boost ${Boost_minversion} REQUIRED COMPONENTS ${Boost_components})

当然,具体的路径要看个人爱好修改,这样修改后就没问题了。




另外,跟这个相关的openmama项目,是部分有名的mq的一个高层抽象,用来屏蔽不用mq的函数差异,结合起来使用应该更加好一下把。

openmama是nyse开源出来的项目,具体的效果看官网上应该不错,需以验证。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值