Apache QPID windows vs2010編譯

來源:互聯網
上載者:User

標籤:windows   vs2010   apache qpid   

這幾天使用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開源出來的項目,具體的效果看官網上應該不錯,需以驗證。


相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.