forked from OpenDDS/OpenDDS
-
Notifications
You must be signed in to change notification settings - Fork 0
/
INSTALL
138 lines (97 loc) · 5.73 KB
/
INSTALL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
Starting with release 1.2, OpenDDS provides Java bindings. Java applications
can make use of the complete OpenDDS middleware just like C++ applications.
See the README.md file in the $DDS_ROOT directory (one level above here) for a
general overview of OpenDDS.
======================================================================
* Prerequisites
- JDK (Java Development Kit) for Java SE 5 through 8
<http://java.sun.com/javase/downloads>
Sun distributes the JDK for Windows, Linux, and Solaris. OpenDDS supports
these three platforms in both 32-bit and 64-bit variants. There is also
experimental support for the 32-bit and 64-bit variants of the JDK provided
by Apple on Mac OS X. If you are using a 64-bit JDK, make sure all the
native libraries are also built for 64-bit. Similarly, a 32-bit JDK must
be matched with 32-bit native libraries.
- C++ Compiler
These instructions assume that you will be using the "native" compiler for
your chosen platform, namely:
Windows => Microsoft Visual C++ <http://msdn.microsoft.com/en-us/visualc>
Linux => GNU Compiler Collection (GCC) <http://gcc.gnu.org>
Mac OS X => GNU Compiler Collection (GCC) <http://gcc.gnu.org>
Solaris => Sun Studio (SunCC) <http://developers.sun.com/sunstudio>
Other combinations are possible (gcc on Windows, SunCC on Linux, etc.) but
these have not been tested and will not be covered by this document.
The following versions are supported:
- Visual C++ 9 SP1 (part of Visual Studio 2008), Visual C++ 10 SP1 (part of
Visual Studio 2010), Visual C++ 11 (part of Visual Studio 2012),
Visual C++ 12 (part of Visual Studio 2013) and Visual C++ 14 (part of
Visual Studio 2015).
VC++ 9 and later have free "express editions" -- these will work fine,
see <http://www.microsoft.com/express/vc/>.
Note: VC10 (VS2010) and later are supported but there are some issues
with dependencies and parallel builds.
When building with VC10 and later, you may need to build twice - the first
fails, and the second builds successfully.
- GCC 4.0.x or later (earlier versions may work but haven't been tested)
Preferably, use the default gcc from your Linux or Mac OS X distribution.
- Sun Studio 12 (SunCC 5.9) Earlier versions are known to have problems
with some of the code in the OpenDDS Java bindings.
On Linux and Solaris, GNU make is also required. It will almost
certainly be installed by default on Linux (if not use your
platform's package management system). On Solaris be sure that you are
using GNU make, which may be invoked as "gmake".
On OS X El Capitan, Yosemite, Mavericks onward, the required build tools
can be installed by typing the following command from termial.
xcode-select --install
- Perl v5.8 or later
On Unix platforms, perl will be pre-installed or easily installed by the
platform's package management system.
On Windows install ActiveState's ActivePerl. Download it for free from
<http://www.activestate.com/downloads> -> scroll down to "ActivePerl" and
click "Get Current Release" -> select the "Download" link.
- The ACE ORB (TAO), which includes ACE and MPC as subprojects
OpenDDS requires the use of TAO. Three "branches" of TAO are supported:
- OCI TAO 2.2a <http://download.ociweb.com/TAO-2.2a>
- DOC Group <http://download.dre.vanderbilt.edu>
Note: TAO can be automatically downloaded by the configure script, so
downloading it separately is not strictly necessary.
From each branch only the current patch release (OCI) or beta/micro release
(DOC) is supported. The "current" releases are the latest public releases
of TAO at the time of the OpenDDS release. These are listed in the "TAO"
section of the OpenDDS README.md file (in the parent directory).
For responsive support from OCI it is recommended that the latest version
of the OCI release of TAO used for OpenDDS development and testing be used.
The detailed instructions below are written assuming OCI TAO 2.2a is used.
======================================================================
* Building OpenDDS, including dependencies and Java bindings
1. Set up the build environment
Unix => Any shell should be OK. Make sure you can run "perl", "make",
and your C++ compiler (g++ or CC) -- i.e. they are found on
the PATH.
Windows => Run the Visual Studio Command Prompt
2. Extract source code archives
Unix => Start with the .tar.gz archives of OpenDDS
Windows => Start with the .zip archives of OpenDDS
Extract to the location of your chosing. On Windows it is simpler to
use paths with no spaces (true on Unix too but spaces are rarely seen).
The top level of the OpenDDS distribution is a directory that contains
the subdirectory named dds.
3. Configure and build OpenDDS
Build as in $DDS_ROOT/install, but add --java option
Unix => cd $DDS_ROOT
./configure --java
make
Windows => cd $DDS_ROOT
configure --java
Start Visual Studio by executing the generated solution from the command prompt
Select Build -> Build Solution
4. Run a test Java application to verify the build
Note: first set environment via the setenv script.
Unix => cd $DDS_ROOT/java/tests/multirepo
./run_test.pl
Windows => cd %DDS_ROOT%\java\tests\multirepo
run_test.pl
(for release mode, add -ExeSubDir Release)
======================================================================
* Next Steps: Developing Java applications with OpenDDS
See the README.md file in this directory.