|
1 | 1 | # Building and Installing OpenDDS
|
2 | 2 |
|
3 |
| -**Table of Contents:** |
| 3 | +The content from this file has been moved into the main documention: |
4 | 4 |
|
5 |
| -- [Building and Installing OpenDDS](#building-and-installing-opendds) |
6 |
| - - [Java](#java) |
7 |
| - - [Supported Platforms](#supported-platforms) |
8 |
| - - [Compiling](#compiling) |
9 |
| - - [Test](#test) |
10 |
| - - [Installation](#installation) |
11 |
| - - [Application Development with an Installed OpenDDS](#application-development-with-an-installed-opendds) |
12 |
| - - [Cross Compiling](#cross-compiling) |
13 |
| - - [Raspberry Pi](#raspberry-pi) |
14 |
| - - [Android](#android) |
15 |
| - - [Apple iOS](#apple-ios) |
16 |
| - - [Building Your Own Applications](#building-your-own-applications) |
17 |
| - |
18 |
| -## Java |
19 |
| - |
20 |
| -If you're building OpenDDS for use by Java applications, please see the file |
21 |
| -[java/INSTALL](java/INSTALL) instead of this one. |
22 |
| - |
23 |
| -## Supported Platforms |
24 |
| - |
25 |
| -We have built OpenDDS on number of different platforms and compilers. See |
26 |
| -[README.md](README.md#supported-platforms) for a complete description of |
27 |
| -supported platforms. |
28 |
| - |
29 |
| -## Compiling |
30 |
| - |
31 |
| - OpenDDS has a "configure" script to automate all steps required before |
32 |
| - actually compiling source code. This script requires Perl 5.10 or newer to be |
33 |
| - installed and available on the system PATH. Perl 5.8 may be sufficient on |
34 |
| - Unix systems. [Strawberry Perl](https://www.strawberryperl.com) |
35 |
| - is recommended on Windows. |
36 |
| - To start the script simply change to the directory containing this INSTALL |
37 |
| - file, and run: |
38 |
| - |
39 |
| -**For Unixes (Linux, macOS, BSDs, etc):** |
40 |
| - |
41 |
| -``` |
42 |
| -./configure |
43 |
| -``` |
44 |
| - |
45 |
| -**For Windows (in a Visual Studio Command Prompt):** |
46 |
| - |
47 |
| -``` |
48 |
| -configure |
49 |
| -``` |
50 |
| - |
51 |
| - Optionally add `--help` to the command line to see the advanced options |
52 |
| - available for this script. The configure script will download ACE+TAO and |
53 |
| - configure it for your platform. To use an existing ACE+TAO installation, |
54 |
| - either set the `ACE_ROOT` and `TAO_ROOT` environment variables or pass the `--ace` |
55 |
| - and `--tao` (if TAO is not at `$ACE_ROOT/TAO`) options to configure. |
56 |
| - If configure runs successfully it will end with a message about the next |
57 |
| - steps for compiling OpenDDS. |
58 |
| - |
59 |
| - OpenDDS supports parallel builds to speed up the build when using Make. To |
60 |
| - use this pass `-j N` where `N` the max number of parallel jobs to run. If not |
61 |
| - sure `N` should be, use the number of cores on the machine. |
62 |
| - |
63 |
| - The configure script creates an environment setup file called setenv (actually |
64 |
| - named `setenv.sh` or `setenv.cmd` depending on platform) that restores all the |
65 |
| - environment variables the build and test steps rely on. |
66 |
| - The main makefile for non-Windows builds temporarily sets the environment as |
67 |
| - well, so `setenv.sh` is not needed when running `make` from the top level. |
68 |
| - On Windows, the configure script modifies the environment of the command |
69 |
| - prompt that ran it. If using a new environment, use `setenv.cmd` to set the |
70 |
| - required environment variables before running Visual Studio. |
71 |
| - |
72 |
| -## Test |
73 |
| - |
74 |
| -**NOTE: Tests are not built by default, `--tests` must be passed to the |
75 |
| -configure script.** |
76 |
| - |
77 |
| - Optionally, you can run the entire OpenDDS regression test suite with one |
78 |
| - Perl command. |
79 |
| - |
80 |
| - **NOTE:** Make sure your environment is set by checking the variable `DDS_ROOT`. |
81 |
| - Run setenv if it is not set. |
82 |
| - |
83 |
| -**For Unixes (Linux, macOS, BSDs, etc):** |
84 |
| - |
85 |
| -``` |
86 |
| -bin/auto_run_tests.pl |
87 |
| -``` |
88 |
| - |
89 |
| -**For Windows:** |
90 |
| - |
91 |
| -``` |
92 |
| -bin\auto_run_tests.pl |
93 |
| -``` |
94 |
| - |
95 |
| - If you built static libraries, add `-Config STATIC` to this command. |
96 |
| - To test RTPS features (uses multicast) add `-Config RTPS` to this command. |
97 |
| - On Windows if you build Release mode add `-ExeSubDir Release`. |
98 |
| - On Windows if you build static libraries add `-ExeSubDir Static_Debug` |
99 |
| - or `-ExeSubDir Static_Release`. |
100 |
| - |
101 |
| - |
102 |
| -## Installation |
103 |
| - |
104 |
| - When OpenDDS is built using `make`, if the configure script was run with an |
105 |
| - argument of `--prefix=<prefix>` the `make install` target is available. |
106 |
| - |
107 |
| - After running `make` (and before `make install`) you have one completely ready |
108 |
| - and usable OpenDDS. Its `DDS_ROOT` is the top of the source tree -- the same |
109 |
| - directory from which you ran configure and make. That `DDS_ROOT` should work |
110 |
| - for building application code, and some users may prefer using it this way. |
111 |
| - |
112 |
| - After `make install` there is a second completely ready and usable OpenDDS |
113 |
| - that's under the installation prefix directory. It contains the required |
114 |
| - libraries, code generators, header files, IDL files, and associated scripts |
115 |
| - and documentation. |
116 |
| - |
117 |
| - **NOTE:** If configured with RapidJSON, OpenDDS will install the headers for |
118 |
| - RapidJSON, which might conflict with an existing installation. |
119 |
| - |
120 |
| -### Application Development with an Installed OpenDDS |
121 |
| - |
122 |
| - After `make install` completes, the shell script in |
123 |
| - `<prefix>/share/dds/dds-devel.sh` is used to set the `DDS_ROOT` environment |
124 |
| - variable. The analogous files for ACE and TAO are |
125 |
| - `<prefix>/share/ace/ace-devel.sh` and `<prefix>/share/tao/tao-devel.sh`. |
126 |
| - |
127 |
| - The `<prefix>` tree does not contain a tool for makefile generation. To use |
128 |
| - MPC to generate application makefiles, the `MPC_ROOT` subdirectory from the |
129 |
| - OpenDDS source tree can be used either in-place or copied elsewhere. |
130 |
| - To use CMake to generate application makefiles, |
131 |
| - see [`docs/cmake.md`](docs/cmake.md). |
132 |
| - |
133 |
| - |
134 |
| -## Cross Compiling |
135 |
| - |
136 |
| - Use the configure script, and set the target platform to one different than |
137 |
| - the host. For example: |
138 |
| - |
139 |
| -``` |
140 |
| -./configure --target=lynxos-178 |
141 |
| -``` |
142 |
| - |
143 |
| - Run configure with `--target-help` for details on the supported targets. |
144 |
| - In this setup, configure will clone the OpenDDS and ACE+TAO source trees for |
145 |
| - host and target builds. It will do a static build of the host tools (such as |
146 |
| - `opendds_idl` and `tao_idl`) in the host environment, and a full build in the |
147 |
| - target environment. Most parameters to configure are then assumed to be |
148 |
| - target parameters. |
149 |
| - |
150 |
| - Any testing has to be done manually. |
151 |
| - |
152 |
| - |
153 |
| -### Raspberry Pi |
154 |
| - |
155 |
| -The instructions for building for the Raspberry Pi are on |
156 |
| -[`opendds.org`](http://opendds.org/quickstart/GettingStartedPi.html). |
157 |
| - |
158 |
| -### Android |
159 |
| - |
160 |
| -Android support is documented in [`docs/android.md`](docs/android.md). |
161 |
| - |
162 |
| -### Apple iOS |
163 |
| - |
164 |
| -Apple iOS support is documented in [`docs/ios.md`](docs/ios.md). |
165 |
| - |
166 |
| - |
167 |
| -## Building Your Own Applications |
168 |
| - |
169 |
| -See the [OpenDDS Developer's Guide]( |
170 |
| - http://download.ociweb.com/OpenDDS/OpenDDS-latest.pdf) |
171 |
| -and run the Developer's Guide Example program: |
172 |
| - |
173 |
| -**For Unixes (Linux, macOS, BSDs, etc):** |
174 |
| - |
175 |
| -``` |
176 |
| -cd $DDS_ROOT/DevGuideExamples/DCPS/Messenger |
177 |
| -./run_test.pl |
178 |
| -``` |
179 |
| - |
180 |
| -**For Windows:** |
181 |
| - |
182 |
| -``` |
183 |
| -cd %DDS_ROOT%\DevGuideExamples\DCPS\Messenger |
184 |
| -perl run_test.pl |
185 |
| -``` |
186 |
| - |
187 |
| - The Perl script will start 3 processes, the DCPSInfoRepo, one publisher, and |
188 |
| - one subscriber. Note that the command lines used to spawn these processes |
189 |
| - are echoed back to standard output. The options and config files used here |
190 |
| - are helpful starting points for developing and running your own OpenDDS |
191 |
| - applications. |
| 5 | +- [Read the Docs (latest release)](https://opendds.readthedocs.io/en/latest-release/building/index.html) |
| 6 | +- [Read the Docs (master branch)](https://opendds.readthedocs.io/en/master/building/index.html) |
| 7 | +- [`docs/building/index.rst` (raw file)](docs/building/index.rst) |
0 commit comments