溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

OpenDDS - Windows下安裝過(guò)程(VS2015)

發(fā)布時(shí)間:2020-06-26 01:28:25 來(lái)源:網(wǎng)絡(luò) 閱讀:1178 作者:lyxxb 欄目:軟件技術(shù)

需要準(zhǔn)備:Visual Studio,并安裝Windows SDK,還需要安裝 ActivePerl

我的平臺(tái)是 VS2015 + OpenDDS-3.13.2

1.OpenDDS下載:

鏈接:http://opendds.org/downloads.html

建議順便下載官方文檔:http://download.objectcomputing.com/OpenDDS/OpenDDS-latest.pdf

如果文檔下載速度太慢可以百度網(wǎng)盤(pán)下載:https://pan.baidu.com/s/1fLYh2jA6B1rIAWNFOPtQ0Q

將根目錄添加進(jìn)系統(tǒng)環(huán)境變量中:
DDS_ROOT = G:\OpenDDS-3.13.2

2.Perl
OpenDDS是一款跨平臺(tái)的開(kāi)源軟件,考慮到不同用戶的平臺(tái)和開(kāi)發(fā)環(huán)境的需要,使用跨平臺(tái)語(yǔ)言Perl作為腳本語(yǔ)言。在perl官網(wǎng)上下載ActiveState Perl版本:https://www.activestate.com/products/activeperl/downloads/,選擇最新版下載。下載完成之后,直接安裝即可。
OpenDDS - Windows下安裝過(guò)程(VS2015)

安裝完成之后,cmd輸入perl -v進(jìn)行驗(yàn)證:
OpenDDS - Windows下安裝過(guò)程(VS2015)
出現(xiàn)以上提示,說(shuō)明安裝成功。

3.ACE+TAO下載:

鏈接:http://download.dre.vanderbilt.edu/

選擇?Latest ACE+TAO Micro Release?下面的就可以.

將下載好的壓縮文件解壓到對(duì)應(yīng)的文件目錄下,然后在系統(tǒng)中添加環(huán)境變量:
ACE_ROOT: C:\OpenDDS\ACE_wrappers

TAO_ROOT: C:\OpenDDS\ACE_wrappers\TAO

然后在環(huán)境變量Path中添加路徑:%ACE_ROOT%\lib;%ACE_ROOT%\bin

4.編譯ACE+TAO

當(dāng)ACE+TAO的環(huán)境配置好之后,在%ACE_ROOT%\ace目錄下新建一個(gè)名為config.h的文件,在文件中添加如下內(nèi)容:#include “ace/config-win32.h”,表示在win32環(huán)境下使用。
OpenDDS - Windows下安裝過(guò)程(VS2015)

分別進(jìn)入%ACE_ROOT%目錄、%ACEROOT%\TAO目錄,用Visual Studio打開(kāi)與VS版本匹配的ACE.sln、TAOACE.sln文件,例如VS2015就打開(kāi)TAO_ACE_vs2015.sln。進(jìn)入之后重定解決方案目標(biāo):項(xiàng)目 -?重定解決方案目標(biāo),然后點(diǎn)確定就行,等待自動(dòng)配置完成

然后編譯源碼。方法有兩種:第一種是直接在VS中選擇?生成 -?生成解決方案 ,第二種是啟動(dòng)VS的開(kāi)發(fā)人員命令行,定位到%ACE_ROOT%\TAO下,使用以下命令編譯:

msbuild TAO_ACE_vs2015.sln /p:Configuration=Debug;Platform=x64 /m:2
解釋下參數(shù):

Configuration=Debug代表debug編譯
Platform=x64代表強(qiáng)制編譯為64位版本,原因:如果需要使用Java進(jìn)行OpenDDS開(kāi)發(fā),考慮到目前絕大多數(shù)人都在使用64位版本的JDK,如果不將OpenDDS編譯為64位版,則無(wú)法進(jìn)行JNI調(diào)用
/m:2?代表使用兩個(gè)線程并行編譯,實(shí)測(cè)比起單線程能節(jié)省不止一半的時(shí)間,建議設(shè)置為和自己CPU數(shù)一致
耗時(shí)很長(zhǎng),等待完成即可

5.編譯OpenDDS
啟動(dòng)VS的開(kāi)發(fā)人員命令行,定位到G:\OpenDDS-3.13下,輸入 .\configure?命令(如果要開(kāi)啟java支持,需要使用 .\configure --java),等待命令執(zhí)行完畢

如果提示:

ERROR: Could not detect Visual C++ version, try running this script "."from the Visual Studio Command Prompt.Stopped

,請(qǐng)?jiān)赾onfigure文件中添加下面內(nèi)容到438行(根據(jù)自己使用的vs版本修改,我使用的是2015所以寫(xiě)vs2015或vc14):
$opts{'compiler_version'} = "vc14";

OpenDDS - Windows下安裝過(guò)程(VS2015)

此時(shí)程序自動(dòng)生成了DDS.sln文件和setenv.cmd文件,在命令行執(zhí)行setenv.cmd設(shè)置環(huán)境變量,然后打開(kāi)新生成的sln文件、重定項(xiàng)目目標(biāo),然后編譯源碼并等待操作完成

6.測(cè)試

OpenDDS自帶了很多實(shí)例,存放在%DDS_ROOT%\examples和%DDS_ROOT%\tests\DCPS下
隨便挑一個(gè)運(yùn)行里面的run_test.pl,能正常收發(fā)數(shù)據(jù)即可.

輸入指令perl run_test.pl

OpenDDS - Windows下安裝過(guò)程(VS2015)

運(yùn)行成功,如下圖所示:

OpenDDS - Windows下安裝過(guò)程(VS2015)

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI