OpenDDS环境搭建-Windows 10

安装环境:windows 10 64位
已安装 :Visual Stdio 2017、Visual Stdio 2019
需安装:Perl、ACE+TAO、OpenDDS

到这个网站下载微软的软件很方便:https://msdn.itellyou.cn/
ActivePerl 下载地址 https://www.activestate.com/products/perl/downloads/
ACE+TAO 下载地址 https://download.dre.vanderbilt.edu/previous_versions/
OpenDDS 下载地址 https://opendds.org/
官方文档:
http://download.objectcomputing.com/OpenDDS/OpenDDS-latest.pdf
对应版本:
ActivePerl-5.28.msi
ACE+TAO-6.5.12.zip
OpenDDS-3.14.zip
这些版本对应很重要,我做的时候有一次最后编译OpenDDS的时候提示ACE+TAO的版本太低了,导致重新编译。(我已经编译了很多不同的版本了)


第0步:安装Visual Studio 2017,并安装Windows SDK

(版本号的对应,对后续工程编译很重要)

本人不了解VS,看网上基本上都选了C++桌面开发和Windows通用开发,还有右侧的SDK。

第一步:安装Perl

ActivePerl的安装一路默认即可,这里就不赘述
perl下载地址:https://www.activestate.com/activeperl/downloads
1 选择windows下64位对应安装包
2 解压
3 直接安装(安装时默认勾选添加到环境变量,不用取消)
4 验证Perl:
命令行输入: perl –v
打印perl版本信息表明安装成功

第二步:安装ACE+TAO

安装前的准备工作:
下载地址:http://download.dre.vanderbilt.edu/
选择 第三行 full 版本 进行下载,然后解压完成后会在指定目录下生成 ACE_wrappers 文件夹,该文件夹即我们需要的。

0.解压安装包.

1.设置环境变量


1)系统变量

ACE_ROOT F:\J18-ZaiJian\ACE_wrappers
TAO_ROOT %ACE_ROOT%\TAO
MPC_ROOT %ACE_ROOT%\MPC
DDS_ROOT F:\J18-ZaiJian\OpenDDS-3.14
LD_LIBRARY_PATH %DDS_ROOT%\lib
PERL5LIB %DDS_ROOT%\bin\PerlDDS

2)Path变量

在Path中添加:中添加:
%ACE_ROOT%\lib
%ACE_ROOT%\bin
%DDS_ROOT%\lib
%DDS_ROOT%\bin

3)可以检查下环境变量是否全部设置好了.

命令行执行:%DDS_ROOT%\setenv.cmd //设置并显示所有的环境变量配置


环境变量设置为下面路径大体如下:
:: OpenDDS configure script: configure
set ACE_ROOT=F:\J18-ZaiJian\ACE_wrappers
set MPC_ROOT=F:\J18-ZaiJian\ACE_wrappers\MPC
set PATH=%PATH%;F:\J18-ZaiJian\ACE_wrappers\bin;F:\J18-ZaiJian\OpenDDS-3.14\bin;F:\J18-ZaiJian\ACE_wrappers\lib;F:\J18-ZaiJian\OpenDDS-3.14\lib
set TAO_ROOT=F:\J18-ZaiJian\ACE_wrappers\TAO
set DANCE_ROOT=unused
set CIAO_ROOT=unused
set DDS_ROOT=F:\J18-ZaiJian\OpenDDS-3.14

第三步:安装ACE+TAO

为什么要安装ACE+TAO?------------------------------------------
ACE 全称 ADAPTIVE Communication Environment(自适应的网络通讯环境),是一个面向对象、非常优秀的用来构建高性能、跨平台的网络应用开发的工具包,
它实现了通信软件的基本设计模式。TAO是基于ACE的对CORBA的一种实现。
简单的说:OpenDDS基于ACE+TAO。

0.打开VS2017的开发人员命令提示符,大致在菜单的如下位置:

a)顺便了解:工程文件 和 VS版本 对应关系;

b)再次确定是否已经完成设置环境变量(系统变量):
ACE_ROOT 值 F:\J18-ZaiJian\ACE_wrappers
TAO_ROOT 值 %ACE_ROOT%\TAO
Path中添加: %ACE_ROOT%\lib; %ACE_ROOT%\bin
在F:\J18-ZaiJian\ACE_wrappers\ace,新建一个文件config.h,并添加内容:

#include "ace/config-win32.h"

1.编译ACE

进入到%ACE_ROOT%目录下,可以看到有几个类似于ACE_vs2017.sln的文件,因为我们安装的是VS2017,所以我们执行的目标文件是:ACE_vs2017.sln
打开VS2017的开发人员命令提示符执行:

msbuild ACE_vs2017.sln /p:Configuration=Debug;Platform=x64 /m:2

参数:
Configuration=Debug代表Debug编译,Configuration=Release代表Release编译;
Platform=x64代表强制编译为64位版本;
/m:2 代表使用两个线程并行编译,这个数越大编译的越快.我建议这个数比CPU核数少一个比较好。当然如果超过CPU核数是没有意义


