DDS源码编译
源码下载地址:http://www.prismtech.com/download-documents/736Building and Installing OpenSplice DDS from a Source BundlePOSIX / Linux Minimal Build Required ToolsNOTE: The list of tools b
源码下载地址:http://www.prismtech.com/download-documents/736
Building and Installing OpenSplice DDS from a Source Bundle
POSIX / Linux Minimal Build Required Tools
NOTE: The list of tools below is the minimal set required to build OpenSplice DDS without CORBA ORB collocation support. See the required tools section below for details of the additional dependencies to build OpenSplice DDS with support for sharing DDS types with a C++ or Java CORBA ORB.
The following tools must be installed and available on the machine executable / library search path.
- bash shell
- A suitable C / C++ compiler, e.g:
- gcc - 3.2.x or above
- Sun Studio - At this time only v12 of this compiler has been tested
- gmake - 3.80 or above.
- Java SDK - Sun SDK v1.5 or above. N.B. Can be omitted if you do not wish to build any Java language support.
- gawk - Any version is acceptable.
- flex - Any version is acceptable.
- bison - Any version is acceptable.
- gtar - The source archive is produced by git export and so uses extended pax headers.
- zlib - The default version provided with all supported platforms is acceptable (no longer required for v6 and above).
For OpenSplice version 6 and above you will also require the following:
- Git - Any version should be acceptable.
- Doxygen - Any version should be acceptable.
- Java SDK - Oracle JDK 1.6 or above. N.B Can be omitted if you do not wish to build any Java language support.
POSIX / Linux Build with Optional CORBA Collocation Support Required Tools
In addition to the above dependencies the following may also be optionally installed and used to enable support for sharing data types with a CORBA ORB.
- OpenFusion TAO - Available from the downloads page. See the installation instructions for how to install and configure the build environment.
- Install and set TAO_ROOT to the directory that the OpenFusion TAO C++ ORB is installed in, before sourcing configure to enable C++ CORBA support.
- OpenFusion JacORB - Available from the downloads page. See the installation instructions for how to install and configure the build environment.
- Install and set JACORB_HOME to the directory that the OpenFusion JacORB Java ORB is installed in, before sourcing configure to enable Java CORBA support.
POSIX / Linux Steps to Build OpenSplice DDS from Source (Version 6 or later)
- Extract the OpenSplice DDS Community Edition distribution.
- Set environment variables so that the above tools can be located.
- Optionally set either or both TAO_ROOT or JACORB_HOME if you wish to build CORBA support. Otherwise: set neither. See above.
- JAVA_HOME - set to the directory that a Oracle SDK (>1.6) is installed in.
- All other tools will be located from the machine $PATH
- Source the OpenSplice configure script to set-up your build environment. N.B. You must source this script each time you wish to configure a new shell as a build environment. The configuration choices are not persistent.
- Choose the target platform configuration.
- Invoke make to build OpenSplice DDS
- Invoke make in the install directory to build an OpenSplice DDS Distribution
gtar -xzf <ospl_source_distrib>
export TAO_ROOT=<TAO_installed_dir>
export JACORB_HOME=<JacORB_installed_dir>
export JAVA_HOME=<JDK_install_dir>
cd OpenSplice
source ./configure
<choose target platform>
make
cd install
make
Example:
$ tar -xzf OpenSpliceDDSV6.3OSS-src.tar.gz
$ export TAO_ROOT=$PWD/tao161
$ export JACORB_HOME=$PWD/jacorb2303
$ export JAVA_HOME=/usr/local/jdk1.6.0_45
$ cd OpenSplice
$ source configure
Setup at 17:47:23 for OpenSplice - Version V6.3.0OSS - Date 2013-07-06
Available targets are:
1 > x86_64.linux2.6-debug
2 > x86_64.linux2.6-dev
3 > x86_64.linux2.6-gcov
4 > x86_64.linux2.6-release
5 > x86.linux2.6-debug
6 > x86.linux2.6-dev
7 > x86.linux2.6-devdat
8 > x86.linux2.6-efence
9 > x86.linux2.6-gcov
10 > x86.linux2.6-release
11 > x86.linux2.6-test
Please select a target number:4
GCC: OK - using version 4.6
GLIBC: version 2.15
MAKE: OK - using GNU Make 3.81
Perl: OK - using perl version='5.14.2';
Qt: Off. Ok, but you're missing out on bouncing shapes...
GAWK: OK - using GNU Awk 3.1.8
BISON: OK - using bison (GNU Bison) 2.5
FLEX: OK - using 2.5.35
JAVAC: OK - using JAVAC version 1.6.0_31
JAVA_HOME is /usr/local/jdk1.6.0
GMCS: Warning - No gmcs compiler found
gmcs C# compiler not found, disabling SACS api build.
TAO: OK - SPLICE_ORB is TAO PrismTech Version No: TAO 1.6.1.0
setting TAO_ROOT to /home/dds/TAO161
JACORB: OK
JACORB_HOME is /home/dds/JacORB
OpenORB: Warning - OPENORB_VERSION is not set
OpenOrb environment not set, disabling OpenOrb related features.
Doxygen: OK
Configuration OK
Variable Setup
SPLICE_TARGET = x86_64.linux2.6-release
SPLICE_HOST = x86_64.linux2.6-release
OSPL_HOME = /home/dds/pg/opensplice
SPLICE_ORB = DDS_OpenFusion_1_6_1
PATH after configure is <... snipped PATH ...>
$ make
<... snipped build output ...>
$ cd install
$ make
* SPLICE RTS Ready
#################### Compile (Building installer for inner Runtime_System) [Sat Jul 6 17:54:59 BST 2013]
Making linux builder for Runtime_System, platform x86_64.linux2.6, environment -release
make_builder params are RTS Runtime_System x86_64.linux2.6 linux release.com -release getlic_info normal
Making builder for Runtime_System (RTS, x86_64.linux2.6, linux)
Release is V6.3.0OSS
Date is 2013-07-06
/bin/tar cf /home/dds/pg/opensplice/install/VC/OpenSpliceDDSV6.3.0OSS-RTS-x86_64.linux-gcc4.6-glibc2.15.tar RTS
Backup original with tar
POSIX / Linux Steps to Build OpenSplice DDS from Source (Earlier than version 6)
- Extract the OpenSplice DDS Community Edition distribution.
- Set environment variables so that the above tools can be located.
- Optionally set either or both TAO_ROOT or JACORB_HOME if you wish to build CORBA support. Otherwise: set neither. See above.
- JAVA_HOME - set to the directory that a Sun SDK (>1.5) is installed in.
- All other tools will be located from the machine $PATH
- Source the OpenSplice configure script to set-up your build environment. N.B. You must source this script each time you wish to configure a new shell as a build environment. The configuration choices are not persistent.
- Choose the target platform configuration.
- Invoke make to build OpenSplice DDS
- Invoke make in the install directory to build an OpenSplice DDS Distribution
gtar -xzf <ospl_source_distrib>
export TAO_ROOT=<TAO_installed_dir>
export JACORB_HOME=<JacORB_installed_dir>
export JAVA_HOME=<JDK_install_dir>
cd OpenSplice
source ./configure
<choose target platform>
make
cd install
make
Example:
$ tar -xzf OpenSpliceDDSV4.1-src.tar.gz
$ export TAO_ROOT=$PWD/tao161
$ export JACORB_HOME=$PWD/jacorb2303
$ export JAVA_HOME=/usr/local/jdk1.5.0_15
$ cd OpenSplice
$ source configure
Setup for OpenSplice DDS - Version V4.1 - Date 2009-04-16
Available targets are:
1 > x86_64.linux2.6-dev
2 > x86_64.linux2.6-release
3 > x86.linux2.6-debug
4 > x86.linux2.6-dev
5 > x86.linux2.6-devdat
6 > x86.linux2.6-efence
7 > x86.linux2.6-release
8 > x86.linux2.6-test
Please select a target number:7
... <snipped build output>...
* SPLICE RTS Ready
Making linux builder for Runtime_System, platform x86.linux2.6, environment -release
RTS Runtime_System x86.linux2.6 linux release.com -release getlic_info
Making builder for Runtime_System (RTS, x86.linux2.6, linux)
Release is V4.1
Date is 2009-04-16
/usr/local/bin/tar -cf /home/tao/rhel51a/sm/OpenSplice/install/VC/OpenSpliceDDSV4.1-x86.linux2.6-RTS.tar RTS
$
Windows Steps to Build OpenSplice DDS from Source (Version 6 or later)
Windows Minimal Build Required Tools
NOTE: The below list of tools is the minimal set required to build OpenSplice DDS without CORBA ORB collocation support. See the required tools section below for details of the additional dependencies to build OpenSplice DDS with support for sharing DDS types with a C++ or Java CORBA ORB.
- Microsoft Visual Studio 2008 or Microsoft Visual Studio 2010
- cygwin - The latest available version is recommended. The following packages should be installed in addition to the recommended base selection:
- gcc-core
- gmake
- bison
- flex
- gawk
- zip
- unzip
- git
- doxygen
- Java SDK - Oracle SDK v1.6 or above.
Windows Build with Optional CORBA Collocation Support Required Tools
In addition to the above dependencies the following may also be optionally installed and used to enable support for sharing data types with a CORBA ORB.
- OpenFusion TAO - Available from the downloads page. See the installation instructions for how to install and configure the build environment.
- Install and set TAO_ROOT to the directory that the OpenFusion TAO C++ ORB is installed in, before sourcing configure to enable C++ CORBA support.
- OpenFusion JacORB - Available from the downloads page. See the installation instructions for how to install and configure the build environment.
- Install and set JACORB_HOME to the directory that the OpenFusion JacORB Java ORB is installed in, before sourcing configure to enable Java CORBA support.
Windows Steps to build OpenSplice DDS from Source
- Extract the OpenSplice DDS Community Edition source distribution zip file using Windows Explorer or a similar zip extraction utility (e.g. Cygzin unzip).
- In a Cygwin shell set environment variables so that the required build tools can be located.
- VS_HOME - set to the installation directory of Visual Studio 2008 or 2010.
- WINDOWSSDKDIR - set to the location of the Windows SDK directory.
- Optionally set either or both TAO_ROOT or JACORB_HOME if you wish to build CORBA support. Otherwise: set neither. See above.
- JAVA_HOME - set to the directory that a Oracle SDK (>1.6) is installed in.
- All other tools will be located from the cygwin shell $PATH
- Unset TMP and TEMP (lower and upper case) otherwise you may encouter error 256 while building ISO C++. This is a known compatibility issue between Cygwin and Visual Studio. This can be done permanently by editing your /etc/profile and commenting out the setting of the variables.
- Source the OpenSplice configure script to set-up your build environment. N.B. You must source this script each time you wish to configure a new shell as a build environment. The configuration choices are not persistent.
- Choose the target platform configuration. N.B - 32/64 bit debug (dev) or release (release) builds are available.
- Note that if you wish to build 'dev' and you wish to build C++ CORBA support then you must have installed a debug version of OpenFusion TAO. If you wish to build release then the OpenFusion TAO installed and indicated by the TAO_ROOT variable must also be release.
- Invoke make to build OpenSplice DDS
- Invoke make in the install directory to build an OpenSplice DDS Distribution
<extract distribution zip>
export TAO_ROOT=<TAO_installed_dir>
export JACORB_HOME=<JacORB_installed_dir>
export JAVA_HOME=<JDK_install_dir>
export VS_HOME=<Location of Visual Studio installation>
export WINDOWSSDKDIR=<Location of the Windows SDK>
unset tmp/TMP/temp/TEMP - see above
cd OpenSplice
source ./configure
<choose target platform>
make
cd install
make
Example:
bash-3.2$ unzip OpenSpliceDDSV6.3OSS-src.zip
bash-3.2$ export VS_HOME='/cygdrive/C/Program Files (x86)/Microsoft Visual Studio 10.0'
bash-3.2$ export JAVA_HOME='/cygdrive/C/Program Files/Java/jdk1.6.0_45'
bash-3.2$ export JACORB_HOME='/cygdrive/C/Program Files/JacORB_v2.3.0.3'
bash-3.2$ export WINDOWSSDKDIR='/cygdrive/C/Program Files (x86)/Microsoft SDKs/Windows/v7.0A'
bash-3.2$ export TAO_ROOT=$PWD/TAO161_0-Windows-vc8-inline-32bit-090505
bash-3.2$ unset tmp TMP temp TEMP
bash-3.2$ cd OpenSplice
bash-3.2$ source configure
Setup at 18:39:40 for OpenSplice - Version V6.3.0OSS - Date 2013-07-06
Available targets are:
1 > x86.win32-debug
2 > x86.win32-dev
3 > x86.win32-release
4 > x86_64.win64-dev
5 > x86_64.win64-release
Please select a target number:5
VS: OK - using VS .NET 2010 (Visual Studio 10)
Visual Studio builder: OK - using devenv.com
C#: OK - using version 2.0.50727
MAKE: OK - using GNU Make 3.82.90
Perl: OK - using perl version='5.14.2';
Qt: Off. Ok, but you're missing out on bouncing shapes...
GAWK: OK - using GNU Awk 4.1.0, API: 1.0 (GNU MPFR 3.1.2, GNU MP 4.3.2)
BISON: OK - using bison (GNU Bison) 2.7.12-4996
FLEX: OK - using 2.5.35
JAVAC: OK - using JAVAC version 1.6.0_45
JAVA_HOME is /cygdrive/c/PROGRA~1/Java/JDK16~1.0_4/
TAO: Warning - No TAO found
TAO environment not set, disabling TAO related features.
JACORB: Warning - JACORB_HOME not set
JACORB environment not set, disabling JACORB related features.
OpenORB: Warning - OPENORB_VERSION is not set
OpenOrb environment not set, disabling OpenOrb related features.
Doxygen: OK
Configuration OK
Variable Setup
SPLICE_TARGET = x86_64.win64-release
SPLICE_HOST = x86_64.win64-release
OSPL_HOME = /home/dds/opensplice
SPLICE_ORB =
PATH after configure is <... snipped PATH ...>
bash-3.2$ make
<... snipped build output ...>
bash-3.2$ cd install
bash-3.2$ make
<... snipped output ...>
adding: RTS/x86_64.win64/redist/en/package.xml (deflated 52%)
adding: RTS/x86_64.win64/redist/install_vcredist.bat (stored 0%)
adding: RTS/x86_64.win64/redist/product.xml (deflated 52%)
adding: RTS/x86_64.win64/redist/vcredist_x64.exe (deflated 0%)
adding: RTS/x86_64.win64/release.bat (deflated 31%)
Backup original with tar
Windows Steps to Build OpenSplice DDS from Source (Earlier than version 6)
Windows Minimal Build Required Tools
NOTE: The below list of tools is the minimal set required to build OpenSplice DDS without CORBA ORB collocation support. See the required tools section below for details of the additional dependencies to build OpenSplice DDS with support for sharing DDS types with a C++ or Java CORBA ORB.
- Microsoft Visual Studio 2005 or Microsoft Visual Studio 2008
- cygwin - The latest available version is recommended. The following packages should be installed in addition to the recommended base selection:
- gcc-core
- gmake
- bison
- flex
- gawk
- zip
- unzip
- Java SDK - Sun SDK v1.5 or above.
- zlib 1.2.4 from zlib.net - Other versions may work however this version is the one tested. After install define ZLIB_HOME to the location unzipped to. Using the version of zlib in cygwin has not been tested.
Windows Build with Optional CORBA Collocation Support Required Tools
In addition to the above dependencies the following may also be optionally installed and used to enable support for sharing data types with a CORBA ORB.
- OpenFusion TAO - Available from the downloads page. See the installation instructions for how to install and configure the build environment.
- Install and set TAO_ROOT to the directory that the OpenFusion TAO C++ ORB is installed in, before sourcing configure to enable C++ CORBA support.
- OpenFusion JacORB - Available from the downloads page. See the installation instructions for how to install and configure the build environment.
- Install and set JACORB_HOME to the directory that the OpenFusion JacORB Java ORB is installed in, before sourcing configure to enable Java CORBA support.
Windows Steps to build OpenSplice DDS from Source
- Extract the OpenSplice DDS Community Edition source distribution zip file using Windows Explorer or a similar zip extraction utility (e.g. Cygzin unzip).
- In a Cygwin shell set environment variables so that the required build tools can be located.
- VS_HOME - set to the installation directory of Visual Studio 2005 or 2008.
- ZLIB_HOME - set to the directory the zlib.net distribution has been unzipped to (see above).
- Optionally set either or both TAO_ROOT or JACORB_HOME if you wish to build CORBA support. Otherwise: set neither. See above.
- JAVA_HOME - set to the directory that a Sun SDK (>1.5) is installed in.
- All other tools will be located from the cygwin shell $PATH
- Source the OpenSplice configure script to set-up your build environment. N.B. You must source this script each time you wish to configure a new shell as a build environment. The configuration choices are not persistent.
- Choose the target platform configuration. N.B - 32 bit debug (dev) or release (release) builds are available.
- Note that if you wish to build 'dev' and you wish to build C++ CORBA support then you must have installed a debug version of OpenFusion TAO. If you wish to build release then the OpenFusion TAO installed and indicated by the TAO_ROOT variable must also be release.
- Invoke make to build OpenSplice DDS
- Invoke make in the install directory to build an OpenSplice DDS Distribution
<extract distribution zip>
export TAO_ROOT=<TAO_installed_dir>
export JACORB_HOME=<JacORB_installed_dir>
export JAVA_HOME=<JDK_install_dir>
export VS_HOME=<Location of Visual Studio installation>
export ZLIB_HOME=<Location where zlib.net zlib is installed>
cd OpenSplice
source ./configure
<choose target platform (1 or 2)>
make
cd install
make
Example:
bash-3.2$ unzip OpenSpliceDDSV4.1.090615-src.zip
bash-3.2$ export VS_HOME='/cygdrive/C/Program Files/Microsoft Visual Studio 8'
bash-3.2$ export ZLIB_HOME=$PWD/zlib-1.2.4
bash-3.2$ export JAVA_HOME='/cygdrive/C/Program Files/Java/jdk1.6.0_14'
bash-3.2$ export JACORB_HOME='/cygdrive/C/Program Files/JacORB_v2.3.0.3'
bash-3.2$ export TAO_ROOT=$PWD/TAO161_0-Windows-vc8-inline-32bit-090505
bash-3.2$ cd OpenSplice
bash-3.2$ source configure
Setup for OpenSplice DDS - Version V4.1.090615 - Date 2009-06-15
Available targets are:
1 > x86.win32-dev
2 > x86.win32-release
Please select a target number:2
... <snipped build output>...
adding: RTS/x86.win32/redist/vcredist_x86/vcredist_x86.exe (deflated 1%)
adding: RTS/x86.win32/release.bat (deflated 38%)
bash-3.2$
Rebuilding the OpenSplice DDS Custom Libraries on POSIX / Linux
Binary distributions of OpenSplice DDS are shipped containing pre-built C++ and Java language binding libraries. These are known as the OpenSplice DDS Custom Libraries.
For maximum assurance of compatibility with your deployment platform the OpenSplice DDS Custom Libraries of an OpenSplice DDS Community Edition binary distribution can be rebuilt. In this way you can be confident that these language binding libraries have matching linkage with the toolchain you plan to develop and deploy your application with.
Rebuilding the Standalone C++ Custom Libraries on POSIX / Linux
- Configure the environment for the OpenSplice DDS as per the installation instructions.
- Change directory to the Standalone C++ Custom Libraries source directory in the binary OpenSplice distribution.
- Make the directory.
- Copy the new library into place in the distribution.
cd HDE/<<target_platform>>/custom_lib/sacpp/
make
cp -f ./libdcpssacpp.so ../../lib/.
Rebuilding the CORBA Co-habitation C++ Custom Libraries on POSIX / Linux
- Configure the environment for the OpenFusion TAO C++ ORB as per the installation instructions.
- Change directory to the CORBA Co-habitation C++ Custom Libraries source directory in the binary OpenSplice distribution.
- Make the directory.
- Copy the new library into place in he distribution.
cd HDE/<<target_platform>>/custom_lib/ccpp/
make
cp -f ./libdcpsccpp.so ../../lib/.
Scoreboard and Archive for PrismTech builds of OpenSplice DDS
Latest Windows and Linux builds of OpenSpliceDDS from PrismTech.
The above link takes you to snapshot pages taken from PrismTech's build system. The initial page lists any build posted since 00:00 GMT. These builds take place daily, but will run at various times depending on resource availability within the PrismTech build infrastructure. However, the codebase built is always the same as it is taken from a sha1 key at 00:00 GMT to ensure consistency across machines.
In the initial page, the 'setup type' column is the splice target (which you will be familiar with if you had built from source). The postfix on the 'setup type' value indicates the type of build:
- -dev is a debug
- -release is a non-debug
If there were changes to the opensplice repository since the previous day's build then there will be a change log briefly describing what changes were made, by whom and with links to the git-web to see the diffs. If there are missing builds, this maybe because of a hardware failure or because the build is still queued waiting to run.
The current status is indicated via the 'results' column, which can vary from Cloning and Configuring to Pass, Failed or Examples Failed. There are many stati and colors used internally within PrismTech, but hopefully they are self-explanatory. Clicking the status icon will bring up a page with detailed info about the stage in progress. From this page, you will be able to get specifics about the build. The columns here indicate:
- BUILD - compilation stage. Clicking on this icon will allow you access to the logs
- BUILD_DIST - packaging stage which creates a tar/zip file. Clicking on this icon will allow you access to the logs
- KEEP_DIST - copy step to internal PrismTech holding location for built distributions. If this step was successful then clicking this will give you access to the built distributions, both Host Development Environment and Run Time System variants. If unsuccessful then a log is displayed.
- BUILD/DBT, RUN/DBT, BUILD/RBT, RUN/RBT - These are skipped at present.
- BUILD/EXAMPLES - Building the examples from an installed distribution, not a build structure. Clicking on this icon gives access to the logs.
- RUN/EXAMPLES - Running the examples from an installed distribution, not a build structure. Clicking on this icon gives access to the logs.
- Logs - Top level log directory.
更多推荐
所有评论(0)