搭建ACE及TAO開發(fā)環(huán)境的快速方法 (Windows篇)

搭建ACE及TAO開發(fā)環(huán)境的快速方法 (Windows篇)

Stone

摘要

本文介紹如何在Windows下快速搭建ACE及TAO的開發(fā)環(huán)境。關(guān)鍵步驟為:

獲得ACE及TAO源代碼

準(zhǔn)備預(yù)備環(huán)境

編譯ACE及TAO庫

驗證及使用庫

簡單介紹多平臺構(gòu)建工具mwc的用法

簡介

本文暫不過多介紹細(xì)節(jié)兆沙,只上干貨硝岗。欲知詳情,請見官網(wǎng):

ACE 的官網(wǎng):http://www.cs.wustl.edu/~schmidt/ACE.html

TAO 的官網(wǎng):http://www.cs.wustl.edu/~schmidt/TAO.html

演示環(huán)境

* Windows 7

* Visual Studio 2015 社區(qū)版

* ACE 6.4.4

* mwc 4.1.25 (in ACE )

* Active Perl 5.22.1

* git 2.9.0 windows.1

獲取ACE及TAO源代碼

通郴市停可以從官網(wǎng)或github獲取源碼诬烹。二者略有差異。

官網(wǎng)下載站點為:http://download.dre.vanderbilt.edu

官網(wǎng)把源代碼分為:

ACE+TAO (內(nèi)含MPC)

CIAO (本文不討論)

DAnCE (本文不討論)

按版本犀被,分為

Latest Micro Release (具有最近小更新的版本)椅您, 當(dāng)前為 x.4.4,其中 ACE為6.4.4,TAO為2.4.4

Latest Minor Release (最新的次版本更新)寡键,當(dāng)前為x.4.0掀泳。

按是否含用構(gòu)建文件(Makefile,sln等工程文件),分為:

Full

Sources Only (建議用僅源代碼,因為工程文件我們可以通過mwc工具重新生成)

按下載方式西轩,分為

HTTP

FTP

按下載方式员舵,分為

tar.gz

tar.bz2 (更小,Linux用戶推薦)

zip (Windows環(huán)境下推薦)

從官方網(wǎng)站獲取源碼

本文建議下載的鏈接包為

http://download.dre.vanderbilt.edu/previous_versions/ACE+TAO-src-6.4.4.zip

然后請把源代碼解壓至 dre/目錄下藕畔,目錄結(jié)構(gòu)如下:

C:\DRE

└─ACE_wrappers

├─ace

│? ├─Compression

│? │? └─rle

│? ├─ETCL

│? ├─FlReactor

│? ├─FoxReactor

│? ├─Monitor_Control

│? ├─os_include

│? │? ├─arpa

│? │? ├─net

│? │? ├─netinet

│? │? └─sys

│? ├─QoS

│? ├─QtReactor

│? ├─SSL

│? ├─TkReactor

│? ├─XML_Utils

│? │? ├─XMLSchema

│? │? └─XSCRT

│? └─XtReactor

├─ACEXML

...

(下略)

從github獲取源碼

如果從github上抓取源代碼马僻,需要分別抓兩個倉庫

MPC

ACE+TAO

mkdir dre

cd dre

git clone -b master --depth 1 https://github.com/DOCGroup/ACE_TAO.git

git clone -b master --depth 2 https://github.com/DOCGroup/MPC.git

準(zhǔn)備預(yù)備環(huán)境

Windows 7 (本文采用的環(huán)境,Windows其它平臺也支持)

Visual Studio 2015 (本文采用的是社區(qū)版)

安裝Active Perl 本文采用的是5.22.1注服,官網(wǎng)如下:https://www.activestate.com/activeperl

安裝git客戶端

編譯ACE+TAO庫

編譯步驟可分為4步:

設(shè)置環(huán)境變量

創(chuàng)建config.h

生成工程文件 (以上三步不分先后順序)

用Visual Studio 打開工程文件,并全編譯

設(shè)置環(huán)境變量

官網(wǎng)源代碼不必設(shè)置MPC_ROOT環(huán)境變量

set ACE_ROOT=c:\dre\ACE_wrappers

set TAO_ROOT=%ACE_ROOT%\TAO

set PATH=%PATH%;%ACE_ROOT%\bin;%ACE_ROOT%\lib

如果是從github抓的代碼韭邓,需要設(shè)置MPC_ROOT

set ACE_ROOT=c:\dre\ACE_wrappers

set TAO_ROOT=c:\dre\TAO

set MPC_ROOT=c:\dre\MPC

set PATH=%PATH%;%ACE_ROOT%\bin;%ACE_ROOT%\lib

Windows下設(shè)置環(huán)境變量正確姿勢請參考:

http://jingyan.baidu.com/article/d5a880eb6aca7213f047cc6c.html

如果編譯時出現(xiàn)什么幺蛾子,多半設(shè)置環(huán)境變量不正確或未生效溶弟, 驗證環(huán)境變量是否成效女淑,請重新打開dos shell,執(zhí)行以下指令:

echo %ACE_ROOT%

echo %TAO_ROOT%

echo %PATH%

cd %TAO_ROOT%

創(chuàng)建 config.h

在%ACE_ROOT%\ace目錄下辜御,新建config.h

cd %ACE_ROOT%\ace

config.h文件內(nèi)容如下

#include "ace/config-win32.h"

重新生成

進入到%TAO_ROOT%目錄下鸭你,執(zhí)行以下指令:

cd %TAO_ROOT%

mwc.pl -type vc14 --name_modifies "*_vc14" TAO_ACE.wmc

大概兩分鐘左右時間,mwc會為大約220個工程創(chuàng)建vcxproj文件以及一個TAO_ACE.sln文件擒权。 這220個工程中并沒有包含源代碼中的示例工程和測試工程袱巨。

編譯

用Visual Studio打開上一步生成的TAO_ACE.sln文件,全編譯碳抄,將在 %ACE_ROOT%\lib目錄中生成庫文件愉老。 編譯時可以選擇Debug,或Release方式編譯,還可以選擇是win32或x64平臺纳鼎。學(xué)習(xí)目上的建議編譯為x64的Debug版俺夕,生產(chǎn)環(huán)境下裳凸,建方編譯為x64的Release版。

驗證是否編譯成功

源代碼取自%TAO_ROOT%\test\Hello

https://github.com/stonejiang208/ace-win.git

用mwc生成Hello.sln及vcxporoj文件:

cd ace-win32\src\Hello

mwc.pl -type vc14

用Visual Studio編譯Hello.sln劝贸,可得到server.exe和client.exe姨谷。

運行 run_test.pl,如得到

C:\self-media\ace-win\src\Hello>run_test.pl

(192460|192464) - string returned

(192440|192444) server - event loop finished

則表示環(huán)境搭建成功映九,您可以快樂的探索ACE及TAO的世界了梦湘。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市件甥,隨后出現(xiàn)的幾起案子捌议,更是在濱河造成了極大的恐慌,老刑警劉巖引有,帶你破解...
    沈念sama閱讀 210,978評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件瓣颅,死亡現(xiàn)場離奇詭異,居然都是意外死亡譬正,警方通過查閱死者的電腦和手機宫补,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,954評論 2 384
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來曾我,“玉大人粉怕,你說我怎么就攤上這事∈愠玻” “怎么了贫贝?”我有些...
    開封第一講書人閱讀 156,623評論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀的道長蛉谜。 經(jīng)常有香客問我稚晚,道長,這世上最難降的妖魔是什么型诚? 我笑而不...
    開封第一講書人閱讀 56,324評論 1 282
  • 正文 為了忘掉前任蜈彼,我火速辦了婚禮,結(jié)果婚禮上俺驶,老公的妹妹穿的比我還像新娘。我一直安慰自己棍辕,他們只是感情好暮现,可當(dāng)我...
    茶點故事閱讀 65,390評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著楚昭,像睡著了一般栖袋。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上抚太,一...
    開封第一講書人閱讀 49,741評論 1 289
  • 那天塘幅,我揣著相機與錄音昔案,去河邊找鬼。 笑死电媳,一個胖子當(dāng)著我的面吹牛踏揣,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播匾乓,決...
    沈念sama閱讀 38,892評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼捞稿,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了拼缝?” 一聲冷哼從身側(cè)響起娱局,我...
    開封第一講書人閱讀 37,655評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎咧七,沒想到半個月后衰齐,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,104評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡继阻,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年耻涛,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片穴翩。...
    茶點故事閱讀 38,569評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡犬第,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出芒帕,到底是詐尸還是另有隱情歉嗓,我是刑警寧澤,帶...
    沈念sama閱讀 34,254評論 4 328
  • 正文 年R本政府宣布背蟆,位于F島的核電站鉴分,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏带膀。R本人自食惡果不足惜志珍,卻給世界環(huán)境...
    茶點故事閱讀 39,834評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望垛叨。 院中可真熱鬧伦糯,春花似錦、人聲如沸嗽元。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,725評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽剂癌。三九已至淤翔,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間佩谷,已是汗流浹背旁壮。 一陣腳步聲響...
    開封第一講書人閱讀 31,950評論 1 264
  • 我被黑心中介騙來泰國打工监嗜, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人抡谐。 一個月前我還...
    沈念sama閱讀 46,260評論 2 360
  • 正文 我出身青樓裁奇,卻偏偏與公主長得像,于是被迫代替她去往敵國和親童叠。 傳聞我的和親對象是個殘疾皇子框喳,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,446評論 2 348

推薦閱讀更多精彩內(nèi)容