**

两种方法编译ACE( 编译时长大概为半个小时或更久 )

**

法1:如下图ACE_wrappers目录下会有许多VS工程目录,由VS打开对应版本的.sln文件(双击文件),开始编译;
法2:利用 VS命令行进行编译

命令:msbuild ACE_vs2017.sln /p:Configuration=Debug /p:platform=x64 /maxcpucount:8 > build_ace_debug.log

注意 替换命令中 ACE_vs2017.sln 选项;编译过程无任何提示,完成后会在目录下生成 build_ace_debug.log 日志文件,一般不会产生错误。

2.编译TAO( 编译时长大概为一个小时或更久 )
继续使用刚才命令行,切换到 F:\J18-ZaiJian\ACE_wrappers\TAO 目录下,可以看到有几个类似于TAO_ACE_vs2017.sln的文件,编译方法同上,下面是使用命令行编译TAO的方法:
命令:msbuild TAO_ACE_vs2017.sln /p:Configuration=Debug /p:platform=x64 /maxcpucount:8 > build_tao_debug.log

编译过程无任何提示,完成后会在目录下生成 build_tao_debug.log 日志文件,一般不会产生错误。
精简命令:msbuild TAO_ACE_vs2017.sln /p:Configuration=Debug;Platform=x64 /m:2

这里面的Configuration、Platform必须和编译ACE_vs2017.sln的一致。

**

第四步:安装OpenDDS

**
下载地址:http://opendds.org/
1.下载最新版本
解压到 F:\J18-ZaiJian\OpenDDS-3.14

2.再次确认已经添加环境变量(系统变量)
添加 DDS_ROOT 值 F:\J18-ZaiJian\OpenDDS-3.14
Path 中添加 %DDS_ROOT%\lib;%DDS_ROOT%\bin

3.使用vs开发者命令行(上面使用的命令行工具),切换到F:\J18-ZaiJian\OpenDDS-3.14文件夹,
命令:cd %dds_root%
//此命令也可换成cd F:\J18-ZaiJian\OpenDDS-3.14

命令:perl configure

4.这里也许会出现错误,提示VS版本不对,按照提示找到对应文件(configure.sh文件)对应行修改即可[工程文件与VS版本对应见上表]
1)找到如下内容:

$opts{'compiler_version'} = $platforminfo{'win32'}->{'cl_versions'}->{$ver};

2)因为我们使用的是vs2017,所以将该内容替换成:

$opts{'compiler_version'} = "vs2017";

5.修改完成以后,仍然使用VS2017的开发人员命令提示符,进入%DDS_ROOT%目录,再次执行:
命令: perl configure

执行后成功之后会在当前目录下生成了DDS_no_tests.sln(即VS工程文件)和setenv.cmd两个文件.
6.在命令行执行setenv.cmd设置环境变量。

./setenv.cmd

7.两种方式进行最后一步编译:
a)第一种,继续输入命令 进行编译:

msbuild DDS_no_tests.sln /p:Configuration=Debug /p:platform=x64 /maxcpucount:8 > build_dds_debug.log

编译时长大概一个小时或更久,完成后会在目录下生成 build_dds_debug.log 日志文件,一般不会产生错误。
b)第二种,双击DDS_no_tests.sln直接用vs2017打开进行编译。
注意vs编译前,记得配置一下vs2017.

PS:上述这个图只是举个例子,不是本项目。用来帮助理解提示我的VS2017傻瓜操作:

在1处右键打开属性,配置属性 > VC++目录 > 常规 > 包含目录中添加F:\J18-ZaiJian\OpenDDS-3.14F:\J18-ZaiJian\ACE_wrappersF:\J18-ZaiJian\ACE_wrappers\TAO
在5处选择Debug或Release;
在6处选择平台位数;
在7处执行解决方案目标;
在8处生成解决方案或重新生成解决方案,即开始编译。

8.[特别注意]当时为了编译能够成功,我做了如下的傻瓜操作,希望能给你帮助.

1)双击DDS_no_tests.sln即可用vs2017打开,会发现 vs2017对应的解决方案DDS_no_tests.sln有31个项目.
2)点击每一个项目名称,右键打开属性,配置属性 > VC++目录 > 常规 > 包含目录中添加F:\J18-ZaiJian\OpenDDS-3.14F:\J18-ZaiJian\ACE_wrappersF:\J18-ZaiJian\ACE_wrappers\TAO
3)vs2017点击项目(p)\重定向项目\选择windows SDK版本:10.0.17763.0\确认\
4)vs2017点击生成(B)\生成解决方案
5)命令执行验证一下vs2017编译怎么样了:
命令:msbuild DDS_no_tests.sln /p:Configuration=Debug;Platform=x64 /m:2

## 9.验证

切换到 %DDS_ROOT%\example\DCPS\Messenger_Imr 目录
运行:

perl run_test.pl

如果提示 test PASSED 则表示成功,
OPenDDS环境至此搭建完成。

OpenDDS环境搭建-Windows 10相关推荐

  1. ZED2i相机使用环境搭建(Windows 环境下 C#API)

    ZED2i相机使用环境搭建(Windows 环境下 C#API) 本文记录了ZED2i相机在Windows 环境下使用 C#API环境搭建过程,以及出现"无法加载 DLL"sl_z ...

  2. Selenium环境搭建-Windows

    Selenium环境搭建-Windows 一.Python安装 略,由于sleenium4.1.0需要python3.7以上方可支持,请注意自己的python版本. 二.Selenium安装 方式一: ...

  3. Java开发环境搭建:Windows

    Java开发环境搭建:Windows JDK下载安装 JDK下载 设置环境变量 测试是否安装成功 开发工具下载安装:Idea Idea下载 Idea安装 Idea开发JAVA 推荐一波 JDK下载安装 ...

  4. 从零开始,搭建Windows 10+Ubuntu 18.04双系统及Anaconda3+CUDA10.1+cuDNN7.6+Tensorflow2.1等开发环境

    硬件配置:处理器I7,内存16G,独立显卡RTX2060 (PS:独立显卡并不是必须的,tensorflow也能运行CPU版本,但是速度确实差强人意.推荐还是最少配备一块显卡) 已装系统:Window ...

  5. <python开发> python开发 环境搭建(windows)

    以下提供软件的官方地址链接,如果不想去官方下载,可使用作者整理好的软件包,链接:python环境搭建软件包链接地址 一.python 安装 1.安装包的官网:下载地址 打开后界面如下: 2.点击&qu ...

  6. docker开发环境搭建(windows)

    目录 Docker开发环境搭建 1.1mysql 1.1.1拉取镜像 1.1.2本地新建目录(windows为例) 1.1.3创建容器并添加本地映射 1.1.4连接容器数据库验证成功 2.1nacos ...

  7. OCSP环境搭建--Windows Server 2016

    目录 一. OCSP环境中相关信息 1. 服务器1 2. 服务器2 二. 环境配置示意图 三. 环境搭建步骤 1. 服务器1环境准备 2. 添加DNS服务器角色 3. 新建域(添加域服务AD DS以及 ...

  8. Rust开发调试环境搭建Windows

    Rust Windows环境搭建 2019年02月18日 13:48:31 6日Simmp 阅读数 1672 该文章主要讲述在windows10+vscode下如何构建一个完整的rust编译调试环境, ...

  9. tensor搭建--windows 10 64bit下安装Tensorflow+Keras+VS2015+CUDA8.0 GPU加速

    windows 10 64bit下安装Tensorflow+Keras+VS2015+CUDA8.0 GPU加速 原文见于:http://www.jianshu.com/p/c245d46d43f0 ...

  10. PHP环境搭建:Windows 7下安装配置PHP+Apache+Mysql环境教程(转)

    转至:http://www.leapsoul.cn/?p=695 这两天刚装好Windows 7,碰巧前段时间有朋友问我Windows下如何安装搭建PHP环境,所以打算勤劳下,手动一步步搭建PHP环境 ...

最新文章

  1. Android Handler sendMessage和 sendMessageDelayed的使用
  2. GitHub的MySQL高可用性实践
  3. python服务器搭建nginx_Nginx简单快速搭建文件服务器
  4. QT的QVideoProbe类的使用
  5. 网页突然乱码_电脑打开网页出现乱码
  6. javascript笔记:javascript的前世,至于今生嘛地球人都知道了哈
  7. LeetCode 1325. 删除给定值的叶子节点(递归)
  8. NS2:undefined reference to `xxx' collect2: error: ld returned 1 exit status
  9. DNS和VIP的区别
  10. Spring boot设置文件上传大小限制
  11. Impossible WHERE noticed after reading const tables
  12. django LookUp
  13. kf.qq.com.lol.html,英雄联盟安全信用星级,英雄联盟封号查询中心
  14. Android使用WebView将网页打包成APP
  15. IDEA中运行maven多模块项目,提示程序包xxxx不存在
  16. Windows内存清理工具实现——从现象到本质
  17. 【亲测有效】微信图片已过期的恢复方法
  18. 抢票软件依旧跑得欢 记者25分钟抢两张热门票
  19. 深入理解搜索引擎-搜索召回
  20. tf.keras.layers.Layer自定义层

热门文章

  1. 2022机修钳工(中级)特种作业证考试题库模拟考试平台操作
  2. 单片机矩阵键盘扫描程序c语言,51单片机矩阵键盘扫描程序(源代码)
  3. 转:13个大数据应用案例,告诉你最真实的大数据故事
  4. Js 网页版扫雷游戏代码实现
  5. 计算机高一基础知识大全,计算机基础知识大全
  6. nicescroll.js滚动条错位
  7. 从宏杉合作伙伴大会看本土存储厂商的“逆袭”
  8. 七策定纲存储之道 宏杉科技专注创新勇突破
  9. python3.7源码剖析——python对象
  10. 网关 架构演进及实践