RTI Connext
Core Libraries and Utilities
Platform Notes
Version 5.0
© 2012
All rights reserved.
Printed in U.S.A. First printing.
August 2012.
Trademarks
Copy and Use Restrictions
No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form (including electronic, mechanical, photocopy, and facsimile) without the prior written permission of Real- Time Innovations, Inc. The software described in this document is furnished under and subject to the RTI software license agreement. The software may be used or copied only under the terms of the license agreement.
Technical Support
Website: https://support.rti.com/
Contents
iii
31 |
||
Required Change for Building with C++ Libraries for QNX |
31 |
|
31 |
||
31 |
||
32 |
||
32 |
||
32 |
35 |
||
Support for |
35 |
|
35 |
||
35 |
||
36 |
||
37 |
||
37 |
41 |
||
Support for |
41 |
|
41 |
||
41 |
||
42 |
||
42 |
||
42 |
||
42 |
||
42 |
57 |
|||
|
60 |
||
|
Visual Studio 2005 Required when Using RTI ‘Debug’ Libraries for Java or .NET APIs .......... |
60 |
|
|
60 |
||
|
60 |
||
|
61 |
||
|
61 |
||
|
61 |
||
|
61 |
||
|
61 |
||
|
62 |
||
70 |
iv
Platform Notes
This document provides
1 Supported Platforms
Table 1.1 lists the platforms available with Connext 5.0.
See also: Custom Supported Platforms (Section 11).
Table 1.1 Platforms Available with Release 5.0
|
Operating System |
Reference |
|
|
|
|
|
AIX® |
AIX 5.3 |
||
|
|
|
|
INTEGRITY® |
INTEGRITY 5.0.11 and 10.0.2 |
||
|
|
|
|
Linux® (Cell BE™) |
Fedora™ 12 (2.6.32 kernel) |
||
|
|
|
|
|
CentOS 5.4, 5.5, 6.0 |
|
|
|
Fedora 12 (2.6.32 kernel) |
|
|
|
Fedora 12 (2.6.32 kernel) with gcc 4.5.1 |
|
|
Linux (Intel®) |
Red Hat® Enterprise Linux |
||
Red Hat Enterprise Linux 5.2 with |
|||
|
|
||
|
SUSE® Linux Enterprise Server 10.1 (2.6 kernel) |
|
|
|
Ubuntu® Server 10.04 (2.6 kernel) |
|
|
|
Wind River® Linux 4 (2.6 kernel) |
|
|
|
|
|
|
|
Freescale P2020RDB (2.6.32 kernel) |
|
|
Linux (PowerPC®) |
SELinux (2.6.32 kernel) |
||
Wind River Linux 3 |
|||
|
|
||
|
Yellow Dog™ Linux 4.0 |
|
|
|
|
|
|
LynxOS®a |
LynxOS 4.0, 4.2, 5.0 |
1
Table 1.1 Platforms Available with Release 5.0
|
Operating System |
Reference |
|
|
|
|
|
Mac OS® |
Mac OS X 10.6 |
||
|
|
|
|
QNX® |
QNX Neutrino® 6.4.1, 6.5 |
||
|
|
|
|
Solaris™ |
Solaris 2.9, 2.10 |
||
|
|
|
|
|
VxWorks 5.5, 6.3 - 6.9 |
|
|
VxWorks® |
VxWorks 653 2.3 |
||
|
VxWorks MILS 2.1.1 |
|
|
|
|
|
|
|
Windows 7 |
|
|
|
Windows 2003 |
|
|
Windows® |
Windows Server 2008 R2 |
||
Windows Vista® |
|||
|
|
||
|
Windows XP Professional |
|
|
|
Service Pack 2 |
|
|
|
|
|
a.The Java API is not supported on LynxOS platforms in 5.0.0. If your application requires support for Java on LynxOS, please contact your RTI account manager.
For each platform, this document provides information on:
❏Supported operating systems and compilers
❏Required Connext and system libraries
❏Required compiler and linker flags
❏Required environment variables for running the application (if any)
❏Details on how the Connext libraries were built
❏Multicast support
❏Supported transports
❏Monotonic clock support
❏CPU core affinity control support
2
AIX Platforms
2 AIX Platforms
Table 2.1 on page 4 lists the architectures supported on the IBM® AIX operating system.
Table 2.2 on page 5 lists the compiler flags and the libraries you will need to link into your application.
Table 2.3 on page 6 provides details on the environment variables required to be set at run time for an AIX architecture.
Table 2.4 on page 6 provides details on how the libraries were built. This table is provided strictly for informational purposes; you do not need to use these parameters to compile your application. You may find this information useful if you are involved in any
2.1Changing Thread Priority
Due to the AIX
❏For all APIs: Your application must have root privileges to use the thread option, DDS_THREAD_SETTINGS_REALTIME_PRIORITY, for the event and receiver pool thread QoS (DDS_DomainParticipantQos.event.thread, DDS_DomainParticipantQos.receiver- _pool.thread).
❏For the Java API only: Your application must have root privileges to change the event and receiver pool thread priorities (DDS_DomainParticipantQos.event.thread, DDS_DomainParticipantQos.receiver_pool.thread).
2.2Multicast Support
Multicast is supported on all AIX platforms and is configured out of the box. That is, the default value for the initial peers list (NDDS_DISCOVERY_PEERS) includes a multicast address. See the online documentation for more information.
2.3Supported Transports
Shared memory: Supported and enabled by default.
UDPv4: Supported and enabled by default.
UDPv6: Not supported.
TCP/IPv4: Not supported.
2.3.1Notes for Using Shared Memory
By default, the maximum number of shared memory segments you can use with AIX is quite small and limits the capability of Connext applications to work properly over shared memory. To increase the maximum number of shared memory segments an application can use, set the following environment variable before invoking your Connext application:
EXTSHM=ON
This environment variable is not required if your application does not use the shared memory transport.
3
To see a list of shared memory resources in use, please use the 'ipcs' command. To clean up shared memory and shared semaphore resources, please use the 'ipcrm' command.
The shared memory keys used by Connext are in the range of 0x400000. For example:
ipcs
The shared semaphore keys used by Connext are in the range of 0x800000; the shared mutex keys are in the range of 0xb00000. For example:
ipcs
Please refer to the
2.4Monotonic Clock Support
The monotonic clock (described in Section 8.6 in the RTI Core Libraries and Utilities User’s Manual) is not supported on AIX platforms.
2.5Support for Controlling CPU Core Affinity for RTI Threads
Support for controlling CPU core affinity (described in Section 19.5 in the RTI Core Libraries and Utilities User’s Manual) is not available for AIX platforms.
Table 2.1 Supported AIX Target Platforms
Operating |
CPU |
Compiler |
RTI Architecture |
|
System |
Abbreviation |
|||
|
|
|||
|
|
|
|
|
|
POWER5 |
IBM XLC for AIX v9.0 |
p5AIX5.3xlc9.0 |
|
|
|
|
||
AIX 5.3 |
IBM Java 1.6 |
p5AIX5.3xlc9.0jdk |
||
|
||||
|
|
|
||
POWER5 |
IBM XLC for AIX v9.0 |
64p5AIX5.3xlc9.0 |
||
|
||||
|
|
|
||
|
IBM Java 1.6 |
64p5AIX5.3xlc9.0jdk |
||
|
|
|||
|
|
|
|
4
|
|
|
|
|
AIX Platforms |
|
Table 2.2 Building Instructions for AIX Architectures |
|
|
|
|||
|
|
|
|
|
|
|
|
API |
Library |
Required RTI Librariesa |
Required System |
Required |
|
|
Format |
Librariesb |
Compiler Flags |
|||
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
libnddscppz.a |
|
|
|
|
|
|
libnddscz.a |
|
|
|
|
|
Static Release |
libnddscorez.a |
|
|
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
|
|
librticonnextmsgcppz.a |
|
|
|
|
|
|
libnddscppzd.a |
|
|
|
|
|
|
libnddsczd.a |
|
|
|
|
|
Static Debug |
libnddscorezd.a |
|
|
|
|
|
|
For Connext Messaging, also include: |
|
||
|
C++ |
|
librticonnextmsgcppzd.a |
|
||
|
|
libnddscpp.so |
|
|||
|
|
Dynamic |
libnddsc.so |
|
||
|
|
libnddscore.so |
|
|
|
|
|
|
Release |
|
|
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
librticonnextmsgcpp.so |
|
|
|
|
|
|
libnddscppd.so |
|
|
|
|
|
Dynamic |
libnddscd.so |
|
|
|
|
|
libnddscored.so |
|
|
|
|
|
|
Debug |
|
|
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
librticonnextmsgcppd.so |
|
|
|
|
|
|
|
|
|
|
|
|
|
libnddscz.a |
|
|
|
|
|
Static Release |
libnddscorez.a |
|
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
librticonnextmsgcz.a |
|
|
|
|
|
|
libnddsczd.a |
|
|
|
|
|
Static Debug |
libnddscorezd.a |
|
||
|
|
For Connext Messaging, also include: |
|
|||
|
|
|
|
|||
|
|
|
|
|||
|
|
|
librticonnextmsgczd.a |
|
||
|
C |
|
|
|||
|
|
|
|
|||
|
|
libnddsc.so |
|
|||
|
|
|
|
|||
|
|
Dynamic |
libnddscore.so |
|
||
|
|
|
||||
|
|
Release |
For Connext Messaging, also include: |
|
|
|
|
|
|
librticonnextmsgc.so |
|
|
|
|
|
|
libnddscd.so |
|
|
|
|
|
Dynamic |
libnddscored.so |
|
|
|
|
|
Debug |
For Connext Messaging, also include: |
|
|
|
|
|
|
librticonnextmsgcd.so |
|
|
|
|
|
|
|
|
|
|
|
|
|
nddsjava.jar |
|
|
|
|
|
Release |
For Connext Messaging, also include: |
|
|
|
|
Java |
|
rticonnextmsg.jar |
N/A |
N/A |
|
|
|
|
||||
|
|
nddsjavad.jar |
||||
|
|
|
|
|
|
|
|
|
Debug |
For Connext Messaging, also include: |
|
|
|
|
|
|
rticonnextmsgd.jar |
|
|
|
|
|
|
|
|
|
|
a.The Connext C/C++ libraries are located in $(NDDSHOME)/lib/<architecture>/. (where $(NDDSHOME) is where Connext is installed, such as /local/rti/ndds.5.0.x)
b.Transports (other than the default IP transport) such as StarFabric may require linking in additional libraries. For further details, see the online documentation or contact support@rti.com.
c.Use
5
d. The
Table 2.3 Running Instructions for AIX Architectures
|
Library |
|
|
RTI Architecture |
Format |
Required Environment Variables |
|
(Release & |
|||
|
Debug) |
|
|
|
|
|
|
p5AIX5.3xlc9.0jdk |
N/A |
LD_LIBRARY_PATH=$(NDDSHOME)/lib/<arch>: $(LD_LIBRARY_PATH)a |
|
|
EXTSHM=ONb |
||
64p5AIX5.3xlc9.0jdk |
|||
|
|||
All other supported |
Static |
EXTSHM=ONb |
|
|
LD_LIBRARY_PATH=$(NDDSHOME)/lib/<arch>: $(LD_LIBRARY_PATH) |
||
architectures |
Dynamic |
||
EXTSHM=ONb |
|||
|
|
a.${NDDSHOME} represents the root directory of your Connext installation. ${LD_LIBRARY_PATH} represents the value of the LD_LIBRARY_PATH variable prior to changing it to support Connext. When using nddsjava.jar, the Java vir- tual machine (JVM) will attempt to load release versions of the native libraries (nddsjava.so, nddscore.so, nddsc.so). When using nddsjavad.jar, the JVM will attempt to load debug versions of the native libraries (nddsjava.so, nddscore.so, nddsc.so).
b.See Notes for Using Shared Memory (Section 2.3.1).
Table 2.4
|
Library |
|
RTI Architecture |
Format |
Compiler Flags Used by RTI a |
|
(Static & |
|
|
Dynamic) |
|
|
|
|
|
|
|
|
Release |
|
p5AIX5.3xlc9.0 |
|
|
|
|
|
|
||
|
|
|
|
Debug |
|
|
|
|
|
|
|
|
|
|
|
Release |
|
64p5AIX5.3xlc9.0 |
|
|
|
|
|
|
||
|
|
|
|
Debug |
|
|
|
|
|
|
|
All supported AIX |
Release |
|
architectures for Java |
Debug |
|
|
|
|
a. Connext was built using the 'xlC_r' compiler. See IBM's XLC reference manual for a description of the different com- pilers. For a list of the additional settings (defined by default) for the 'xlC_r' compiler, see the file, /etc/vac.cfg.53.
6
INTEGRITY Platforms
3 |
INTEGRITY Platforms |
|
|
|
|
|
Table 3.1 lists the architectures supported on the INTEGRITY® operating system. |
||||
Table 3.1 Supported INTEGRITY Target Platformsa |
|
|
|||
|
Operating System |
CPU |
Compiler |
IP Stack |
RTI Architecture |
|
Abbreviation |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
INTEGRITY 5.0.11 |
PPC |
multi 4.2.4 |
GHnet2 IP stackb |
|
|
85XX |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
INTEGRITY 10.0.2 c |
x86 |
multi 5.0.6 |
CHNet IPv4 stack |
pentiumInty10.0.2.pcx86 |
a.For use with Windows and Solaris hosts, as supported by Green Hills Software.
b.Kernel must be built using
c.Requires patch_6901.iff from Green Hills Software.
Table 3.2 lists the compiler flags and the libraries you will need to link into your application.
Table 3.2 Building Instructions for INTEGRITY Architectures
API |
Library |
Required RTI Librariesa |
Required |
Required |
|
Format |
System Librariesb |
Compiler Flags |
|||
|
|
||||
|
|
|
|
|
|
|
|
libnddscppz.a |
|
|
|
|
|
libnddscz.a |
|
|
|
|
Static Release |
libnddscorez.a |
|
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
|
librticonnextmsgcppz.a |
|
|
|
|
|
|
|
|
|
C++ |
|
libnddscppzd.a |
|
|
|
|
libnddsczd.a |
|
|
||
|
|
libnddscorezd.a |
|
|
|
|
Static Debug |
(libnddscppzd.dba)c |
|
|
|
|
(libnddsczd.dba)c |
|
|
||
|
|
(libnddscorezd.dba)c |
libsocket.a |
RTI_INTY |
|
|
|
For Connext Messaging, also include: |
|||
|
|
libnet.a |
|||
|
|
||||
|
|
librticonnextmsgcppzd.a |
libposix.a |
||
|
|
|
|||
|
|
libnddscz.a |
|
|
|
|
Static Release |
libnddscorez.a |
|
|
|
|
For Connext Messaging, also include: |
|
|
||
|
|
|
|
||
|
|
librticonnextmsgcz.a |
|
|
|
|
|
|
|
|
|
C |
|
libnddsczd.a |
|
|
|
|
libnddscorezd.a |
|
|
||
|
|
|
|
||
|
Static Debug |
(libnddsczd.dba)c |
|
|
|
|
(libnddscorezd.dba)c |
|
|
||
|
|
For Connext Messaging, also include: |
|
|
|
|
|
librticonnextmsgczd.a |
|
|
|
|
|
|
|
|
a.The Connext C/C++ libraries are located in $(NDDSHOME)/lib/<architecture>/. (where $(NDDSHOME) is where Connext is installed, such as /local/rti/ndds.5.0.x)
b.Transports (other than the default IP transport) such as StarFabric may require linking in additional libraries. For further details, see the online documentation or contact support@rti.com.
c.The *.dba files contain the debugging information. You can link without these, as long as they are located in the same directory as the matching *d.a file (so that the MULTI® IDE can find the debug information).
7
Table 3.3 provides details on the environment variables required to be set at run time for an INTEGRITY architecture.
Table 3.3 Running Instructions for INTEGRITY Architectures
RTI Architecture |
Required Environment Variables |
|
|
|
|
All INTEGRITY architectures |
None |
|
|
Table 3.4 provides details on how the libraries were built. This table is provided strictly for informational purposes; you do not need to use these parameters to compile your application. You may find this information useful if you are involved in any
Table 3.4
RTI Architecture |
Library |
Compiler Flags Used by RTI |
|
Format |
|||
|
|
||
|
|
|
|
|
|
|
|
|
Static |
||
|
|||
|
Release |
||
|
|||
pentiumInty10.0.2.pcx86 |
|
||
|
|
||
Static |
|||
|
|||
|
|||
|
Debug |
||
|
|||
|
|
||
|
|
|
|
|
Static |
||
|
|||
|
Release |
||
|
|||
|
|||
|
|
||
Static |
|||
|
|||
|
|||
|
Debug |
||
|
|||
|
|
||
|
|
|
3.1Patch Required for INTEGRITY 10.02 Platform
To run a Connext application on an INTEGRITY 10.0.2 system, you must install patch_6901.iff from Green Hills Software. For more information, please contact your Green Hills Software representative.
3.2Support for
RTI Connext Messaging includes support for the
When using C++, the following platform does not support the
❏
3.3Diagnostics on INTEGRITY Systems
Connext libraries for the INTEGRITY platforms use consolestring(), which prints debugging information to the serial console when available. Using the serial console as opposed to the target I/O window (host I/O) is generally recommended. Host I/O will affect the
INTEGRITY Development Guide.
8
INTEGRITY Platforms
3.4
Connext on INTEGRITY platforms internally relies on the POSIX API for many of its system calls. As a result, any thread calling Connext must be
Furthermore, threads calling Connext must be
3.5Running over IP Backplane on a Dy4
Connext can run on all four CPUs, provided the following hold true:
❏Connext applications on CPUs B, C and D only exchange data with applications on a different CPU or
❏The IP backplane and associated routing has been properly configured. Connext has been tested with the following libraries built into the INTEGRITY kernel: debug, res, load, socket, itcpip, lbp, queue, ifbp, idb, bsl.
3.6
Due to limitations with the API of the InterPeak stack for INTEGRITY 5.0, Connext only supports a single NIC when the InterPeak stack is used. This NIC must be called “eth0”. By default on an INTEGRITY system, this will correspond to the first network card, which can be changed by reconfiguring the kernel. This limitation does not affect the InterNiche stack.
3.7Multicast Support
Multicast is supported on all INTEGRITY 5.0 and 10.0 platforms.
3.8Supported Transports
Shared memory: Supported, enabled by default. To clean up shared memory resources, reboot the kernel.
UDPv4: Supported, enabled by default.
UDPv6: Not supported.
TCP/IPv4: Not supported.
3.8.1Smaller
INTEGRITY's
9
To allow more DomainParticipants to run within the same address space, we reduced the default size of the queue for each receive resource of the shared memory transport. The queue size is reduced to 8 messages (the default for other platforms is 32). This change only applies to INTEGRITY architectures and this default value can be overwritten through the shared memory transport QoS.
3.8.2Using Shared Memory on INTEGRITY Systems
Connext uses the single
To use
Connext will run on a target without the posix_shm_manager, but the POSIX functions will fail and return ENOSYS, and the participants will fail to communicate through shared memory.
To include the POSIX
The project files generated by rtiddsgen for MULTI will create the
1.Specify the path to your INTEGRITY distribution in the _default.gpj
2.Build the project.
3.Before running your Connext application on a target, download the posix_shm_manager file (generated by the build) onto the target.
The POSIX Shared Memory Manager will start automatically after the download and your applications will be able to use shared memory.
Notes:
❏Only one posix_shm_manager is needed on a particular target. INTEGRITY offers the option of building this posix_shm_manager inside the kernel. Please refer to the INTEGRITY documentation.
❏If you are already using shared memory through the POSIX library, there may be a possible conflict.
❏INTEGRITY 5 has two different types of POSIX library: a
3.8.3Shared Memory Limitations on INTEGRITY Systems
If several applications are running on the same INTEGRITY node and are using shared memory, once an application is stopped, it cannot be restarted. When the application is stopped (gracefully or ungracefully), any new application on the same domain index within the same domain will fail to start until the shared memory manager is also restarted.
10
INTEGRITY Platforms
Additionally, if the application is stopped ungracefully, the remaining applications will print several error messages such as the following until Connext purges the stopped application from its database:
Resource Manager send error = 0x9
This error message is logged from INTEGRITY’s POSIX shared memory manager, not from Connext. The error message is benign and will not prevent the remaining applications from communicating with each other or with application on other nodes.
The workaround is to either restart the stopped application with a different participant index or shut down all the other applications and the shared memory manager, then restart everything.
3.9Using rtiddsping and rtiddsspy on PowerPC INTEGRITY Systems
While the RTI libraries for INTEGRITY can be used with any BSP, providing the PowerPC processor falls under the same category (for example, the ppc7400... RTI libraries can be used on any target with a PPC74xx processor), rtiddsping and rtiddsspy are provided as executables, and therefore are
3.10Monotonic Clock Support
The monotonic clock (described in Section 8.6 in the RTI Core Libraries and Utilities User’s Manual) is not supported.
3.11Support for Controlling CPU Core Affinity for RTI Threads
Support for controlling CPU core affinity (described in Section 19.5 in the RTI Core Libraries and Utilities User’s Manual) is not available for INTEGRITY platforms.
3.12Issues with INTEGRITY Systems
3.12.1Delay When Writing to Unreachable Peers
On INTEGRITY systems, if a publishing application’s initial peers list includes a nonexistent (or simply unreachable) host, calls to write() may block for approximately 1 second.
This long block is caused by the stack trying to resolve the invalid/unreachable host. Most IP stacks do not block the sending thread because of this reason, and you may include invalid/ unreachable hosts in your
3.12.2Linking with ‘libivfs.a’ without a File System
If you link your application with libivfs.a and are using a system that does not have a file system, you may notice the application blocks for 2 seconds at
11
3.12.3Compiler Warnings Regarding Unrecognized #pragma Directives
Building Connext projects for INTEGRITY causes the compiler to produce several warnings about #pragma directives not recognized in some Connext header files. For example:
Building default.bld "C:/ndds/ndds.4.4x/include/ndds/dds_c/dds_c_infrastructure.h", line 926: warning: unrecognized #pragma
#pragma warning(push)
^
"C:/ndds/ndds.4.4x/include/ndds/dds_c/dds_c_infrastructure.h", line 927: warning: unrecognized #pragma
#pragma warning(disable:4190)
^
"C:/ndds/ndds.4.4x/include/ndds/dds_c/dds_c_infrastructure.h", line 945: warning: unrecognized #pragma
#pragma warning(pop)
^
These warnings do not compromise the final application produced and can be safely ignored.
3.12.4Warning when Loading Connext Applications on INTEGRITY Systems
When a Connext application compiled with the
"Warning: Program is linked with libc.so POSIX signals and cancellation will not work."
The Connext libraries do not use the additional features provided by the full POSIX implementation, therefore the warning can safely be ignored. This warning is due to the fact that the
12
Linux and Fedora Platforms
4 Linux and Fedora Platforms
First, see the basic instructions for compiling on Linux platforms provided in Section 9.3 in the
RTI Core Libraries and Utilities User’s Manual. The following tables provide supplemental information.
Table 4.1 on page 15 through Table 4.3 on page 16 list the supported Linux and Fedora architectures.
Table 4.4 on page 17 lists the compiler flags and libraries you will need to link into your application. See also: Monotonic Clock Support (Section 4.4).
Table 4.5 on page 18 provides details on the environment variables required to be set at run time for a Linux architecture. When running on
Table 4.6 on page 18 provides details on how the Linux libraries were built. This table is provided strictly for informational purposes; you do not need to use these parameters to compile your application. You may find this information useful if you are involved in any in- depth debugging.
Table 4.7 on page 21 and Table 4.8 on page 22 list additional libraries required when using the optional RTI Secure WAN Transport and RTI TCP Transport, respectively.
4.1Native POSIX Thread Library (NPTL) Requirements
This section applies only to these architectures:
❏ Yellow Dog Linux 4.0: ppc7400Linux2.6gcc3.3.3
To use the above architectures, you must have the development version of Native POSIX Thread Library (NPTL) installed on your host system, and the NPTL libraries on your target system.
❏When you build the application, you must have the development NPTL library installed in / usr/lib/nptl. This library is not installed by default.
❏To see if your system has NPTL installed, look for this directory: /usr/lib/nptl. It should contain these files: libpthread.so and libpthread.a.
If NPTL is not installed, you will need to install a package that includes it, such as nptl- devel. This package is not typically part of a default installation. You can find it either in your original Linux installation media (CD/DVD) or, if you have upgraded your system, through the distribution's update site.
❏When you run the application, it will automatically use the default NPTL library in /lib/ nptl. You do not need the development library installed on the target system.
Note: Make sure the environment variable LD_ASSUME_KERNEL is either not defined at all, or is set to 2.4.20 or higher. The middleware will not run if it is set to less than 2.4.20.1
1. The dynamic loader (ld), is configured by default to load the NPTL library, as long as LD_ASSUME_KERNEL is NOT defined.
13
4.2Multicast Support
Multicast is supported on all Linux and Fedora platforms and is configured out of the box. That is, the default value for the initial peers list (NDDS_DISCOVERY_PEERS) includes a multicast address. See the online documentation for more information.
4.3Supported Transports
Shared memory: Supported and enabled by default. To clean up shared memory resources, reboot the kernel.
UDPv4: Supported and enabled by default.
UDPv6: Supported for all platforms listed in Table 4.1 on page 15 through Table 4.3 on page 16 except SELinux 2.6.32 kernel (ppc4xxFPLinux2.6gcc4.5.1).
The UDPv6 transport is not enabled by default, and the peers list must be modified to support IPv6.
Note: Traffic Class support is only provided on architectures with gcc 4.1.0 or later that support the UDPv6 transport.
TCP/IPv4: Supported on CentOS 5.4 and 5.5, Red Hat Enterprise Linux 4.0 and higher (except Red Hat Enterprise Linux 5.2 with
4.3.1Shared Memory Support
To see a list of shared memory resources in use, please use the 'ipcs' command. To clean up shared memory and shared semaphore resources, please use the 'ipcrm' command.
The shared memory keys used by Connext are in the range of 0x400000. For example:
ipcs
The shared semaphore keys used by Connext are in the range of 0x800000; the shared mutex keys are in the range of 0xb00000. For example:
ipcs
Please refer to the
4.4Monotonic Clock Support
The monotonic clock (described in Section 8.6 in the RTI Core Libraries and Utilities User’s Manual) is supported on all Linux, SUSE, and Fedora 2.6 kernel platforms.
4.5Support for Controlling CPU Core Affinity for RTI Threads
Support for controlling CPU core affinity (described in Section 19.5 in the RTI Core Libraries and Utilities User’s Manual) is available on all supported Linux, SUSE, and Fedora platforms.
Note: The API for controlling CPU core affinity may change in future releases.
4.6Libraries Required for Using RTI Secure WAN Transport APIs
This section is only relevant if you have installed RTI Secure WAN Transport. This feature is not part of the RTI Core Libraries and Utilities. If you choose to use it, it must be downloaded and
14
Linux and Fedora Platforms
installed separately. It is only available on specific architectures. See the RTI Secure WAN Transport Release Notes and RTI Secure WAN Transport Release Notes Installation Guide for details.
To use the WAN or Secure Transport APIs, link against the additional libraries from Table 4.7 on page 21. (Select the files appropriate for your chosen library format.)
4.7Libraries Required for Using RTI TCP Transport APIs
To use the TCP Transport APIs, link against the additional libraries from Table 4.8 on page 22. If you are using RTI TLS Support, see Table 4.9 on page 22. (Select the files appropriate for your chosen library format.)
Table 4.1 Linux Platforms on Cell BE CPUs
Operating System |
CPU |
Compiler |
RTI Architecture |
|
Abbreviation |
||||
|
|
|
||
|
|
|
|
|
|
|
|
|
|
Fedora 12 (2.6.32 kernel) |
Cell BE |
gcc 4.5.1a, glib 2.9 |
cell64Linux2.6gcc4.5.1 |
a. Requires a custom version of gcc 4.5.1.
Table 4.2 Linux Platforms on Intel CPUs
Operating System |
CPU |
Compiler |
RTI Architecture |
|||
Abbreviation |
||||||
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
gcc 4.1.2 |
|
|
i86Linux2.6gcc4.1.2 |
|
|
x86 |
|
|
|
|
|
|
Sun |
Java |
Platform |
i86Linux2.6gcc4.1.2jdk |
||
|
|
|||||
CentOS 5.4, 5.5 (2.6 kernel) |
|
Standard Edition JDK 1.6 |
|
|||
|
gcc 4.1.2 |
|
|
x64Linux2.6gcc4.1.2 |
||
|
|
|
|
|||
|
x64 |
|
|
|
|
|
|
Sun |
Java |
Platform |
x64Linux2.6gcc4.1.2jdk |
||
|
|
|||||
|
|
Standard Edition JDK 1.6 |
|
|||
|
|
gcc 4.4.5 |
|
|
i86Linux2.6gcc4.4.5 |
|
|
x86 |
|
|
|
|
|
|
Sun |
Java |
Platform |
i86Linux2.6gcc4.4.5jdk |
||
|
|
|||||
CentOS 6.0 |
|
Standard Edition JDK 1.6 |
|
|||
|
gcc 4.4.5 |
|
|
x64Linux2.6gcc4.4.5 |
||
|
|
|
|
|||
|
x64 |
|
|
|
|
|
|
Sun |
Java |
Platform |
x64Linux2.6gcc4.4.5jdk |
||
|
|
|||||
|
|
Standard Edition JDK 1.6 |
|
|||
Fedora 12 (2.6.32 kernel) |
x64 |
gcc 4.4.4 |
|
|
x64Linux2.6gcc4.4.4 |
|
|
|
|
|
|
||
Fedora 12 (2.6.32 kernel) with gcc |
x64 |
gcc 4.5.1a |
|
x64Linux2.6gcc4.5.1 |
||
4.5.1 |
|
|
|
|
|
|
|
|
gcc 4.1.1 |
|
|
i86Linux2.6gcc4.1.1 |
|
|
x86 |
|
|
|||
|
Sun Java Platform Stan- |
i86Linux2.6gcc4.1.1jdk |
||||
Red Hat Enterprise Linux 5.0 (2.6 |
|
dard Edition JDK 1.6 |
||||
|
|
|||||
kernel) |
|
gcc 4.1.1 |
|
|
x64Linux2.6gcc4.1.1 |
|
|
x64 |
|
|
|||
|
Sun Java Platform Stan- |
x64Linux2.6gcc4.1.1jdk |
||||
|
|
dard Edition JDK 1.6 |
||||
|
|
|
||||
|
|
|
|
|
|
|
|
|
gcc 4.1.2 |
|
|
i86Linux2.6gcc4.1.2 |
|
|
x86 |
|
|
|
|
|
Red Hat Enterprise Linux 5.1, 5.2, |
Sun |
Java |
Platform |
i86Linux2.6gcc4.1.2jdk |
||
|
||||||
|
Standard Edition JDK 1.6 |
|
||||
5.4, 5.5 (2.6 kernel) |
|
|
|
|
|
|
|
gcc 4.1.2 |
|
|
x64Linux2.6gcc4.1.2 |
||
|
x64 |
|
|
|
|
|
|
Sun |
Java |
Platform |
x64Linux2.6gcc4.1.2jdk |
||
|
|
|||||
|
|
Standard Edition JDK 1.6 |
|
15
Table 4.2 Linux Platforms on Intel CPUs
Operating System |
CPU |
Compiler |
RTI Architecture |
|||
Abbreviation |
||||||
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Red Hat Enterprise Linux 5.2 with |
|
gcc 4.1.2 |
|
|
i86Linux2.6gcc4.1.2 |
|
x86 |
|
|
|
|
||
Sun |
Java |
Platform |
|
|||
|
i86Linux2.6gcc4.1.2jdk |
|||||
|
|
Standard Edition JDK 1.6 |
|
|||
|
|
gcc 4.4.5 |
|
|
i86Linux2.6gcc4.4.5 |
|
|
x86 |
|
|
|
|
|
Red Hat Enterprise Linux 6.0, 6.1 (2.6 |
Sun |
Java |
Platform |
i86Linux2.6gcc4.4.5jdk |
||
|
||||||
|
Standard Edition JDK 1.6 |
|
||||
kernel) |
|
|
|
|
|
|
|
gcc 4.4.5 |
|
|
x64Linux2.6gcc4.4.5 |
||
|
x64 |
|
|
|
|
|
|
Sun |
Java |
Platform |
x64Linux2.6gcc4.4.5jdk |
||
|
|
|||||
|
|
Standard Edition JDK 1.6 |
|
|||
|
|
gcc 4.1.0 |
|
|
i86Suse10.1gcc4.1.0 |
|
|
|
|
|
|||
|
x86 |
Sun Java Platform Stan- |
|
|||
|
dard Edition JDK 1.5 and |
i86Suse10.1gcc4.1.0jdk |
||||
|
|
|||||
SUSE Linux Enterprise Server 10.1 |
|
1.6 |
|
|
|
|
(2.6 kernel) |
|
gcc 4.1.0 |
|
|
x64Suse10.1gcc4.1.0 |
|
|
|
|
|
|||
|
x64 |
Sun Java Platform Stan- |
|
|||
|
dard Edition JDK 1.5 and |
x64Suse10.1gcc4.1.0jdk |
||||
|
|
|||||
|
|
1.6 |
|
|
|
|
|
|
|
|
|
|
|
|
|
gcc 4.4.3 |
|
|
i86Linux2.6gcc4.4.3 |
|
|
x86 |
|
|
|||
|
Sun Java Platform Stan- |
i86Linux2.6gcc4.4.3jdk |
||||
|
|
dard Edition JDK 1.6 |
||||
Ubuntu Server 10.04 (LTS) |
|
|
||||
|
|
|
|
|
||
|
gcc 4.4.3 |
|
|
x64Linux2.6gcc4.4.3 |
||
|
|
|
|
|||
|
x64 |
|
|
|||
|
Sun Java Platform Stan- |
x64Linux2.6gcc4.4.3jdk |
||||
|
|
dard Edition JDK 1.6 |
||||
|
|
|
||||
|
|
|
|
|
|
|
Wind River Linux 4 |
x64 |
gcc 4.4.1 |
|
|
x64WRLinux2.6gcc4.4.1 |
|
(2.6 kernel) |
|
|
||||
|
|
|
|
|
||
|
|
|
|
|
|
a. Requires a custom version of gcc 4.5.1.
Table 4.3 Linux Platforms on PowerPC CPUs
Operating System |
CPU |
Compiler |
RTI Architecture |
||
Abbreviation |
|||||
|
|
|
|
||
|
|
|
|
|
|
Freescale P2020RDB |
PPC 85xx |
Freescale |
gcc.4.3.74 |
ppc85xxLinux2.6gcc4.3.2 |
|
(2.6.32 kernel) |
|
based on gcc.4.3.2 |
|
||
SELinux (2.6.32 kernel) |
PPC 4xxFP |
gcc 4.5.1a, glibc 2.9 |
ppc4xxFPLinux2.6gcc4.5.1 |
||
Wind River Linux 3 |
PPC 85xx |
gcc 4.3.2 |
|
ppc85xxWRLinux2.6gcc4.3.2 |
|
|
|
|
|
|
|
Yellow Dog® Linux 4.0 |
PPC 74xx (such |
gcc 3.3.3 |
|
ppc7400Linux2.6gcc3.3.3 |
|
(2.6 kernel) |
as 7410) |
|
|
|
a. Requires a custom version of gcc 4.5.1.
16
Linux and Fedora Platforms
Table 4.4 Building Instructions for Linux and Fedora Architectures
|
Library |
Required |
Required |
Required |
|
API |
RTI Libraries or |
||||
Format |
System Libraries |
Compiler Flags |
|||
|
Jar Filesa |
||||
|
|
|
|
||
|
|
|
|
|
|
|
|
libnddscppz.a |
|
|
|
|
Static |
libnddscz.a |
|
|
|
|
libnddscorez.a |
|
|
||
|
Release |
|
|
||
|
For Connext Messaging, also include: |
|
|
||
|
|
|
|
||
|
|
librticonnextmsgcz.a |
|
|
|
|
|
|
For all *Linux2.6gcc3* |
|
|
|
|
libnddscppzd.a |
|
||
|
Static |
libnddsczd.a |
architectures: |
|
|
|
libnddscorezd.a |
|
|||
|
Debug |
||||
|
For Connext Messaging, also include: |
||||
|
|
||||
|
|
librticonnextmsgcppzd.a |
|||
C++ |
|
|
|||
|
|
|
|
||
|
libnddscpp.so |
|
|||
|
|
|
|||
|
|
libnddsc.so |
All other Linux |
||
|
Dynamic |
||||
|
libnddscore.so |
architectures: |
|||
|
Release |
|
|||
|
For Connext Messaging, also include: |
|
|||
|
|
|
|||
|
|
librticonnextmsgcpp.so |
|
||
|
|
libnddscppd.so |
|
|
|
|
Dynamic |
libnddscd.so |
|
|
|
|
libnddscored.so |
|
|
||
|
Debug |
|
|
||
|
For Connext Messaging, also include: |
|
|
||
|
|
|
|
||
|
|
librticonnextmsgcppd.so |
|
|
|
|
|
|
|
|
|
|
|
libnddscz.a |
|
|
|
|
Static |
libnddscorez.a |
|
|
|
|
Release |
For Connext Messaging, also include: |
|
|
|
|
|
librticonnextmsgcz.a |
For all *Linux2.6gcc3* |
|
|
|
|
|
|
||
|
|
libnddsczd.a |
architectures: |
|
|
|
Static |
libnddscorezd.a |
|||
|
Debug |
For Connext Messaging, also include: |
|||
|
|||||
|
|
librticonnextmsgczd.a |
|||
C |
|
|
|||
|
|
|
|
||
|
libnddsc.so |
|
|||
|
|
|
|||
|
Dynamic |
libnddscore.so |
All other Linux |
||
|
|||||
|
Release |
For Connext Messaging, also include: |
architectures: |
||
|
|
||||
|
|
librticonnextmsgc.so |
|
||
|
|
|
|
||
|
|
libnddscd.so |
|
||
|
|
|
|
||
|
Dynamic |
libnddscored.so |
|
|
|
|
Debug |
For Connext Messaging, also include: |
|
|
|
|
|
librticonnextmsgcd.so |
|
|
|
|
|
|
|
|
|
|
|
nddsjava.jar |
|
|
|
|
Release |
For Connext Messaging, also include: |
|
|
|
Java |
|
rticonnextmsg.jar |
N/A |
None required |
|
|
|
||||
|
nddsjavad.jar |
||||
|
|
|
|
||
|
Debug |
For Connext Messaging, also include: |
|
|
|
|
|
rticonnextmsgd.jar |
|
|
|
|
|
|
|
|
a. RTI C/C++ libraries are in $(NDDSHOME)/lib/<architecture>/. RTI Java files are in $(NDDSHOME)/class/ (where $(NDDSHOME) is where Connext is installed, such as /local/rti/ndds.5.0.x).
17
Table 4.5 Running Instructions for Linux and Fedora Architectures
RTI Architecture |
Library Format |
Environment Variables |
|
|
|
|
|
All supported Linux/ |
|
LD_LIBRARY_PATH= ${NDDSHOME}/lib/<architecture>: |
|
N/A |
${LD_LIBRARY_PATH}a |
||
SUSE/Fedora |
Note: For all |
||
architectures for Java |
|
||
|
|||
|
|
||
|
|
|
|
All other supported |
Static (Release & |
None required |
|
Debug) |
|||
Linux/SUSE/Fedora |
|
||
|
|
||
Dynamic (Release |
LD_LIBRARY_PATH= ${NDDSHOME}/lib/<architecture>: |
||
architectures |
|||
& Debug) |
${LD_LIBRARY_PATH}a |
||
|
a. ${NDDSHOME} represents the root directory of your Connext installation. ${LD_LIBRARY_PATH} represents the value of the LD_LIBRARY_PATH variable prior to changing it to support Connext. When using nddsjava.jar, the Java virtual machine (JVM) will attempt to load release versions of the native libraries. When using nddsjavad.jar, the JVM will attempt to load debug versions of the native libraries.
Table 4.6
|
Library |
|
|
RTI Architecture |
Format |
Compiler Flags Used by RTI |
|
(Static & |
|||
|
|
||
|
Dynamic) |
|
|
|
|
|
|
|
|
|
|
|
|
||
|
Release |
||
|
|||
|
|
||
cell64Linux2.6gcc4.5.1 |
|
||
|
|
||
|
|||
|
|
||
|
Debug |
||
|
|||
|
|
||
|
|
||
|
|
|
|
|
|
||
|
Release |
||
|
|||
|
|
||
i86Linux2.6gcc4.1.1 |
|
||
|
|
||
|
Debug |
||
|
|
||
|
|
|
|
|
|
||
|
Release |
||
|
|||
|
|
||
i86Linux2.6gcc4.1.2 |
|
||
|
|
||
|
Debug |
||
|
|
||
|
|
|
|
|
|
||
|
Release |
||
|
|||
|
|
||
i86Linux2.6gcc4.4.3 |
|
||
|
|
||
|
Debug |
||
|
|
||
|
|
|
18
|
|
|
Linux and Fedora Platforms |
|
Table 4.6 |
|
|||
|
|
|
|
|
|
|
Library |
|
|
|
RTI Architecture |
Format |
Compiler Flags Used by RTI |
|
|
(Static & |
|
||
|
|
|
|
|
|
|
Dynamic) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
gcc |
|
|
|
Release |
|
|
|
|
|
||
|
|
|
|
|
|
i86Linux2.6gcc4.4.5 |
|
|
|
|
|
|
gcc |
|
|
|
Debug |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Release |
|
|
|
|
|
||
|
|
|
|
|
|
i86Suse10.1gcc4.1.0 |
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
Debug |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Release |
|
|
|
ppc7400Linux2.6gcc3.3.3 a |
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
Debug |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Release |
|
|
|
ppc4xxFPLinux2.6gcc4.3.3 |
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
Debug |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Release |
|
|
|
ppc4xxFPLinux2.6gcc4.5.1 |
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
Debug |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Release |
|
|
|
ppc85xxLinux2.6gcc4.3.2 |
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
Debug |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Release |
|
|
|
|
|
||
|
|
|
|
|
|
ppc85xxWRLinux2.6gcc4.3.2 |
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
Debug |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
19
Table 4.6
|
Library |
|
|
RTI Architecture |
Format |
Compiler Flags Used by RTI |
|
(Static & |
|||
|
|
||
|
Dynamic) |
|
|
|
|
|
|
|
|
|
|
|
|
||
|
Release |
||
|
|||
|
|
||
x64Linux2.6gcc4.1.1a |
|
||
|
|
||
|
|||
|
|
||
|
Debug |
||
|
|||
|
|
||
|
|
||
|
|
|
|
|
|
||
|
Release |
||
|
|||
|
|
||
x64Linux2.6gcc4.1.2 a |
|
||
|
|
||
|
|||
|
|
||
|
Debug |
||
|
|||
|
|
||
|
|
||
|
|
|
|
|
|
||
|
Release |
||
x64Linux2.6gcc4.3.4 |
|
||
|
|
||
|
|||
|
|
||
|
Debug |
||
|
|
||
|
|
|
|
|
|
||
|
Release |
||
|
|||
|
|
||
x64Linux2.6gcc4.4.4 a |
|
||
|
|
||
|
Debug |
||
|
|
||
|
|
|
|
|
|
||
|
Release |
||
|
|||
|
|
||
x64Linux2.6gcc4.4.3 |
|
||
|
|
||
|
|||
|
|
||
|
Debug |
||
|
|||
|
|
||
|
|
||
|
|
|
|
|
|
gcc |
|
|
Release |
||
|
|||
|
|
||
x64Linux2.6gcc4.4.5 |
|
||
|
|
gcc |
|
|
Debug |
||
|
|
||
|
|
|
20
|
|
|
Linux and Fedora Platforms |
|
Table 4.6 |
|
|||
|
|
|
|
|
|
|
Library |
|
|
|
RTI Architecture |
Format |
Compiler Flags Used by RTI |
|
|
(Static & |
|
||
|
|
|
|
|
|
|
Dynamic) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Release |
|
|
|
|
|
|
|
|
x64Linux2.6gcc4.5.1 |
|
|
|
|
|
|
||
|
|
Debug |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Release |
|
|
|
|
|
||
|
|
|
|
|
|
x64Suse10.1gcc4.1.0 |
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
Debug |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Release |
|
|
|
x64WRLinux2.6gcc4.4.1 |
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
Debug |
|
|
|
|
|
|
|
|
|
|
|
|
|
All supported Linux and |
Dynamic |
|
|
|
Release |
|
|
|
|
Fedora architectures for Java |
|
|
|
|
Dynamic |
|
|
|
|
(*jdk) |
|
||
|
|
Debug |
|
|
a. The C++ libnddscpp dynamic libraries were linked using g++; the C dynamic libraries, i.e., libnddscore and libnddsc, were linked using gcc.
Table 4.7 Additional Libraries for using RTI Secure WAN Transport APIs on
Library Format |
RTI Secure WAN Transport Librariesa |
OpenSSL Librariesb |
|
|
|
|
|
Dynamic Release |
libnddstransportwan.so |
|
|
libnddstransporttls.so |
|
||
|
|
||
|
|
|
|
Dynamic Debug |
libnddstransportwand.so |
|
|
libnddstransporttlsd.so |
libssl.so |
||
|
|||
|
|
libcrypto.so |
|
Static Release |
libnddstransporttlsz.a |
||
libnddstransporttlszd.a |
|
||
|
|
||
|
|
|
|
Static Debug |
libnddstransportwanz.a |
|
|
libnddstransportwanzd.a |
|
||
|
|
||
|
|
|
a.The libraries are located in <wan install dir>/lib/<architecture>/., where <wan install dir> is where you installed RTI Secure WAN Transport, such as /local/rti/ndds.5.0.x.
b.These libraries are located <openssl install dir>/<architecture/lib, where <openssl install dir> is where you installed OpenSSL, such
21
Table 4.8 Additional Libraries for using RTI TCP Transport APIs on
Library Format |
RTI TCP Transport Librariesa |
|
|
Dynamic Release |
libnddstransporttcp.so |
|
|
Dynamic Debug |
libnddstransporttcpd.so |
|
|
Static Release |
libnddstransporttcpz.a |
|
|
Static Debug |
libnddstransporttcpzd.a |
|
|
a. The libraries are located in <Connext install dir>/lib/<architecture>/., where <Connext install dir> is where you installed Connext, such as /local/rti/ndds.5.0.x.
Table 4.9 Additional Libraries for using RTI TCP Transport APIs on
Library Format |
RTI TLS Librariesa |
|
|
|
|
Dynamic Release |
libnddstls.so |
|
|
|
|
Dynamic Debug |
libnddstlsd.so |
|
|
|
|
Static Release |
libnddstlsz.a |
|
|
|
|
Static Debug |
libnddstlszd.a |
|
|
|
|
OpenSSL Libraries |
libssl.so |
|
libcrypto.so |
||
|
||
|
|
a. The libraries are located in <TLS install dir>/lib/<architecture>/., where <TLS install dir> is where you installed RTI TLS Support, such as /local/rti/ndds.5.0.x.
22
LynxOS Platforms
5 LynxOS Platforms
Table 5.1 on page 24 lists the architectures supported on LynxOS® operating systems.
Table 5.2 on page 24 and Table 5.3 on page 25 list the compiler flags and libraries you will need to link into your application.
Table 5.4 on page 25 provides details on the environment variables required to be set at run time for a LynxOS architecture.
Table 5.5 on page 25 provides details on how the libraries were built by RTI. This table is provided strictly for informational purposes; you do not need to use these parameters to compile your application. You may find this information useful if you are involved in any in- depth debugging.
Note: The Java API is not supported on LynxOS platforms in Connext 5.0.0. If you would like Java to be supported on LynxOS, please contact your RTI account manager.
5.1Multicast Support
Multicast is supported on all LynxOS platforms, but it is not configured out of the box. That is, the default value for the initial peers list (NDDS_DISCOVERY_PEERS) does not include a multicast address.
To configure a LynxOS target to use multicast, you need to add routes so multicast packets will be sent via the proper network interfaces. To add routes, use the "route add" command. The specific parameters depend on how the target is configured, the name of the interface (such as elxl0 in the example below), etc. Please refer to your LynxOS documentation for details on the "route add" command.
For example:
route add
5.2Supported Transports
Shared memory: Supported and enabled by default.
UDPv4: Supported and enabled by default.
UDPv6: Not supported.
TCP/IPv4: Not supported.
5.2.1Shared Memory Support
To see a list of shared memory resources in use, use the 'ipcs' command. To clean up shared memory and shared semaphore resources, use the 'ipcrm' command.
23
The shared memory keys used by Connext are in the range of 0x400000. For example:
ipcs
The shared semaphore keys used by Connext are in the range of 0x800000; the shared mutex keys are in the range of 0xb00000. For example:
ipcs
Please refer to the
5.3Monotonic Clock Support
The monotonic clock (described in Section 8.6 in the RTI Core Libraries and Utilities User’s Manual) is not supported on LynxOS platforms.
5.4Support for Controlling CPU Core Affinity for RTI Threads
Support for controlling CPU core affinity (described in Section 19.5 in the RTI Core Libraries and Utilities User’s Manual) is not available for LynxOS platforms.
Table 5.1 Supported LynxOS Platforms
Operating |
CPU |
Compiler |
RTI Architecture |
|
System |
||||
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
x86 |
gcc 3.2.2 |
i86Lynx4.0.0gcc3.2.2 |
|
|
|
|
|
|
LynxOS 4.0 |
PPC 74xx (such as 7410) |
gcc 3.2.2 |
ppc7400Lynx4.0.0gcc3.2.2 |
|
|
|
|
||
PPC 604, |
gcc 3.2.2 |
ppc750Lynx4.0.0gcc3.2.2 |
||
|
||||
|
PPC 7XX (such as 750) |
|||
|
|
|
||
|
|
|
|
|
LynxOS 4.2 |
PPC 74xx (such as 7410) |
gcc 3.2.2 |
ppc7400Lynx4.2.0gcc3.2.2 |
|
|
|
|
|
|
LynxOS 5.0 |
PPC 74xx (such as 7410) |
gcc 3.4.3 |
ppc7400Lynx5.0.0gcc3.4.3 |
|
|
|
|
|
Table 5.2 Building Instructions for LynxOS Architectures (Connext Libraries)
API |
Library Formata |
Required RTI Libraries b |
|
|
|
|
|
libnddscppz.a |
|
Static Release |
libnddscz.a |
|
libnddscorez.a |
|
|
|
|
|
|
For Connext Messaging, also include: librticonnextmsgcppz.a |
|
|
|
|
|
libnddscppzd.a |
|
Static Debug |
libnddsczd.a |
|
libnddscorezd.a |
|
|
|
|
C++ |
|
For Connext Messaging, also include: librticonnextmsgcppzd.a |
|
|
|
|
libnddscpp.so |
|
|
|
|
|
Dynamic Release |
libnddsc.so |
|
libnddscore.so |
|
|
|
|
|
|
For Connext Messaging, also include: librticonnextmsgcpp.so |
|
|
|
|
|
libnddscppd.so |
|
Dynamic Debug |
libnddscd.so |
|
libnddscored.so |
|
|
|
|
|
|
For Connext Messaging, also include: librticonnextmsgcppd.so |
|
|
|
24
LynxOS Platforms
Table 5.2 Building Instructions for LynxOS Architectures (Connext Libraries)
API |
Library Formata |
Required RTI Libraries b |
|
|
|
|
|
libnddscz.a |
|
Static Release |
libnddscorez.a |
|
|
For Connext Messaging, also include: librticonnextmsgcz.a |
|
|
|
|
|
libnddsczd.a |
|
Static Debug |
libnddscorezd.a |
C |
|
For Connext Messaging, also include: librticonnextmsgczd.a |
|
|
|
|
libnddsc.so |
|
|
|
|
|
Dynamic Release |
libnddscore.so |
|
|
For Connext Messaging, also include: librticonnextmsgc.so |
|
|
|
|
|
libnddscd.so |
|
Dynamic Debug |
libnddscored.so |
|
|
For Connext Messaging, also include: librticonnextmsgcd.so |
|
|
|
a.Dynamic libraries are not supported under
b.The Connext C/C++ libraries are located in $(NDDSHOME)\lib\<architecture>\. (where $(NDDSHOME) is where Connext is installed, such as c:\rti\ndds.5.0.x)
Table 5.3 Building Instructions for LynxOS Architectures (System Libraries and Compiler Flags)
API |
RTI Architecture |
Required System Libraries |
Required Compiler Flags |
|
|
|
|
|
|
|
|
|
i86Lynx4.0.0gcc3.2.2 |
|
|
|
|
|
|
C |
ppc7400Lynx4.0.0gcc3.2.2 |
|
|
|
|
|
|
and |
ppc7400Lynx4.2.0gcc3.2.2 |
||
C++ |
|
|
|
ppc7400Lynx5.0.0gcc3.4.3 |
|
|
|
|
|
|
|
|
|
|
|
|
ppc750Lynx4.0.0gcc3.2.2 |
|
|
|
|
|
|
Table 5.4 Running Instructions for LynxOS Architectures
|
RTI Architecture |
Library Format |
Required Environment Variables |
||
|
(Release & Debug) |
||||
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
All supported LynxOS |
Static |
|
None required |
|
|
|
|
|
|
|
|
|
|
|
LD_LIBRARY_PATH= ${NDDSHOME}/lib/<architecture>: |
|
|
architectures |
Dynamic |
|
||
|
|
${LD_LIBRARY_PATH} |
|||
|
|
|
|
|
|
|
|
|
|
|
|
Table 5.5 |
|||||
|
|
|
|
|
|
|
|
|
Library |
|
|
|
RTI Architecture |
|
Format |
|
Compiler Flags Used by RTI |
|
|
(Static & |
|
||
|
|
|
|
|
|
|
|
|
Dynamic) |
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
Release |
||
|
|
|
|||
|
|
|
|
||
|
i86Lynx4.0.0gcc3.2.2 |
|
|
||
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
||
|
|
|
Debug |
||
|
|
|
|||
|
|
|
|
||
|
|
|
|
||
|
|
|
|
|
|
25
Table 5.5
|
Library |
|
|
RTI Architecture |
Format |
Compiler Flags Used by RTI |
|
(Static & |
|||
|
|
||
|
Dynamic) |
|
|
|
|
|
|
|
|
||
|
|
||
|
Release |
||
|
|
||
ppc7400Lynx4.0.0gcc3.2.2 |
|
||
|
|
||
|
|||
|
|
||
|
|
||
|
Debug |
||
|
|
||
|
|
||
|
|
|
|
|
|
||
|
|
||
|
Release |
||
|
|
||
ppc7400Lynx4.2.0gcc3.2.2 |
|
||
|
|
||
|
|||
|
|
||
|
|
||
|
Debug |
||
|
|
||
|
|
||
|
|
|
|
|
|
||
|
|
||
|
Release |
||
|
|
||
ppc7400Lynx5.0.0gcc3.4.3 |
|
||
|
|
||
|
|||
|
|
||
|
|
||
|
Debug |
||
|
|
||
|
|
||
|
|
|
|
|
|
||
|
Release |
||
|
|||
|
|
||
ppc750Lynx4.0.0gcc3.2.2 |
|
||
|
|
||
|
|||
|
|
||
|
Debug |
||
|
|||
|
|
||
|
|
||
|
|
|
26
Mac OS Platforms
6 Mac OS Platforms
Table 6.1 on page 28 lists the architectures supported on Mac OS operating systems.
Table 6.2 on page 28 lists the compiler flags and libraries you will need to link into your application.
Table 6.3 on page 29 provides details on the environment variables required to be set at run time for a Mac OS architecture.
Table 6.4 on page 30 provides details on how the libraries were built by RTI. This table is provided strictly for informational purposes; you do not need to use these parameters to compile your application. You may find this information useful if you are involved in any in- depth debugging.
To use rtiddsgen to create files for a Java target:
By default, rtiddsgen uses JRE 1.4, which is distributed with the RTI Core Libraries and Utilities in $NDDSHOME/jre. To use rtiddsgen with Java 1.6, you need
1.Download the latest
2.Unpack the Xalan distribution file in a location of your choice.
3.Set the XALANHOME environment variable to the Xalan installation directory.
4.Set the NDDSJREHOME environment variable to the JRE 1.6 installation directory.
5.Run rtiddsgen using the script located in $NDDSHOME/scripts.
6.1Multicast Support
Multicast is supported on Mac OS platforms and is configured out of the box. That is, the default value for the initial peers list (NDDS_DISCOVERY_PEERS) includes a multicast address. See the online documentation for more information.
6.2Supported Transports
Shared memory: Supported and enabled by default.
UDPv4: Supported and enabled by default.
UDPv6: Not supported.
TCP/IPv4: Not supported.
6.3Monotonic Clock Support
The monotonic clock (described in Section 8.6 in the RTI Core Libraries and Utilities User’s Manual) is not supported on Mac OS platforms.
6.4Support for Controlling CPU Core Affinity for RTI Threads
Support for controlling CPU core affinity (described in Section 19.5 in the RTI Core Libraries and Utilities User’s Manual) is not available for Mac OS platforms.
27
Table 6.1 Mac OS Platforms
|
Operating |
|
CPU |
|
Compiler |
|
|
RTI Architecture |
|||
|
System |
|
|
|
|
|
Abbreviation |
||||
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
Mac OS X 10.6 |
x64 |
|
gcc 4.2.1 |
|
x64Darwin10gcc4.2.1 |
|||||
|
|
|
|
|
|
|
|||||
|
|
Java SE 1.6 for Mac OS |
|
x64Darwin10gcc4.2.1jdk |
|||||||
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
||
Table 6.2 Building Instructions for Mac OS Architectures |
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Library |
|
|
Required RTI Librariesa |
Required |
|
Required Compiler |
|||
|
API |
|
|
System |
|
||||||
|
|
Format |
|
|
|
|
Libraries |
|
Flags |
||
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
libnddscppz.a |
|
|
|
|
|
|
|
|
|
|
|
libnddscz.a |
|
|
|
|
|
|
|
Static Release |
|
libnddscorez.a |
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
librticonnextmsgcppz.a |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
libnddscppzd.a |
|
|
|
|
|
|
|
|
|
|
|
libnddsczd.a |
|
|
|
|
|
|
|
Static Debug |
|
libnddscorezd.a |
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
|
|
C++ |
|
|
|
|
librticonnextmsgcppzd.a |
|
||||
|
|
|
|
|
libnddscpp.dylib |
|
|||||
|
|
|
|
|
|
|
|||||
|
|
Dynamic |
|
|
libnddsc.dylib |
|
|
|
|
||
|
|
|
|
libnddscore.dylib |
|
|
|
|
|||
|
|
Release |
|
|
For Connext Messaging, also include: |
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
librticonnextmsgcpp.dylib |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
libnddscppd.dylib |
|
|
|
|
|
|
|
Dynamic |
|
|
libnddscd.dylib |
|
|
|
|
||
|
|
|
|
libnddscored.dylib |
|
|
|
|
|||
|
|
Debug |
|
|
For Connext Messaging, also include: |
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
librticonnextmsgcppd.dylib |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
28
|
|
|
|
|
Mac OS Platforms |
Table 6.2 Building Instructions for Mac OS Architectures |
|
|
|||
|
|
|
|
|
|
|
|
Library |
Required RTI Librariesa |
Required |
Required Compiler |
|
API |
System |
|||
|
|
Format |
|
Libraries |
Flags |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
libnddscz.a |
|
|
|
|
Static Release |
libnddscorez.a |
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
|
librticonnextmsgcz.a |
|
|
|
|
|
|
|
|
|
|
|
libnddsczd.a |
|
|
|
|
Static Debug |
libnddscorezd.a |
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
C |
|
librticonnextmsgczd.a |
||
|
|
libnddsc.dylib |
|||
|
|
|
|||
|
|
Dynamic |
libnddscore.dylib |
|
|
|
|
|
|
|
|
|
|
Release |
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
librticonnextmsgc.dylib |
|
|
|
|
|
|
|
|
|
|
|
libnddscd.dylib |
|
|
|
|
Dynamic |
libnddscored.dylib |
|
|
|
|
|
|
|
|
|
|
Debug |
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
librticonnextmsgcd.dylib |
|
|
|
|
|
|
|
|
|
|
|
nddsjava.jar |
|
|
|
|
Release |
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
Java |
|
rticonnextmsg.jar |
N/A |
None required |
|
|
|
|||
|
|
nddsjavad.jar |
|||
|
|
|
|
|
|
|
|
Debug |
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
rticonnextmsgd.jar |
|
|
|
|
|
|
|
|
a. The Connext C/C++ libraries are located in $(NDDSHOME)/lib/<architecture>/. (where $(NDDSHOME) is where Connext is installed, such as /local/rti/ndds.5.0.x)
Table 6.3 Running Instructions for Mac OS Architectures
|
Library |
|
|
RTI Architecture |
Format |
Required Environment Variables |
|
(Release & |
|||
|
|
||
|
Debug) |
|
|
|
|
|
|
|
Static |
None required |
|
x64Darwin10gcc4.2.1 |
|
|
|
Dynamic |
DYLD_LIBRARY_PATH=${NDDSHOME}/lib/ |
||
|
x64Darwin10gcc4.2.1:${DYLD_LIBRARY_PATH}a |
||
|
|
||
x64Darwin10gcc4.2.1jdk |
N/A |
DYLD_LIBRARY_PATH=${NDDSHOME}/lib/ |
|
x64Darwin10gcc4.2.1jdk:${DYLD_LIBRARY_PATH}a |
|||
|
|
a. ${NDDSHOME} represents the root directory of your Connext installation. ${LD_LIBRARY_PATH} represents the value of the LD_LIBRARY_PATH variable prior to changing it to support Connext. When using nddsjava.jar, the Java virtual machine (JVM) will attempt to load release versions of the native libraries (nddsjava.dylib, nddscore.dylib, nddsc.dylib). When using nddsjavad.jar, the JVM will attempt to load debug versions of the native libraries (nddsjava.dylib, nddscore.dylib, nddsc.dylib).
29
Table 6.4
|
Library |
|
|
RTI Architecture |
Format |
Compiler Flags Used by RTI |
|
(Static & |
|||
|
|
||
|
Dynamic) |
|
|
|
|
|
|
|
|
|
|
|
|
||
|
Release |
||
x64Darwin10gcc4.2.1 |
|
||
|
|
||
|
|||
|
|
||
|
Debug |
||
|
|
||
|
|
|
|
x64Darwin10gcc4.2.1jdk |
Release |
||
|
|
||
Debug |
|||
|
|||
|
|
|
30
QNX Platforms
7 QNX Platforms
Table 7.1 on page 32 lists the architectures supported on QNX operating systems. Table 7.2 on page 33 lists the libraries you will need to link into your application.
Table 7.3 on page 34 provides details on the environment variables required to be set at run time for a QNX architecture.
Table 7.4 on page 34 provides details on how the QNX libraries were built.
7.1Required Change for Building with C++ Libraries for QNX
For QNX architectures, starting in release 5.0.0: The C++ libraries are now built without the
❏Do not use
❏It is no longer necessary to use
7.2Multicast Support
Multicast is supported on QNX platforms and is configured out of the box. That is, the default value for the initial peers list (NDDS_DISCOVERY_PEERS) includes a multicast address. See the online documentation for more information.
7.3Supported Transports
Shared Memory: Supported and enabled by default.
To see a list of the shared memory resources, enter:
To clean up the shared memory resources, remove the files listed in dev/shmem/. The shared resource names used by Connext begin with
'ls /dev/sem/RTIOsapiSharedMemorySemMutex*'
To clean up the shared semaphore resources, remove the files listed in /dev/sem/'.
The permissions for the semaphores created by Connext are modified by the process' umask value. If you want to have shared memory support between different users, run the command "umask 000" to change the default umask value to 0 before running your Connext application.
UDPv4: Supported and enabled by default.
UDPv6: Supported. The transport is not enabled by default; the peers list must be modified to support IPv6. No Traffic Class support.
To use the UDPv6 transport, the network stack must provide IPv6 capability. Enabling UDPv6 may involve switching the network stack server and setting up IPv6 route entries.
TCP/IPv4: Supported on QNX 6.5 platforms.
TLS: Supported on QNX 6.5 platforms.
31
7.4Monotonic Clock Support
The monotonic clock (described in Section 8.6 in the RTI Core Libraries and Utilities User’s Manual) is supported on QNX platforms.
7.5Support for Controlling CPU Core Affinity for RTI Threads
Support for controlling CPU core affinity (described in Section 19.5 in the RTI Core Libraries and Utilities User’s Manual) is not available for QNX platforms.
7.6Restarting Applications on QNX Systems
Due to a limitation in the POSIX API, if a process is unexpectedly interrupted in the middle of a critical section of code that is protected by a shared mutex semaphore, the OS is not able to automatically release the semaphore, making it impossible to reuse it by another application.
The Connext
It is possible under some extreme circumstances that if one application crashes or terminates ungracefully while executing code inside a critical section, the other applications sharing the same resource will not be able to continue their execution. If this situation occurs, you must manually delete the
Table 7.1 Supported QNX Platformsa
Operating System |
CPU |
Compiler |
RTI Architecture |
|
|
|
|
|
|
|
|
QNX Neutrino 6.4.1 |
Pentium class |
qcc 4.3.3 with GNU C++ libraries |
i86QNX6.4.1qcc_gpp |
|
|
|
|
QNX Neutrino 6.5 |
Pentium class |
qcc 4.4.2 with GNU C++ libraries |
i86QNX6.5qcc_gpp4.4.2 |
|
|
|
|
a. For use with Windows, Linux or Solaris Host as supported by QNX & RTI
32
|
|
|
|
|
QNX Platforms |
|
Table 7.2 Building Instructions for QNX Architectures |
|
|
|
|||
|
|
|
|
|
|
|
|
API |
Library Format |
RTI Librariesa |
Required |
Required |
|
|
System Libraries |
Compiler Flags |
||||
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
libnddscppz.a |
|
|
|
|
|
|
libnddscz.a |
|
|
|
|
|
Static Release |
libnddscorez.a |
|
|
|
|
|
|
|
|
|
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
|
|
librticonnextmsgcppz.a |
|
|
|
|
|
|
|
|
|
|
|
|
|
libnddscppzd.a |
|
|
|
|
|
|
libnddsczd.a |
|
|
|
|
|
Static Debug |
libnddscorezd.a |
|
|
|
|
|
|
|
|
|
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
C++ |
|
librticonnextmsgcppzd.a |
|||
|
|
|
||||
|
|
libnddscpp.so |
||||
|
|
|
|
|
|
|
|
|
|
libnddsc.so |
|
|
|
|
|
Dynamic Release |
libnddscore.so |
|
|
|
|
|
|
|
|
|
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
|
|
librticonnextmsgcpp.so |
|
|
|
|
|
|
|
|
|
|
|
|
|
libnddscppd.so |
|
|
|
|
|
|
libnddscd.so |
|
|
|
|
|
Dynamic Debug |
libnddscored.so |
|
|
|
|
|
|
|
|
|
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
|
|
librticonnextmsgcppd.so |
|
|
|
|
|
|
|
|
|
|
|
|
|
libnddscz.a |
|
|
|
|
|
Static Release |
libnddscorez.a |
|
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
librticonnextmsgcz.a |
|
|
|
|
|
|
|
|
|
|
|
|
|
libnddsczd.a |
|
|
|
|
|
Static Debug |
libnddscorezd.a |
|
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
|
C |
|
librticonnextmsgczd.a |
|||
|
|
|
||||
|
|
libnddsc.so |
||||
|
|
|
|
|
|
|
|
|
Dynamic Release |
libnddscore.so |
|
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
librticonnextmsgc.so |
|
|
|
|
|
|
|
|
|
|
|
|
|
libnddscd.so |
|
|
|
|
|
Dynamic Debug |
libnddscored.so |
|
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
librticonnextmsgcd.so |
|
|
|
|
|
|
|
|
|
|
a. The NDDS C/C++ libraries are located in $(NDDSHOME)\lib\<architecture>\. (where $(NDDSHOME) is where Connext is installed, such as c:\rti\ndds.5.0.x)
33
Table 7.3 Running Instructions for QNX Architectures
|
Library |
|
|
RTI Architecture |
Format |
Environment Variables |
|
(Release & |
|||
|
|
||
|
Debug) |
|
|
|
|
|
|
|
|
|
|
i86QNX6.4.1qcc_gpp, |
Static |
None required |
|
|
|
||
|
LD_LIBRARY_PATH= |
||
i86QNX6.5qcc_gpp4.4.2 |
Dynamic |
||
${NDDSHOME}/lib/<architecture>: ${LD_LIBRARY_PATH}a |
|||
|
|
a. ${NDDSHOME} represents the root directory of your Connext installation. ${LD_LIBRARY_PATH} represents the value of the LD_LIBRARY_PATH variable prior to changing it to support Connext. When using nddsjava.jar, the Java virtual machine (JVM) will attempt to load release versions of the native libraries. When using nddsjavad.jar, the JVM will attempt to load debug versions of the native libraries.
Table 7.4
|
Library |
|
|
RTI Architecture |
Format |
Compiler Flags Used by RTI |
|
(Static & |
|||
|
|
||
|
Dynamic) |
|
|
|
|
|
|
|
Release |
qcc |
|
|
|||
i86QNX6.4.1qcc_gpp |
|
||
|
|
||
Debug |
qcc |
||
|
|||
|
|||
|
|
||
|
|
|
|
|
|
qcc |
|
|
|
||
|
Release |
||
|
|
||
i86QNX6.5qcc_gpp4.4.2 |
|
||
|
|
||
|
qcc |
||
|
|
||
|
|
||
|
Debug |
||
|
|
||
|
|
||
|
|
|
34
Solaris Platforms
8 Solaris Platforms
Table 8.1 on page 37 lists the architectures supported on Solaris operating systems.
Table 8.2 on page 38 lists the compiler flags and the libraries you will need to link into your application. (See also: Libraries Required for using RTI Secure WAN Transport APIs (Section 8.6).)
Table 8.3 on page 39 provides details on the environment variables required to be set at run time for a Solaris architecture.
When running on a Java
Table 8.4 on page 39 provides details on how the libraries were built by RTI. This table is provided strictly for informational purposes; you do not need to use these parameters to compile your application. You may find this information useful if you are involved in any in- depth debugging.
8.1Support for
RTI Connext Messaging includes support for the
When using C++, the following platforms do not support the
❏sparcSol2.9cc5.4
8.2Multicast Support
Multicast is supported on Solaris platforms and is configured out of the box. That is, the default value for the initial peers list (NDDS_DISCOVERY_PEERS) includes a multicast address. See the online documentation for more information.
8.3Supported Transports
Shared memory: Supported and enabled by default.
UDPv4: Supported and enabled by default.
UDPv6: Supported for all Solaris 2.9 and 2.10 platforms. The transport is not enabled by default, and the peers list must be modified to support IPv6. Traffic Class support is only provided for Solaris 2.10 platforms.
TCP/IPv4: Not supported.
35
8.3.1Shared Memory Support
To see a list of shared memory resources in use, use the 'ipcs' command. To clean up shared memory and shared semaphore resources, use the 'ipcrm' command.
The shared memory keys used by Connext are in the range of 0x400000. For example:
ipcs
The shared semaphore keys used by Connext are in the range of 0x800000; the shared mutex keys are in the range of 0xb00000. For example:
ipcs
Please refer to the
8.3.2Increasing Available Shared Resources
Connext uses System V semaphores to manage shared memory communication. If you plan to run multiple Connext applications on the same node, at the same time, you may need to increase the number of available semaphores.
Each Connext application that has shared memory enabled allocates 4 individual semaphores. The Solaris system defaults allow only 10 per host, which may not be enough (one is often used by the system, so you'll run out at the 3rd application).
To increase the number of semaphores available to Connext, change the values of the following two parameters in /etc/system. (Starting in Solaris 10, there is an alternate mechanism to control these values, but changing /etc/system will also work.) The following values are just an example:
set semsys:seminfo_semmni = 100 set semsys:seminfo_semmns = 100
If these parameters already exist in /etc/system, change their values; otherwise, add the above lines to your /etc/system file.
❏WARNING: Changing /etc/system should be done VERY
"System V" semaphores are allocated by creating groups of individual semaphores. The first parameter above controls the maximum number of semaphore groups and the second controls the maximum total number of semaphores (within any and all groups). Each Connext application that has shared memory enabled allocates 4 groups of 1 semaphore each (per domain). So setting the two values to be the same number will work fine as far as Connext is concerned. However, if other applications in the system want to allocate bigger groups, you could set "semsys:seminfo_semmns" larger than "semsys:seminfo_semmni." (Setting semmni bigger than semmns does not make any sense, since groups can't have less than 1 semaphore.)
In the absence of other applications using them, having 100 System V semaphores will allow you to use 25 domain ID/participant index combinations for Connext applications. You probably will not need to increase the shared memory parameters, since the default allows 100 shared memory areas, enough for 50 applications.
8.4Monotonic Clock Support
The monotonic clock (described in Section 8.6 in the RTI Core Libraries and Utilities User’s Manual) is supported on all Solaris architectures.
36
Solaris Platforms
8.5Support for Controlling CPU Core Affinity for RTI Threads
Support for controlling CPU core affinity (described in Section 19.5 in the RTI Core Libraries and Utilities User’s Manual) is not available for Solaris platforms.
8.6Libraries Required for using RTI Secure WAN Transport APIs
This section is only relevant if you have installed RTI Secure WAN Transport. This feature is not part of the standard Connext package. If you choose to use it, it must be downloaded and installed separately. It is only available on specific architectures. See the RTI Secure WAN Transport Release Notes and RTI Secure WAN Transport Release Notes Installation Guide for details. To use the WAN or Secure Transport APIs, link against the additional libraries from Table 8.7 on page 40. (Select the files appropriate for your chosen library format.)
Table 8.1 Supported Solaris Platforms
Operating |
CPU |
Compiler or |
RTI Architecture |
|
System |
Software Development Kit |
|||
|
|
|||
|
|
|
|
|
|
x86 |
gcc 3.3.2 |
i86Sol2.9gcc3.3.2 |
|
|
|
|
||
|
Sun Java Platform Standard Edition JDK 1.6 |
i86Sol2.9jdk |
||
|
|
|||
|
|
|
|
|
Solaris 2.9 |
|
CC 5.4 (Forte Dev 7, Sun One Studio 7) |
sparcSol2.9cc5.4 |
|
|
UltraSPARC |
|
|
|
|
|
|
||
|
|
|
|
|
|
|
Sun Java Platform Standard Edition JDK 1.6 |
sparcSol2.9jdk |
|
|
|
|
|
|
|
UltraSPARC |
gcc3.4.2 |
sparcSol2.10gcc3.4.2 |
|
|
|
|
||
|
Sun Java Platform Standard Edition JDK 1.5 or 1.6 |
sparcSol2.10jdk |
||
|
|
|||
Solaris 10 |
|
|
|
|
UltraSPARC |
gcc3.4.2 |
sparc64Sol2.10gcc3.4.2 |
||
|
||||
|
(with native 64- |
|
|
|
|
Sun Java Platform Standard Edition JDK 1.5 or 1.6 |
sparc64Sol2.10jdk |
||
|
bit support) |
|||
|
|
|
||
|
|
|
|
37
Table 8.2 Building Instructions for Solaris Architectures
API |
Library |
RTI Libraries or Jar Filesa |
Required System |
Required Compiler |
|
Format |
Libraries |
Flags |
|||
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
libnddscz.a |
|
|
|
|
Static |
libnddscorez.a |
|
|
|
|
Release |
For Connext Messaging, also include: |
|
|
|
|
|
|
|
||
|
|
librticonnextmsgcz.a |
sparc64Sol2.10gcc3.4.2: |
|
|
|
|
|
|
||
|
|
libnddsczd.a |
|
||
|
|
|
|||
|
Static |
libnddscorezd.a |
|
||
|
sparc64Sol2.10gcc3.4.2: |
||||
|
Debug |
|
|||
|
For Connext Messaging, also include: |
||||
|
|||||
|
|
||||
|
|
librticonnextmsgczd.a |
|
||
C |
|
|
|
||
|
|
|
|
||
|
libnddsc.so |
All other architectures: |
All other architectures: |
||
|
|
||||
|
Dynamic |
libnddscore.so |
|||
|
|||||
|
Release |
|
|||
|
For Connext Messaging, also include: |
|
|||
|
|
|
|||
|
|
librticonnextmsgc.so |
|
||
|
|
|
|||
|
|
|
|
||
|
|
libnddscd.so |
|
||
|
|
|
|
||
|
Dynamic |
libnddscored.so |
|
|
|
|
Debug |
For Connext Messaging, also include: |
|
|
|
|
|
|
|
||
|
|
librticonnextmsgcd.so |
|
|
|
|
|
|
|
|
|
|
|
libnddscppz.a |
|
|
|
|
Static |
libnddscz.a |
|
|
|
|
libnddscorez.a |
|
|
||
|
Release |
|
|
||
|
For Connext Messaging, also include: |
|
|
||
|
|
|
|
||
|
|
librticonnextmsgcppz.a |
|
|
|
|
|
|
|
|
|
|
|
libnddscppzd.a |
sparc64Sol2.10gcc3.4.2: |
|
|
|
|
libnddsczd.a |
|
||
|
Static |
|
|||
|
libnddscorezd.a |
sparc64Sol2.10gcc3.4.2: |
|||
|
|||||
|
Debug |
||||
|
|
||||
|
For Connext Messaging, also include: |
||||
|
|
||||
C++ |
|
librticonnextmsgcppzd.a |
|
|
|
|
|
|
|
||
|
libnddscpp.so |
All other architectures: |
All other architectures: |
||
|
|
||||
|
Dynamic |
libnddsc.so |
|||
|
libnddscore.so |
||||
|
|||||
|
Release |
For Connext Messaging, also include: |
|
||
|
|
|
|||
|
|
|
|||
|
|
librticonnextmsgcpp.so |
|
||
|
|
|
|
||
|
|
|
|
|
|
|
|
libnddscppd.so |
|
|
|
|
Dynamic |
libnddscd.so |
|
|
|
|
libnddscored.so |
|
|
||
|
Debug |
For Connext Messaging, also include: |
|
|
|
|
|
|
|
||
|
|
librticonnextmsgcppd.so |
|
|
|
|
|
|
|
|
|
|
|
nddsjava.jar |
|
|
|
|
Release |
For Connext Messaging, also include: |
|
|
|
Java |
|
rticonnextmsg.jar |
N/A |
None required |
|
|
|
||||
|
nddsjavad.jar |
||||
|
|
|
|
||
|
Debug |
For Connext Messaging, also include: |
|
|
|
|
|
rticonnextmsgd.jar |
|
|
|
|
|
|
|
|
38
Solaris Platforms
a. The RTI C/C++ libraries are located in $(NDDSHOME)\lib\<architecture>\. The RTI Java files are located in $(NDDSHOME)\class\.
(where $(NDDSHOME) is where Connext is installed, such as /local/rti/ndds/ndds.5.0.x)
Table 8.3 Running Instructions for Solaris Architectures
|
Library |
|
|
RTI Architecture |
Format |
Environment Variables |
|
(Release & |
|||
|
|
||
|
Debug) |
|
|
|
|
|
|
|
|
|
|
|
|
LD_LIBRARY_PATH= |
|
All supported Solaris |
N/A |
${NDDSHOME}/lib/<architecture>: ${LD_LIBRARY_PATH} a |
|
architectures for Java |
Note: For all |
||
|
|||
|
|
command line. |
|
|
|
|
|
All supported Solaris |
Static |
None required |
|
|
|
||
|
LD_LIBRARY_PATH= |
||
native architectures |
Dynamic |
||
${NDDSHOME}/lib/<architecture>: ${LD_LIBRARY_PATH} a |
|||
|
|
a. ${NDDSHOME} represents the root directory of your Connext installation. ${LD_LIBRARY_PATH} represents the value of the LD_LIBRARY_PATH variable prior to changing it to support Connext. When using nddsjava.jar, the Java vir- tual machine (JVM) will attempt to load release versions of the native libraries. When using nddsjavad.jar, the JVM will attempt to load debug versions of the native libraries.
Table 8.4
RTI Architecture |
Library |
Compiler Flags Used by RTI |
|
Format |
|||
|
|
||
|
|
|
|
|
|
|
|
|
Static |
||
|
and |
||
|
Dynamic |
||
i86Sol2.9gcc3.3.2a |
Release |
||
|
|
||
Static |
|||
|
|||
|
and |
||
|
Dynamic |
||
|
Debug |
||
|
|
|
|
|
Static |
||
|
and |
||
|
|||
|
Dynamic |
||
|
|||
|
Release |
||
sparcSol2.9cc5.4 |
|
||
|
|
||
Static |
|||
|
|||
|
and |
||
|
|||
|
Dynamic |
||
|
|||
|
Debug |
||
|
|
||
|
|
|
39
Table 8.4
RTI Architecture |
Library |
Compiler Flags Used by RTI |
|
Format |
|||
|
|
||
|
|
|
|
|
|
|
|
|
Static |
||
|
|||
|
and |
||
|
|||
|
Dynamic |
||
|
|||
|
Release |
||
|
|||
sparcSol2.10gcc3.4.2a |
|
||
|
|
||
Static |
|||
|
|||
|
|||
|
and |
||
|
|||
|
Dynamic |
||
|
|||
|
Debug |
||
|
|||
|
|
||
|
|
|
|
|
Static |
||
|
and |
||
|
Dynamic |
||
|
Release |
||
sparc64Sol2.10gcc3.4.2a |
|
|
|
Static |
|||
|
|||
|
and |
||
|
|||
|
Dynamic |
||
|
|||
|
Debug |
||
|
|||
|
|
||
|
|
|
|
All supported Solaris |
Dynamic |
||
Release |
|||
architectures for Java |
|
||
|
|
||
Dynamic |
|
||
(*jdk) |
|||
Debug |
|||
|
|
||
|
|
|
a. The C++ libnddscpp dynamic libraries were linked using g++; the C dynamic libraries, i.e. libnddscore and libnddsc, were linked using gcc.
Table 8.7 Additional Libraries for using RTI Secure WAN Transport APIs on
Library Format |
RTI Secure WAN Transport Librariesa |
OpenSSL Librariesb |
|
|
|
|
|
Dynamic Release |
libnddstransportwan.so |
|
|
libnddstransporttls.so |
|
||
|
|
||
|
|
|
|
Dynamic Debug |
libnddstransportwand.so |
|
|
libnddstransporttlsd.so |
libssl.a |
||
|
|||
|
|
libcrypto.a |
|
Static Release |
libnddstransporttlsz.a |
||
libnddstransporttlszd.a |
|
||
|
|
||
|
|
|
|
Static Debug |
libnddstransportwanz.a |
|
|
libnddstransportwanzd.a |
|
||
|
|
||
|
|
|
a.The libraries are located in <wan install dir>/lib/<architecture>/. (where <wan install dir> is where you installed RTI Secure WAN Transport, such as /local/rti/ndds.5.0.x)
b.These libraries are located <openssl install dir>/<architecture/lib, where <openssl install dir> is where you installed OpenSSL, such
40
VxWorks Platforms
9 VxWorks Platforms
Table 9.1 on page 43 lists the architectures supported on VxWorks operating systems. You can build a VxWorks application by
These tables list the libraries you will need to link into your application and the required compiler flags:
❏Table 9.2, “Building Instructions for VxWorks 5.x and 6.x Architectures,” on page 45
❏Table 9.3, “Building Instructions for VxWorks 653 Architectures,” on page 46
❏Table 9.4, “Building Instructions for VxWorks MILS Architectures,” on page 47
Compiling a Connext application for VxWorks depends on the development platform. For more information, such as specific compiler flags, see the VxWorks Programmer’s Guide. Table 9.5 on page 48 provides details on how the VxWorks libraries were built. We recommend that you use similar settings.
9.1Support for
RTI Connext Messaging includes support for the
When using C++, the following platforms do not support the
❏ppc603Vx5.5gcc
❏ppc604Vx5.5gcc
9.2Increasing the Stack Size
Connext applications may require more than the default stack size on VxWorks.
To prevent stack overrun, you can create/enable the DomainParticipant in a thread with a larger stack, or increase the default stack size of the shell task by recompiling the kernel. For more information, please see the Solutions on the RTI Customer Portal, accessible from https:// support.rti.com/.
9.3Libraries for RTP on VxWorks 6
When using VxWorks 6 with Real Time Processes (RTP mode), please note the following limitations:
❏Dynamic libraries are not available for VxWorks 6.3 and higher systems with RTP mode on PPC CPUs.
❏Dynamic libraries for RTP mode on VxWorks 6.3 and higher systems with Pentium CPUs are available.
41
9.4Requirement for Restarting Applications
When restarting a VxWorks application, you may need to change the ‘appId’ value. In general, this is only required if you still have other Connext applications running on other systems that were talking to the restarted application. If all the Connext applications are restarted, there should be no problem.
This section explains why this is necessary and how to change the appId.
All Connext applications must have a unique GUID (globally unique ID). This GUID is composed of a hostId and an appId. RTI implements unique appIds by using the process ID of the application. On VxWorks systems, an application’s process ID will often be the same across reboots. This may cause logged errors during the discovery process, or discovery may not complete successfully for the restarted application.
The workaround is to manually provide a unique appId each time the application starts. The appId is stored in the DomainParticipant’s WireProtocol QosPolicy. There are two general approaches to providing a unique appId. The first approach is to save the appId in NVRAM or the file system, and then increment the appId across reboots. The second approach is to base the appId on something that is likely to be different across reboots, such as a
9.5Multicast Support
Multicast is supported on VxWorks 5.x and 6.x; VxWorks 653; and VxWorks MILS platforms. It is configured out of the box. That is, the default value for the initial peers list (NDDS_DISCOVERY_PEERS) includes a multicast address. See the online documentation for more information.
9.6Supported Transports
Shared memory: Shared memory is supported and enabled by default on all VxWorks 6.x architectures. It is not supported on VxWorks 5.x, VxWorks 653, or VxWorks MILS platforms.
UDPv4: Supported and enabled by default.
UDPv6: Supported on VxWorks 6.7 and higher architectures. No Traffic Class support.
TCP/IPv4: Not supported.
9.7Monotonic Clock Support
The monotonic clock (described in Section 8.6 in the RTI Core Libraries and Utilities User’s Manual) is supported on VxWorks 6.3 and higher architectures. This feature is not supported on VxWorks 653 2.3 or VxWorks MILS platforms.
9.8Support for Controlling CPU Core Affinity for RTI Threads
Support for controlling CPU core affinity (described in Section 19.5 in the RTI Core Libraries and Utilities User’s Manual) is not available for VxWorks platforms.
42
|
|
|
|
VxWorks Platforms |
|
Table 9.1 Supported VxWorks Target Platformsa |
|
|
|
||
|
Operating System |
CPU |
Compiler |
RTI Architecture |
|
|
|
|
|
|
|
|
|
PPC 603 |
gcc 2.96 |
ppc603Vx5.5gcc |
|
|
|
|
|
|
|
|
VxWorks 5.5 |
PPC 604 |
gcc 2.96 |
ppc604Vx5.5gcc |
|
|
|
|
|
|
|
|
PPC 750 |
gcc 2.96 |
ppc603Vx5.5gcc |
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
PPC 7400 |
gcc 2.96 |
ppc603Vx5.5gcc |
|
|
|
|
|
|
|
|
|
|
|
For kernel modules: |
|
|
VxWorks 6.3, 6.4 |
Any Wind River PPC32 CPU with |
gcc 3.4.4 |
ppc604Vx6.3gcc3.4.4 |
|
|
For Real Time Processes: |
|
|||
|
|
floating point hardware |
|
|
|
|
|
|
|
ppc604Vx6.3gcc3.4.4_rtp |
|
|
|
|
|
|
|
|
|
|
|
For kernel modules: |
|
|
VxWorks 6.5 |
any Wind River PPC32 CPU with |
gcc 3.4.4 |
ppc604Vx6.5gcc3.4.4 |
|
|
For Real Time Processes: |
|
|||
|
|
floating point hardware |
|
|
|
|
|
|
|
ppc604Vx6.5gcc3.4.4_rtp |
|
|
|
|
|
|
|
|
|
|
|
For Kernel Modules: |
|
|
|
Pentium |
gcc 4.1.2 |
pentiumVx6.6gcc4.1.2 |
|
|
|
For Real Time Processes: |
|
||
|
|
|
|
|
|
|
|
|
|
pentiumVx6.6gcc4.1.2_rtp |
|
|
|
|
|
|
|
|
|
|
|
For Kernel Modules: |
|
|
VxWorks 6.6 |
any Wind River PPC32 CPU with |
gcc 4.1.2 |
ppc604Vx6.6gcc4.1.2 |
|
|
For Real Time Processes: |
|
|||
|
|
floating point hardware |
|
|
|
|
|
|
|
ppc604Vx6.6gcc4.1.2_rtp |
|
|
|
|
|
|
|
|
|
|
|
For Kernel Modules: |
|
|
|
PPC 405b |
gcc 4.1.2 |
ppc405Vx6.6gcc4.1.2 |
|
|
|
For Real Time Processes: |
|
||
|
|
|
|
|
|
|
|
|
|
ppc405Vx6.6gcc4.1.2_rtp |
|
|
|
|
|
|
|
|
|
|
|
For Kernel Modules: |
|
|
|
Pentium |
gcc 4.1.2 |
pentiumVx6.7gcc4.1.2 |
|
|
|
For Real Time Processes: |
|
||
|
|
|
|
|
|
|
|
|
|
pentiumVx6.7gcc4.1.2_rtp |
|
|
|
|
|
|
|
|
|
|
|
For Kernel Modules: |
|
|
|
|
|
ppc604Vx6.7gcc4.1.2 |
|
|
|
|
|
For Real Time Processes |
|
|
VxWorks 6.7 |
Any Wind River PPC32 CPU with |
gcc 4.1.2 |
on |
|
|
|
floating point hardware |
|
ppc604Vx6.7gcc4.1.2_rtp |
|
|
|
|
|
For Real Time Processes |
|
|
|
|
|
on SMP systems: |
|
|
|
|
|
ppc604Vx6.7gcc4.1.2_smp |
|
|
|
|
|
|
|
|
|
|
|
For Kernel Modules: |
|
|
|
PPC 405b |
gcc 4.1.2 |
ppc405Vx6.7gcc4.1.2 |
|
|
|
For Real Time Processes: |
|
||
|
|
|
|
|
|
|
|
|
|
ppc405Vx6.7gcc4.1.2_rtp |
|
|
|
|
|
|
|
43
Table 9.1 Supported VxWorks Target Platformsa
Operating System |
CPU |
Compiler |
RTI Architecture |
|
|
|
|
|
|
|
|
|
For Kernel Modules: |
|
|
Pentium |
gcc 4.1.2 |
pentiumVx6.8gcc4.1.2 |
|
|
For Real Time Processes: |
|||
|
|
|
||
VxWorks 6.8 |
|
|
pentiumVx6.8gcc4.1.2_rtp |
|
|
|
|
||
|
|
For Kernel Modules: |
||
|
|
|
||
|
Any Wind River PPC32 CPU with |
gcc 4.1.2 |
ppc604Vx6.8gcc4.1.2 |
|
|
For Real Time Processes: |
|||
|
floating point hardware |
|
||
|
|
|
ppc604Vx6.8gcc4.1.2_rtp |
|
|
|
|
|
|
|
|
|
For Kernel Modules: |
|
|
gcc 4.3.3 |
pentiumVx6.9gcc4.3.3 |
||
|
For Real Time Processes: |
|||
|
|
|
||
VxWorks 6.9 |
|
|
pentiumVx6.9gcc4.3.3_rtp |
|
|
|
|
||
|
|
For Kernel Modules: |
||
|
|
|
||
|
Any Wind River PPC32 CPU with |
gcc 4.3.3 |
ppc604Vx6.9gcc4.3.3 |
|
|
For Real Time Processes: |
|||
|
floating point hardware |
|
||
|
|
|
ppc604Vx6.9gcc4.3.3_rtp |
|
|
|
|
|
|
VxWorks 653 2.3 |
sbc8641d |
gcc 3.32 |
||
|
|
|
||
SIMPC |
gcc 3.32 |
|||
|
||||
|
|
|
|
|
VxWorks MILS 2.1.1 |
ppc85xx |
gcc 3.3.2 |
ppc85xxVxT2.2.3gcc3.3.2 |
|
with vThreads 2.2.3 |
||||
|
|
|
||
|
|
|
|
a.For use with Windows and/or Solaris Hosts as supported by Wind River Systems.
b.For ppc405, the architecture string is the same for VxWorks 6.6 and 6.7.
44
|
|
|
|
|
VxWorks Platforms |
|
Table 9.2 Building Instructions for VxWorks 5.x and 6.x Architectures |
|
|
||||
|
|
|
|
|
|
|
|
API |
Library |
Required RTI Librariesa |
Required |
Required |
|
|
|
Format |
|
Kernel Components |
Compiler Flags |
|
|
|
|
|
|
|
|
|
|
|
libnddscppz.a |
|
|
|
|
|
Static |
libnddscz.a |
|
|
|
|
|
libnddscorez.a |
|
|
|
|
|
|
Release |
|
|
|
|
|
|
For Connext Messaging, also include: |
INCLUDE_TIMESTAMP |
|
|
|
|
|
|
|
|
||
|
|
|
librticonnextmsgcppz.a |
|
|
|
|
|
|
|
|
|
|
|
|
|
libnddscppzd.a |
For VxWorks 6.4 and below, |
|
|
|
|
Static |
libnddsczd.a |
also use: |
|
|
|
|
libnddscorezd.a |
INCLUDE_ZBUF_SOCK |
|
|
|
|
|
Debug |
|
|
||
|
|
For Connext Messaging, also include: |
INCLUDE_IGMP |
|
|
|
|
|
|
|
|
||
|
C++ |
|
librticonnextmsgcppzd.a |
|
|
|
|
|
|
For VxWorks 6.3 and higher, |
|
||
|
|
libnddscpp.so |
|
|||
|
|
|
|
|
||
|
|
|
also use: |
|
|
|
|
|
|
libnddsc.so |
|
|
|
|
|
Dynamic |
INCLUDE_POSIX_CLOCKS |
|
|
|
|
|
libnddscore.so |
|
|
||
|
|
|
|
|
||
|
|
Release |
For Connext Messaging, also include: |
|
|
|
|
|
|
For RTI architectures with |
|
|
|
|
|
|
librticonnextmsgcpp.so |
SMP support for VxWorks 6.7 |
|
|
|
|
|
libnddscppd.so |
and higherb, also use: |
|
|
|
|
Dynamic |
libnddscd.so |
INCLUDE_TLS |
|
|
|
|
libnddscored.so |
|
|
|
|
|
|
Debug |
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
|
|
librticonnextmsgcppd.so |
|
|
|
|
|
|
|
|
|
|
|
|
|
libnddscz.a |
|
|
|
|
|
Static |
libnddscorez.a |
INCLUDE_TIMESTAMP |
|
|
|
|
Release |
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
|
|
librticonnextmsgcz.a |
For VxWorks 6.4 and below, |
|
|
|
|
|
|
|
|
|
|
|
|
libnddsczd.a |
also use: |
|
|
|
|
Static |
libnddscorezd.a |
INCLUDE_ZBUF_SOCK |
|
|
|
|
Debug |
For Connext Messaging, also include: |
INCLUDE_IGMP |
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
C |
|
librticonnextmsgczd.a |
|
|
|
|
|
|
For VxWorks 6.3 and higher, |
|
||
|
|
libnddsc.so |
|
|||
|
|
|
|
|
||
|
|
|
also use: |
|
|
|
|
|
Dynamic |
libnddscore.so |
|
|
|
|
|
INCLUDE_POSIX_CLOCKS |
|
|
||
|
|
Release |
|
|
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
librticonnextmsgc.so |
For RTI architectures with |
|
|
|
|
|
|
|
|
|
|
|
|
libnddscd.so |
SMP support for VxWorks 6.7 |
|
|
|
|
Dynamic |
libnddscored.so |
and higherb, also use: |
|
|
|
|
Debug |
For Connext Messaging, also include: |
INCLUDE_TLS |
|
|
|
|
|
|
|
|
|
|
|
|
librticonnextmsgcd.so |
|
|
|
|
|
|
|
|
|
|
a.The Connext C/C++ libraries are located in $(NDDSHOME)\lib\<architecture>\. (where $(NDDSHOME) is where Connext is installed, such as c:\rti\ndds.5.0.x)
b.In this version, only ppc604Vx6.7gcc4.1.2_smp
45
Table 9.3 Building Instructions for VxWorks 653 Architectures
API |
Library |
Required RTI Librariesa |
Required |
Required |
|
Format |
Kernel Components |
Compiler Flags |
|||
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
libnddscppz.a |
|
|
|
|
Static |
libnddscz.a |
|
|
|
|
libnddscorez.a |
|
|
||
|
Release |
|
|
||
|
|
|
|
||
|
|
For Connext Messaging, also include: |
|
|
|
|
|
librticonnextmsgcppz.a |
|
|
|
|
|
|
|
|
|
|
|
libnddscppzd.a |
|
|
|
|
Static |
libnddsczd.a |
|
|
|
|
libnddscorezd.a |
|
|
||
|
Debug |
|
|
||
|
|
|
|
||
|
|
For Connext Messaging, also include: |
|
|
|
C++ |
|
librticonnextmsgcppzd.a |
|
|
|
|
|
|
|
||
|
|
libnddscpp.so |
|
|
|
|
Dynamic |
libnddsc.so |
|
|
|
|
libnddscore.so |
|
|
||
|
Release |
|
|
||
|
For Connext Messaging, also include: |
|
|
||
|
|
See either: |
|
||
|
|
librticonnextmsgcpp.so |
|
||
|
|
libnddscppd.so |
|
||
|
|
|
|||
|
Dynamic |
libnddscd.so |
|
||
|
libnddscored.so |
||||
|
Debug |
||||
|
For Connext Messaging, also include: |
or |
|||
|
|
||||
|
|
librticonnextmsgcppd.so |
|
||
|
|
|
|
||
|
|
libnddscz.a |
|
||
|
|
|
|||
|
Static |
libnddscorez.a |
|
||
|
|
||||
|
Release |
For Connext Messaging, also include: |
|
||
|
|
|
|||
|
|
|
|
||
|
|
librticonnextmsgcz.a |
|
|
|
|
|
|
|
|
|
|
|
libnddsczd.a |
|
|
|
|
Static |
libnddscorezd.a |
|
|
|
|
Debug |
For Connext Messaging, also include: |
|
|
|
|
|
|
|
||
C |
|
librticonnextmsgczd.a |
|
|
|
|
|
|
|
||
|
libnddsc.so |
|
|
||
|
|
|
|
||
|
Dynamic |
libnddscore.so |
|
|
|
|
Release |
For Connext Messaging, also include: |
|
|
|
|
|
|
|
||
|
|
librticonnextmsgc.so |
|
|
|
|
|
|
|
|
|
|
|
libnddscd.so |
|
|
|
|
Dynamic |
libnddscored.so |
|
|
|
|
Debug |
For Connext Messaging, also include: |
|
|
|
|
|
|
|
||
|
|
librticonnextmsgcd.so |
|
|
|
|
|
|
|
|
a. The Connext C/C++ libraries are located in $(NDDSHOME)\lib\<architecture>\. (where $(NDDSHOME) is where Connext is installed, such as c:\rti\ndds.5.0.x)
46
|
|
|
|
|
VxWorks Platforms |
|
Table 9.4 Building Instructions for VxWorks MILS Architectures |
|
|
|
|||
|
|
|
|
|
|
|
|
API |
Library |
Required RTI Librariesa |
Required |
Required |
|
|
Format |
Kernel Components |
Compiler Flags |
|
||
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
libnddscppz.a |
|
|
|
|
|
Static |
libnddscz.a |
|
|
|
|
|
libnddscorez.a |
|
|
|
|
|
|
Release |
|
|
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
librticonnextmsgcppz.a |
|
|
|
|
|
|
|
|
|
|
|
|
|
libnddscppzd.a |
|
|
|
|
|
Static |
libnddsczd.a |
|
|
|
|
|
libnddscorezd.a |
|
|
|
|
|
|
Debug |
|
|
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
|
C++ |
|
librticonnextmsgcppzd.a |
|
|
|
|
|
|
|
|
|
|
|
|
libnddscpp.so |
|
|
|
|
|
|
|
|
|
|
|
|
|
Dynamic |
libnddsc.so |
|
|
|
|
|
libnddscore.so |
|
|
|
|
|
|
Release |
|
|
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
librticonnextmsgcpp.so |
The MILS 2.1.1 patch |
|
|
|
|
|
libnddscppd.so |
that corrects defect |
|
|
|
|
|
libnddscd.so |
number WIND00343321 |
|
|
|
|
Dynamic |
must be installed for |
|
|
|
|
|
libnddscored.so |
|
|
||
|
|
Debug |
Connext libraries to |
|
||
|
|
|
|
|||
|
|
|
For Connext Messaging, also include: |
work on a MILS 2.1.1 |
|
|
|
|
|
|
|
||
|
|
|
librticonnextmsgcppd.so |
system. This patch can |
|
|
|
|
|
|
be obtained through the |
|
|
|
|
|
libnddscz.a |
|
|
|
|
|
|
regular Wind River |
|
|
|
|
|
Static |
libnddscorez.a |
|
|
|
|
|
support channel. |
|
|
||
|
|
Release |
|
|
|
|
|
|
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
librticonnextmsgcz.a |
|
|
|
|
|
|
|
|
|
|
|
|
|
libnddsczd.a |
|
|
|
|
|
Static |
libnddscorezd.a |
|
|
|
|
|
Debug |
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
C |
|
librticonnextmsgczd.a |
|
|
|
|
|
|
|
|
|
|
|
|
libnddsc.so |
|
|
|
|
|
|
|
|
|
|
|
|
|
Dynamic |
libnddscore.so |
|
|
|
|
|
Release |
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
|
|
librticonnextmsgc.so |
|
|
|
|
|
|
|
|
|
|
|
|
|
libnddscd.so |
|
|
|
|
|
Dynamic |
libnddscored.so |
|
|
|
|
|
Debug |
For Connext Messaging, also include: |
|
|
|
|
|
|
|
|
|
|
|
|
|
librticonnextmsgcd.so |
|
|
|
|
|
|
|
|
|
|
a. The Connext C/C++ libraries are located in $(NDDSHOME)\lib\<architecture>\. (where $(NDDSHOME) is where Connext is installed, such as c:\rti\ndds.5.0.x)
47
Table 9.5
RTI Architecture |
Library |
Compiler Flags Used by RTI |
|
Format |
|||
|
|
||
|
|
|
|
|
|
|
|
|
|
||
|
Static or |
||
|
Dynamic |
||
|
Release |
||
pentiumVx6.6gcc4.1.2 |
|
||
|
|
||
|
|||
|
|
||
|
Static or |
||
|
Dynamic |
||
|
Debug |
||
|
|
||
|
|
|
|
|
|
||
|
Static |
||
|
Release |
||
|
|
||
|
|
|
|
|
|
||
|
Static |
||
|
Debug |
||
pentiumVx6.6gcc4.1.2_rtp |
|
||
|
|
||
|
|||
|
|
||
|
Dynamic |
||
|
Release |
||
|
|
||
|
|
|
|
|
|
||
|
Dynamic |
||
|
Debug |
||
|
|
||
|
|
|
|
|
|
||
|
Static or |
||
|
Dynamic |
||
|
Release |
||
pentiumVx6.7gcc4.1.2 |
|
||
|
|
||
|
|||
|
|
||
|
Static or |
||
|
Dynamic |
||
|
Debug |
||
|
|
||
|
|
|
|
|
|
||
|
Static |
||
|
Release |
||
|
|
||
|
|
|
|
|
|
||
|
Static |
||
|
Debug |
||
pentiumVx6.7gcc4.1.2_rtp |
|
||
|
|
||
|
|||
|
|
||
|
Dynamic |
||
|
Release |
||
|
|
||
|
|
|
|
|
|
||
|
Dynamic |
||
|
Debug |
||
|
|
||
|
|
|
48
VxWorks Platforms
Table 9.5
RTI Architecture |
Library |
Compiler Flags Used by RTI |
|
Format |
|||
|
|
||
|
|
|
|
|
|
|
|
|
|
ccpentium |
|
|
Static or |
||
|
Dynamic |
||
|
Release |
||
pentiumVx6.8gcc4.1.2 |
|
||
|
|
||
|
ccpentium |
||
|
|
||
|
Static or |
||
|
Dynamic |
||
|
Debug |
||
|
|
||
|
|
|
|
|
|
ccpentium |
|
|
Static or |
||
|
Dynamic |
||
|
Release |
||
pentiumVx6.8gcc4.1.2_rtp |
|
||
|
|
||
|
ccpentium |
||
|
|
||
|
Static or |
||
|
Dynamic |
||
|
Debug |
||
|
|
||
|
|
|
|
|
|
ccpentium |
|
|
Static or |
||
|
Dynamic |
||
|
Release |
||
pentiumVx6.9gcc4.3.3 |
|
||
|
|
||
|
ccpentium |
||
|
|
||
|
Static or |
||
|
Dynamic |
||
|
Debug |
||
|
|
||
|
|
|
|
|
|
ccpentium |
|
|
Static or |
||
|
Dynamic |
||
|
Release |
||
pentiumVx6.9gcc4.3.3_rtp |
|
||
|
|
||
|
ccpentium |
||
|
|
||
|
Static or |
||
|
Dynamic |
||
|
Debug |
||
|
|
||
|
|
|
|
|
|
||
|
Static or |
||
|
Dynamic |
||
|
Release |
||
ppc405Vx6.6gcc4.1.2 |
|
||
|
|
||
|
|||
|
|
||
|
Static or |
||
|
Dynamic |
||
|
Debug |
||
|
|
||
|
|
|
49
Table 9.5
RTI Architecture |
Library |
Compiler Flags Used by RTI |
|
Format |
|||
|
|
||
|
|
|
|
|
|
|
|
|
|
||
|
Static |
||
|
|||
|
Release |
||
|
|||
|
|
||
ppc405Vx6.6gcc4.1.2_rtp |
|
||
|
|
||
|
|||
|
|
||
|
Static |
||
|
|||
|
Debug |
||
|
|||
|
|
||
|
|
||
|
|
|
|
|
Static or |
||
|
|||
|
Dynamic |
||
|
|||
|
Release |
||
ppc603Vx5.5gcc |
|
||
|
|
||
Static or |
|||
|
|||
|
|||
|
Dynamic |
||
|
|||
|
Debug |
||
|
|
||
|
|
|
|
|
Static or |
||
|
|||
|
Dynamic |
||
|
|||
|
Release |
||
ppc604Vx5.5gcc |
|
||
|
|
||
Static or |
|||
|
|||
|
|||
|
Dynamic |
||
|
|||
|
Debug |
||
|
|
||
|
|
|
|
|
|
||
|
Static or |
||
|
Dynamic |
||
|
Release |
||
ppc604Vx6.3gcc3.4.4 |
|
||
|
|
||
|
|||
|
|
||
|
Static or |
||
|
Dynamic |
||
|
Debug |
||
|
|
||
|
|
|
|
|
|
||
|
Static |
||
|
|||
|
Release |
||
|
|||
|
|
||
ppc604Vx6.3gcc3.4.4_rtp |
|
||
|
|
||
|
|||
|
|
||
|
Static |
||
|
|||
|
Debug |
||
|
|||
|
|
||
|
|
||
|
|
|
50
VxWorks Platforms
Table 9.5
RTI Architecture |
Library |
Compiler Flags Used by RTI |
|
Format |
|||
|
|
||
|
|
|
|
|
|
|
|
|
|
||
|
Static or |
||
|
Dynamic |
||
|
Release |
||
ppc604Vx6.5gcc3.4.4 |
|
||
|
|
||
|
|||
|
|
||
|
Static or |
||
|
Dynamic |
||
|
Debug |
||
|
|
||
|
|
|
|
|
|
||
|
Static |
||
|
Release |
||
ppc604Vx6.5gcc3.4.4_rtp |
|
||
|
|
||
|
|||
|
|
||
|
Static |
||
|
Debug |
||
|
|
||
|
|
|
|
|
|
||
|
Static or |
||
|
Dynamic |
||
|
Release |
||
ppc604Vx6.6gcc4.1.2 |
|
||
|
|
||
|
|||
|
|
||
|
Static or |
||
|
Dynamic |
||
|
Debug |
||
|
|
||
|
|
|
|
|
|
||
|
Static |
||
|
Release |
||
|
|
||
ppc604Vx6.6gcc4.1.2_rtp |
|
|
|
|
|||
|
Static |
||
|
|||
|
Debug |
||
|
|||
|
|
||
|
|
||
|
|
|
|
|
|
||
|
Static or |
||
|
Dynamic |
||
|
Release |
||
ppc604Vx6.7gcc4.1.2 |
|
||
|
|
||
|
|||
|
|
||
|
Static or |
||
|
Dynamic |
||
|
Debug |
||
|
|
||
|
|
|
51
Table 9.5
RTI Architecture |
Library |
Compiler Flags Used by RTI |
|
Format |
|||
|
|
||
|
|
|
|
|
|
|
|
|
|
||
|
Static |
||
|
Release |
||
ppc604Vx6.7gcc4.1.2_rtp, |
|
||
|
|
||
|
|||
ppc604Vx6.7gcc4.1.2_smp |
|
||
|
|||
|
Static |
||
|
|||
|
Debug |
||
|
|||
|
|
||
|
|
||
|
|
|
|
|
|
ccppc |
|
|
Static or |
||
|
Dynamic |
||
|
Release |
||
ppc604Vx6.8gcc4.1.2 |
|
||
|
|
||
|
ccppc |
||
|
|
||
|
Static or |
||
|
Dynamic |
||
|
Debug |
||
|
|
||
|
|
|
|
|
|
ccppc |
|
|
Static or |
||
|
Dynamic |
||
|
Release |
||
ppc604Vx6.8gcc4.1.2_rtp |
|
||
|
|
||
|
ccppc |
||
|
|
||
|
Static or |
||
|
Dynamic |
||
|
Debug |
||
|
|
||
|
|
|
|
|
|
ccppc |
|
|
Static |
||
|
|||
|
Release |
||
|
|||
|
|
||
ppc604Vx6.9gcc4.3.3 |
|
||
|
|
||
|
ccppc |
||
|
|
||
|
Static |
||
|
|||
|
Debug |
||
|
|||
|
|
||
|
|
||
|
|
|
|
|
|
ccppc |
|
|
Static |
||
|
|||
|
Release |
||
|
|||
|
|
||
ppc604Vx6.9gcc4.3.3_rtp |
|
||
|
|
||
|
ccppc |
||
|
|
||
|
Static |
||
|
|||
|
Debug |
||
|
|||
|
|
||
|
|
||
|
|
|
52
|
|
VxWorks Platforms |
|
|
Table 9.5 |
||||
|
|
|
|
|
RTI Architecture |
Library |
Compiler Flags Used by RTI |
||
Format |
||||
|
|
|
||
|
|
|
||
|
Static or |
|||
|
Dynamic |
|||
ppc85xxVxT2.2.3gcc3.3.2 |
Release |
|||
|
|
|
||
Static or |
||||
|
||||
|
Dynamic |
|||
|
Debug |
|||
|
|
|
||
|
Static or |
|||
|
||||
|
Dynamic |
|||
|
Release |
|||
|
||||
|
|
|||
|
|
|||
|
||||
|
Static or |
|||
|
Dynamic |
|||
|
Debug |
|||
|
|
|||
|
|
|
||
|
|
|||
|
Static or |
|||
|
Dynamic |
|||
|
Release |
|||
|
||||
|
|
|
||
|
||||
|
|
|||
|
Static or |
|||
|
Dynamic |
|||
|
Debug |
|||
|
|
|||
|
|
|
|
53
Table 9.6 Required Kernel Components for
INCLUDE_ARINC_SCHEDULER_INIT |
INCLUDE_NETINET_IF_SUBR |
|
|
INCLUDE_ARP_API |
INCLUDE_NETINET_IGMP |
|
|
INCLUDE_AUXCLK |
INCLUDE_NETINET_IN |
|
|
INCLUDE_BOOT_LINE |
INCLUDE_NETINET_IN_CKSUM |
|
|
INCLUDE_BOOT_LINE_INIT |
INCLUDE_NETINET_IN_PCB |
|
|
INCLUDE_BSD_SOCKET |
INCLUDE_NETINET_IN_PROTO |
|
|
INCLUDE_BSP_MODULES |
INCLUDE_NETINET_IP_ICMP |
|
|
INCLUDE_BSP_VXWORKS |
INCLUDE_NETINET_IP_INPUT |
|
|
INCLUDE_BYTENVRAM |
INCLUDE_NETINET_IP_OUTPUT |
|
|
INCLUDE_DEBUG_CORE |
INCLUDE_NETINET_RADIX |
|
|
INCLUDE_DEBUG_UTIL |
INCLUDE_NETINET_RAW_IP |
|
|
INCLUDE_END |
INCLUDE_NETINET_ROUTE |
|
|
INCLUDE_END_BOOT |
INCLUDE_NETINET_SYS_SOCKET |
|
|
INCLUDE_EXC_SHOW_INIT |
INCLUDE_NETINET_UDP_USRREQ |
|
|
INCLUDE_FLASHMEM |
INCLUDE_NETINET_UIPC_DOM |
|
|
INCLUDE_FTP |
INCLUDE_NETINET_UIPC_MBUF |
|
|
INCLUDE_HOST_TBL |
INCLUDE_NETINET_UIPC_SOCK |
|
|
INCLUDE_ICMP |
INCLUDE_NETINET_UIPC_SOCK2 |
|
|
INCLUDE_IGMP |
INCLUDE_NETINET_UNIXLIB |
|
|
INCLUDE_IO_EXTRA_INIT |
INCLUDE_NETMASK_GET |
|
|
INCLUDE_IO_SYSTEM_INIT |
INCLUDE_NETWORK |
|
|
INCLUDE_IP |
INCLUDE_NETWRS_ETHERMULTILIB |
|
|
INCLUDE_KERNEL_BASIC |
INCLUDE_NETWRS_IFLIB |
|
|
INCLUDE_KERNEL_BASIC_INIT |
INCLUDE_NETWRS_INETLIB |
|
|
INCLUDE_KERNEL_BASIC_INIT2 |
INCLUDE_NETWRS_NETBUFLIB |
|
|
INCLUDE_KERNEL_CORE |
INCLUDE_NETWRS_REMLIB |
|
|
INCLUDE_KERNEL_FULL |
INCLUDE_NETWRS_ROUTELIB |
|
|
INCLUDE_KERNEL_NORMAL_MODE |
INCLUDE_NETWRS_XDR |
|
|
INCLUDE_KERNEL_SHOW |
INCLUDE_NV_RAM |
|
|
INCLUDE_KERNEL_UTIL |
INCLUDE_PARTITION_INIT |
|
|
INCLUDE_LOADER |
INCLUDE_POST_KERNEL_CORE_INIT |
|
|
INCLUDE_LOADER_EXTRA |
INCLUDE_POST_KERNEL_CORE_INIT2 |
|
|
INCLUDE_LOOPBACK |
INCLUDE_PPCDECTIMER |
|
|
INCLUDE_MIILIB |
INCLUDE_PRE_KERNEL_CORE_INIT |
|
|
INCLUDE_MMU_BASIC |
INCLUDE_SERIAL |
|
|
INCLUDE_MOTTSECEND |
INCLUDE_SHELL |
|
|
INCLUDE_MUX |
INCLUDE_SHELL_VI_MODE |
|
|
INCLUDE_NET_DRV |
INCLUDE_SOCKET_DEV |
|
|
INCLUDE_NET_HOST_SETUP |
INCLUDE_SYM_TBL_INIT |
|
|
INCLUDE_NET_INIT |
INCLUDE_SYSCLK |
|
|
INCLUDE_NET_LIB |
INCLUDE_SYSTEM_START_INIT |
|
|
INCLUDE_NET_RANDOM |
INCLUDE_TCP |
|
|
54
|
|
VxWorks Platforms |
Table 9.6 Required Kernel Components for |
||
|
INCLUDE_NET_REM_IO |
INCLUDE_TFTP_CLIENT |
|
|
|
|
INCLUDE_NET_SETUP |
INCLUDE_TIME_MONITOR_INIT |
|
|
|
|
INCLUDE_NET_SYM_TBL |
INCLUDE_UDP |
|
|
|
|
INCLUDE_NET_TASK |
INCLUDE_USER_APPL |
|
|
|
|
INCLUDE_NETDEV_CONFIG |
INCLUDE_USR_DEVSPLIT |
|
|
|
|
INCLUDE_NETDEV_NAMEGET |
INCLUDE_USR_FS_UTILS |
|
|
|
|
INCLUDE_NETINET_IF |
INCLUDE_WDB |
|
|
|
|
INCLUDE_NETINET_IF_ETHER |
INCLUDE_WDB_COMM_END |
|
|
|
a. Install partition_socket_driver_v1.3. Follow instructions from Wind River for the installation.
Table 9.7 Required Kernel Components for
INCLUDE_ARINC_SCHEDULER_INIT |
INCLUDE_NETINET_IN_PCB |
|
|
INCLUDE_ARP_API |
INCLUDE_NETINET_IN_PROTO |
|
|
INCLUDE_BOOT_LINE |
INCLUDE_NETINET_IP_ICMP |
|
|
INCLUDE_BOOT_LINE_INIT |
INCLUDE_NETINET_IP_INPUT |
|
|
INCLUDE_BSD_SOCKET |
INCLUDE_NETINET_IP_OUTPUT |
|
|
INCLUDE_BSP_MODULES |
INCLUDE_NETINET_RADIX |
|
|
INCLUDE_BSP_VXWORKS |
INCLUDE_NETINET_RAW_IP |
|
|
INCLUDE_DEBUG_CORE |
INCLUDE_NETINET_ROUTE |
|
|
INCLUDE_DEBUG_UTIL |
INCLUDE_NETINET_SYS_SOCKET |
|
|
INCLUDE_END |
INCLUDE_NETINET_UDP_USRREQ |
|
|
INCLUDE_END_BOOT |
INCLUDE_NETINET_UIPC_DOM |
|
|
INCLUDE_FTP |
INCLUDE_NETINET_UIPC_MBUF |
|
|
INCLUDE_HOST_TBL |
INCLUDE_NETINET_UIPC_SOCK |
|
|
INCLUDE_ICMP |
INCLUDE_NETINET_UIPC_SOCK2 |
|
|
INCLUDE_IGMP |
INCLUDE_NETINET_UNIXLIB |
|
|
INCLUDE_IO_EXTRA_INIT |
INCLUDE_NETMASK_GET |
|
|
INCLUDE_IO_SYSTEM_INIT |
INCLUDE_NETWORK |
|
|
INCLUDE_IP |
INCLUDE_NETWRS_ETHERMULTILIB |
|
|
INCLUDE_KERNEL_BASIC |
INCLUDE_NETWRS_IFLIB |
|
|
INCLUDE_KERNEL_BASIC_INIT |
INCLUDE_NETWRS_INETLIB |
|
|
INCLUDE_KERNEL_BASIC_INIT2 |
INCLUDE_NETWRS_NETBUFLIB |
|
|
INCLUDE_KERNEL_CORE |
INCLUDE_NETWRS_REMLIB |
|
|
INCLUDE_KERNEL_FULL |
INCLUDE_NETWRS_ROUTELIB |
|
|
INCLUDE_KERNEL_NORMAL_MODE |
INCLUDE_NETWRS_XDR |
|
|
INCLUDE_LOOPBACK |
INCLUDE_NTEND |
|
|
INCLUDE_MUX |
INCLUDE_NTPASSFS |
|
|
INCLUDE_NET_DRV |
INCLUDE_NULLNVRAM |
|
|
INCLUDE_NET_HOST_SETUP |
INCLUDE_PARTITION_INIT |
|
|
INCLUDE_NET_INIT |
INCLUDE_POST_KERNEL_CORE_INIT |
|
|
INCLUDE_NET_LIB |
INCLUDE_POST_KERNEL_CORE_INIT2 |
|
|
INCLUDE_NET_RANDOM |
INCLUDE_PRE_KERNEL_CORE_INIT |
|
|
55
Table 9.7 Required Kernel Components for
INCLUDE_NET_REM_IO |
INCLUDE_SIMPCTIMER |
|
|
INCLUDE_NET_SETUP |
INCLUDE_SOCKET_DEV |
|
|
INCLUDE_NET_TASK |
INCLUDE_SYSTEM_START_INIT |
|
|
INCLUDE_NETDEV_CONFIG |
INCLUDE_TCP |
|
|
INCLUDE_NETDEV_NAMEGET |
INCLUDE_TFTP_CLIENT |
|
|
INCLUDE_NETINET_IF |
INCLUDE_TIME_MONITOR_INIT |
|
|
INCLUDE_NETINET_IF_ETHER |
INCLUDE_UDP |
|
|
INCLUDE_NETINET_IF_SUBR |
INCLUDE_USER_APPL |
|
|
INCLUDE_NETINET_IGMP |
INCLUDE_WDB |
|
|
INCLUDE_NETINET_IN |
INCLUDE_WDB_COMM_END |
|
|
INCLUDE_NETINET_IN_CKSUM |
INCLUDE_WINSIO |
|
|
a. Install partition_socket_driver_v1.3. Follow instructions from Wind River for the installation.
56
Windows Platforms
10 Windows Platforms
First, see the basic instructions for compiling on Microsoft® Windows® systems provided in Section 9.4 in the RTI Core Libraries and Utilities User’s Manual. The following tables provide supplemental information. Table 10.1 lists the architectures supported on Windows operating systems.
Table 10.1 Supported Windows Architectures
Operating System |
CPU |
Compiler or |
RTI Architecture |
|
Software Development Kit a b |
||||
|
|
|
|
|
|
|
Visual Studio 2010 |
i86Win32VS2010 |
|
|
|
|
|
|
Windows 7 |
x86 |
Visual Studio 2010 (C++/CLI, C# 8.0 or 9.0) |
i86Win32dotnet4.0 |
|
|
|
|
|
|
|
|
Sun Java Platform Standard Edition JDK 1.6 |
i86Win32jdk |
|
|
|
|
|
|
|
|
Visual Studio 2010 |
x64Win64VS2010 |
|
|
|
|
|
|
Windows 7 |
x64 |
Visual Studio 2010 (C++/CLI, C# 8.0 or 9.0) |
x64Win64dotnet4.0 |
|
|
|
|
|
|
|
|
Sun Java Platform Standard Edition JDK 1.6 |
x64Win64jdk |
|
|
|
|
|
|
|
|
Visual Studio 2005 SP 1 |
i86Win32VS2005 |
|
|
|
|
|
|
|
|
Visual Studio 2005 SP 1 (C++/CLI, C# 8.0 or 9.0) |
i86Win32dotnet2.0 |
|
|
|
|
|
|
Windows 2003 |
x86 |
Visual Studio 2008 SP1 |
i86Win32VS2008 |
|
|
|
|
|
|
|
|
Visual Studio 2008 SP 1 (C++/CLI, C# 8.0 or 9.0) |
i86Win32dotnet2.0 |
|
|
|
|
|
|
|
|
Sun Java Platform Standard Edition JDK 1.6 |
i86Win32jdk |
|
|
|
|
|
|
|
|
Visual Studio 2005 SP 1 |
x64Win64VS2005 |
|
|
|
|
|
|
Windows 2003 |
x64 |
Visual Studio 2005 SP 1 (C++/CLI, C# 8.0 or 9.0) |
x64Win64dotnet2.0 |
|
|
|
|||
Visual Studio 2008 SP 1 |
x64Win64VS2008 |
|||
|
|
|||
|
|
|
|
|
|
|
Sun Java Platform Standard Edition JDK 1.6 |
x64Win64jdk |
|
|
|
|
|
|
|
|
Visual Studio 2005 SP 1 (C++, C# 8.0 or 9.0) |
x64Win64dotnet2.0 |
|
|
|
|
|
|
Windows Server 2008 R2 |
x64 |
Visual Studio 2010 |
x64Win64VS2010 |
|
Visual Studio 2010 (C++/CLI, C# 8.0 or 9.0) |
x64Win64dotnet4.0 |
|||
|
||||
|
|
|
|
|
|
|
Sun Java Platform Standard Edition JDK 1.6 |
x64Win64jdk |
|
|
|
|
|
|
|
|
Visual Studio 2005 SP 1 |
i86Win32VS2005 |
|
|
|
|
|
|
Windows Vista |
x86 |
Visual Studio 2005 SP 1 (C++/CLI, C# 8.0 or 9.0) |
i86Win32dotnet2.0 |
|
|
|
|||
Visual Studio 2008 SP 1 |
i86Win32VS2008 |
|||
|
|
|||
|
|
|
|
|
|
|
Sun Java Platform Standard Edition JDK 1.6 |
i86Win32jdk |
|
|
|
|
|
|
|
|
Visual Studio 2005 SP 1 |
x64Win64VS2005 |
|
|
|
|
|
|
Windows Vista |
x64 |
Visual Studio 2005 SP 1 (C++/CLI, C# 8.0 or 9.0) |
x64Win64dotnet2.0 |
|
|
|
|||
Visual Studio 2008 SP1 |
x64Win64VS2008 |
|||
|
|
|||
|
|
|
|
|
|
|
Sun Java Platform Standard Edition JDK 1.6 |
x64Win64jdk |
|
|
|
|
|
57
Table 10.1 Supported Windows Architectures
Operating System |
CPU |
Compiler or |
RTI Architecture |
|
Software Development Kit a b |
||||
|
|
|
|
|
Windows XPc |
|
Visual Studio 2005 SP 1 |
i86Win32VS2005 |
|
|
|
|
||
|
Visual Studio 2005 SP 1 (C++/CLI, C# 8.0 or 9.0) |
i86Win32dotnet2.0 |
||
Professional Edition Service |
x86 |
|||
|
|
|||
Visual Studio 2008 SP 1 |
i86Win32VS2008 |
|||
Pack 2 |
|
|||
|
|
|
||
|
|
Sun Java Platform Standard Edition JDK .6 |
i86Win32jdk |
|
|
|
|
|
|
|
|
Visual Studio 2005 SP 1 |
x64Win64VS2005 |
|
Windows XP |
|
|
|
|
|
Visual Studio 2005 SP 1 (C++/CLI, C# 8.0 or 9.0) |
x64Win64dotnet2.0 |
||
Professional |
x64 |
|||
|
|
|||
Visual Studio 2008 SP 1 |
x64Win64VS2008 |
|||
Edition Service Pack 2 |
|
|||
|
|
|
||
|
|
Sun Java Platform Standard Edition JDK 1.6 |
x64Win64jdk |
|
|
|
|
|
a.On Windows XP: If you are using JDK 5.0 and want to use Intel’s HyperThreading technology, use JDK 5.0 Update 6 (build 1.5.0_06), which includes fixes to JNI and HyperThreading. (If you must use Update 5 (build 1.5.0_05), you should disable HyperThreading.)
b.The RTI .NET assemblies are supported for both the C++/CLI and C# languages. The type support code generated by rtiddsgen is in C++/CLI; compiling the generated type support code requires Microsoft Visual C++. Calling the assembly from C# requires Microsoft Visual C#.
c.Windows XP does not support IP_TOS unless registry changes are made. See http://support.microsoft.com/kb/ 248611, http://www.microsoft.com/technet/technetmag/issues/2007/02/CableGuy/default.aspx.
The compiler flags and the libraries you will need to link into your application are listed in the following tables:
❏Windows XP Professional x64 Edition: Table 10.3 on page 64
❏All other supported Windows platforms: Table 10.2 on page 62. (See also: Libraries Required for Using RTI Secure WAN Transport APIs (Section 10.9).)
To use libraries that are statically linked into an application, link in all of the libraries listed in one of the rows of these tables. To use dynamic link libraries (DLL) on Windows systems, link in all of the libraries listed in one of the ‘Dynamic’ sections of the appropriate table. When the application executes, it will attempt to dynamically link in the libraries, which are located in the directory $(NDDSHOME)\lib\<architecture> (this directory must be placed on the path before the executable is started).
Windows libraries are provided in formats with and without debugging symbols. Choose the format appropriate for your current work. Do not mix libraries built for different formats.
Visual Studio® 2005 — Service Pack 1 Redistributable Package MFC Security Update Require- ment
❏You must have the Microsoft Visual C++ 2005 Service Pack 1 Redistributable Package MFC Security Update installed on the machine where you are running an application built with the release or debug libraries of the following RTI architecture packages:
•i86Win32VS2005 and x64Win64VS2005, built with dynamic libraries
•i86Win32jdk and x64Win64jdk
•i86Win32dotnet2.0 and x64Win64dotnet2.0
The Microsoft Visual C++ 2005 Service Pack 1 Redistributable Package MFC Security Update can be obtained from the following Microsoft website:
• http://www.microsoft.com/download/en/details.aspx?id=26347
58
Windows Platforms
Visual Studio® 2008 — Service Pack 1 Requirement
❏You must have Visual Studio 2008 Service Pack 1 or the Microsoft Visual C++ 2008 SP1 Redistribution Package installed on the machine where you are running an application built with the following RTI architecture packages:
•x64Win64VS2008 built with dynamic libraries
•i86Win32VS2008 built with dynamic libraries
The Microsoft Visual C++ 2008 SP1 Redistribution Package can be downloaded from the following Microsoft website:
•For x86 architectures: http://www.microsoft.com/downloads/details.aspx?fami-
•For x64 architectures: http://www.microsoft.com/downloads/details.aspx?Fami-
Visual Studio 2010 — Service Pack 1 Requirement
❏You must have Visual Studio 2010 Service Pack 1 or the Microsoft Visual C++ 2010 SP1 Redistribution Package installed on the machine where you are running an application built with the release libraries of the following RTI architecture packages:
•i86Win32VS2010 built with dynamic libraries
•x64Win64VS2010 built with dynamic libraries
•i86Win32dotnet4.0 and x64Win64dotnet4.0
To run an application built with debug libraries of the above RTI architecture packages, you must have Visual Studio 2010 Service Pack 1 installed.
The Microsoft Visual C++ 2010 Service Pack 1 Redistribution Package can be obtained from the following Microsoft website:
•For x86 architectures: http://www.microsoft.com/download/en/details.aspx?id=5555
•For x64 architectures: http://www.microsoft.com/download/en/details.aspx?id=14632
Windows Registry Setting for Better Performance:
On all Windows systems prior to Windows Vista, the following registry setting change will improve performance when sending UDP datagrams of size larger than 1024 bytes:
Under HKEY_LOCAL_MACHINE, SYSTEM, CurrentControlSet, Services, AFD, Parameters, add the following:
DWORD: Name=FastSendDatagramThreshold, Value = 65536
This will improve the Connext performance for data sizes larger than 1024 bytes (RTPS overhead included). It allows the datagrams to bypass the I/O subsystem by using a blocking send call instead of a buffer copy in the Windows Network stack.
Table 10.4 on page 65 provides details on the environment variables required to be set at run time for a Windows architecture.
For details on how the libraries were built by RTI, see Table 10.5 on page 66. This information is provided strictly for informational purposes; you do not need to use these parameters to compile your application. You may find this information useful if you are involved in any in- depth debugging.
Table 10.6 on page 68 and Table 10.7 on page 69 list additional libraries required when using the optional RTI Secure WAN Transport and RTI TCP Transport, respectively.
59
10.1Use Dynamic MFC Library, Not Static
To avoid communication problems in your Connext application, use the dynamic MFC library, not the static version.
If you use the static version, your Connext application may stop receiving samples once the Windows sockets are initialized.
10.2Visual Studio 2005 Required when Using RTI ‘Debug’ Libraries for Java or .NET APIs
The Connext dynamic libraries for Java and .NET1 rely on Microsoft Visual Studio 2005 Service Pack 1
However, while Microsoft includes debug versions of these
Fortunately, you do not need to use the RTI debug libraries to debug your own code. If you experience
10.3.NET API Requires Thread Affinity
To maintain proper concurrency control, .NET threads that call a Connext API must correspond
If you intend to call Connext APIs from explicitly managed threads, you must first call Thread.BeginThreadAffinity() in each such thread to ensure that it remains attached to a single operating system thread. See
When you are done making RTI calls from a given thread, you should call
Thread.EndThreadAffinity().
In any case, be sure to consult the RTI API documentation for more information about the thread safety contracts of the operations you use.
10.4Multicast Support
Multicast is supported on all platforms and is configured out of the box. That is, the default value for the initial peers list (NDDS_DISCOVERY_PEERS) includes a multicast address. See the online documentation for more information.
1. RTI Connext .NET language binding is currently supported for C# and C++/CLI.
60
Windows Platforms
10.5Supported Transports
Shared memory: Shared memory is supported and enabled by default. The Windows operating system manages the shared memory resources automatically. Cleanup is not required.
UDPv4: Supported and enabled by default.
UDPv6: Supported but disabled on architectures that use Visual Studio 2003 or higher. The peers list (NDDS_DISCOVERY_PEERS) must be modified to support UDPv6. No Traffic Class support.
TCP/IPv4: Supported on architectures that use Visual Studio 2005 or higher. (This is not a built- in transport.)
10.6Monotonic Clock Support
The monotonic clock (described in Section 8.6 in the RTI Core Libraries and Utilities User’s Manual) is supported.
10.7Support for Controlling CPU Core Affinity for RTI Threads
Support for controlling CPU core affinity (described in Section 19.5 in the RTI Core Libraries and Utilities User’s Manual) is not available for Windows platforms.
10.8PPP Link Support for Windows XP Systems
To use a Windows XP
To disable multicast for an interface, change the UDPv4 transport properties as follows:
// Disable multicast for PPP interface because it causes problems: char *bad_interfaces[] = { "192.168.250.100"}; // interface addr const int num_bad_interfaces =
sizeof(bad_interfaces)/sizeof(bad_interfaces[0]); UDPv4Properties.parent.deny_multicast_interfaces_list =
bad_interfaces; UDPv4Properties.parent.deny_multicast_interfaces_list_length =
num_bad_interfaces;
Failure to do so will result in Connext being unable to send any data at all over the PPP link.
Notes:
❏Setting up
❏Connext sets up certain sockets for multicast even if it has no multicast peers, in case some show up later. You avoid this by configuring the multicast deny list as described above.
10.9Libraries Required for Using RTI Secure WAN Transport APIs
This section is only relevant if you have installed RTI Secure WAN Transport. This feature is not part of the standard Connext package. If you choose to use it, it must be downloaded and installed separately. It is only available on specific architectures. See the RTI Secure WAN Transport Release Notes and RTI Secure WAN Transport Installation Guide for details.
To use the WAN or Secure Transport APIs, add the libraries from Table 10.6 on page 68 to your project files.
61
10.10Libraries Required for Using RTI TCP Transport APIs
To use the TCP Transport APIs, link against the additional libraries from Table 10.7 on page 69. (Select the files appropriate for your chosen library format.)
Table 10.2 Building Instructions for Windows Host Architectures
API |
Library |
RTI Libraries or Jar Filesa |
Required |
|
System |
Required Compiler Flags |
|||
|
Format |
|
Libraries |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
nddscz.lib |
|
|
|
Static |
nddscorez.lib |
|
/D “RTI_WIN32” /MT |
|
Release |
For Connext Messaging, also |
|
|
|
|
|
||
|
|
include: rticonnextmsgcz.lib |
|
|
|
|
|
|
|
|
|
nddsczd.lib |
|
|
|
Static |
nddscorezd.lib |
|
/D “RTI_WIN32” /MTd |
|
Debug |
For Connext Messaging, also |
netapi32.lib |
|
|
|
|||
C |
|
include: rticonnextmsgczd.lib |
advapi32.lib |
|
|
|
user32.lib |
|
|
|
|
nddsc.lib |
|
|
|
|
ws2_32.lib |
/D “RTI_WIN32” |
|
|
Dynamic |
nddscore.lib |
||
|
|
/D “NDDS_DLL_VARIABLE” |
||
|
Release |
For Connext Messaging, also |
|
|
|
|
/MD |
||
|
|
include: rticonnextmsgc.lib |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
nddscd.lib |
|
/D “RTI_WIN32” |
|
Dynamic |
nddscored.lib |
|
|
|
|
/D “NDDS_DLL_VARIABLE” |
||
|
Debug |
For Connext Messaging, also |
|
|
|
|
/MDd |
||
|
|
include: rticonnextmsgcd.lib |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
nddscppz.lib |
|
|
|
Static |
nddscz.lib |
|
|
|
nddscorez.lib |
|
/D “RTI_WIN32” /MT |
|
|
Release |
|
||
|
For Connext Messaging, also |
|
|
|
|
|
|
|
|
|
|
include: rticonnextmsgcppz.lib |
|
|
|
|
|
|
|
|
|
nddscppzd.lib |
|
|
|
Static |
nddsczd.lib |
|
|
|
nddscorezd.lib |
|
/D “RTI_WIN32” /MTd |
|
|
Debug |
|
||
|
For Connext Messaging, also |
netapi32.lib |
|
|
|
|
|
||
C++ |
|
include: rticonnextmsgcppzd.lib |
advapi32.lib |
|
|
nddscpp.lib |
user32.lib |
|
|
|
|
|
||
|
Dynamic |
nddsc.lib |
ws2_32.lib |
/D “RTI_WIN32” |
|
nddscore.lib |
|
/D “NDDS_DLL_VARIABLE” |
|
|
Release |
For Connext Messaging, also |
|
/MD |
|
|
|
||
|
|
include: rticonnextmsgcpp.lib |
|
|
|
|
|
|
|
|
|
nddscppd.lib |
|
|
|
Dynamic |
nddscd.lib |
|
/D “RTI_WIN32” |
|
nddscored.lib |
|
/D “NDDS_DLL_VARIABLE” |
|
|
Debug |
For Connext Messaging, also |
|
/MDd |
|
|
|
||
|
|
include: rticonnextmsgcppd.lib |
|
|
|
|
|
|
|
62
|
|
|
|
|
Windows Platforms |
Table 10.2 Building Instructions for Windows Host Architectures |
|
||||
|
|
|
|
|
|
|
|
Library |
RTI Libraries or Jar Filesa |
Required |
|
|
API |
System |
Required Compiler Flags |
||
|
|
Format |
|
Libraries |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
nddscpp.lib |
|
/D “RTI_WIN32” |
|
|
|
nddsc.lib |
|
|
|
|
|
|
/D “NDDS_DLL_VARIABLE” |
|
|
|
Release |
nddscore.lib |
|
|
|
|
|
/MD |
||
|
|
|
nddsdotnet.dll or |
|
|
|
C++/ |
|
|
/D “WIN32_LEAN_AND_MEAN” |
|
|
|
nddsdotnet40.dll |
|
||
|
|
N/A |
|
||
|
|
|
|
|
|
|
CLI |
|
nddscppd.lib |
/D “RTI_WIN32” |
|
|
|
|
|||
|
|
|
nddscd.lib |
|
|
|
|
|
|
/D “NDDS_DLL_VARIABLE” |
|
|
|
Debug |
nddscored.lib |
|
|
|
|
|
/MDd |
||
|
|
|
nddsdotnetd.dll or |
|
|
|
|
|
|
/D “WIN32_LEAN_AND_MEAN” |
|
|
|
|
nddsdotnet40.dll |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
nddsdotnet.dll or |
|
|
|
|
|
nddsdotnet40.dll |
|
|
|
|
Release |
For Connext Messaging, also |
|
|
|
|
include: |
|
|
|
|
|
|
|
|
|
|
|
|
rticonnextdotnet.dll or |
|
|
|
C# |
|
rticonnextdotnet40.dll |
N/A |
N/A |
|
|
|
|||
|
|
nddsdotnetd.dll or |
|||
|
|
|
|
|
|
|
|
|
nddsdotnet40d.dll |
|
|
|
|
Debug |
For Connext Messaging, also |
|
|
|
|
include: |
|
|
|
|
|
|
|
|
|
|
|
|
rticonnextdotnetd.dll or |
|
|
|
|
|
rticonnextdotnet40d.dll |
|
|
|
|
|
|
|
|
|
|
|
nddsjava.jar |
|
|
|
|
Release |
For Connext Messaging, also |
|
|
|
Java |
|
include: rticonnextmsg.jar |
N/A |
N/A |
|
|
|
|||
|
|
nddsjavad.jar |
|||
|
|
|
|
|
|
|
|
Debug |
For Connext Messaging, also |
|
|
|
|
|
include: rticonnextmsgd.jar |
|
|
|
|
|
|
|
|
a. The RTI C/C++ libraries are located in $(NDDSHOME)\lib\<architecture>\. The RTI Java libraries are located in $(NDDSHOME)\class\.
(where $(NDDSHOME) is where Connext is installed, such as c:\rti\ndds.5.0.x)
63
Table 10.3 Building Instructions for Windows Target Architectures
|
Library |
RTI Libraries or Jar Filesa |
Required |
|
API |
System |
Required Compiler Flags |
||
|
Format |
|
Libraries |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
nddscz.lib |
|
/Gd /MT /D “WIN32” |
|
Static |
nddscorez.lib |
|
|
|
|
/D “RTI_WIN32” |
||
|
Release |
For Connext Messaging, also include: |
|
|
|
|
/D “NDEBUG” |
||
|
|
rticonnextmsgcz.lib |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
nddsczd.lib |
|
|
|
Static |
nddscorezd.lib |
|
/Gd /MTd /D “WIN32” |
|
Debug |
For Connext Messaging, also include: |
netapi32.lib |
/D “RTI_WIN32” |
C |
|
rticonnextmsgczd.lib |
advapi32.lib |
|
|
nddsc.lib |
user32.lib |
/Gd /MD /D “WIN32” |
|
|
|
|||
|
Dynamic |
nddscore.lib |
ws2_32.lib |
/D “NDDS_DLL_VARIABLE” |
|
Release |
For Connext Messaging, also include: |
|
/D “RTI_WIN32” |
|
|
rticonnextmsgc.lib |
|
/D “NDEBUG” |
|
|
|
|
|
|
|
nddscd.lib |
|
/Gd /MDd /D “WIN32” |
|
Dynamic |
nddscored.lib |
|
|
|
|
/D “NDDS_DLL_VARIABLE” |
||
|
Debug |
For Connext Messaging, also include: |
|
|
|
|
/D “RTI_WIN32” |
||
|
|
rticonnextmsgcd.lib |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
nddscppz.lib |
|
|
|
Static |
nddscz.lib |
|
/Gd /EHsc /MT /D “WIN32” |
|
nddscorez.lib |
|
/D “RTI_WIN32” |
|
|
Release |
|
||
|
For Connext Messaging, also include: |
|
/D “NDEBUG” |
|
|
|
|
||
|
|
rticonnextmsgcppz.lib |
|
|
|
|
|
|
|
|
|
nddscppzd.lib |
|
|
|
Static |
nddsczd.lib |
|
/Gd /EHsc /MTd /D “WIN32” |
|
nddscorezd.lib |
|
||
|
Debug |
|
/D “RTI_WIN32” |
|
|
For Connext Messaging, also include: |
netapi32.lib |
||
|
|
|
||
C++ |
|
rticonnextmsgcppzd.lib |
advapi32.lib |
|
|
|
user32.lib |
|
|
|
nddscpp.lib |
|
||
|
|
|
||
|
|
ws2_32.lib |
/Gd /EHsc /MD /D “WIN32” |
|
|
|
nddsc.lib |
||
|
Dynamic |
|
/D “NDDS_DLL_VARIABLE” |
|
|
nddscore.lib |
|
||
|
Release |
For Connext Messaging, also include: |
|
/D “RTI_WIN32” |
|
|
|
/D “NDEBUG” |
|
|
|
rticonnextmsgcpp.lib |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
nddscppd.lib |
|
|
|
Dynamic |
nddscd.lib |
|
/Gd /EHsc /MDd /D “WIN32” |
|
nddscored.lib |
|
/D “NDDS_DLL_VARIABLE” |
|
|
Debug |
For Connext Messaging, also include: |
|
/D “RTI_WIN32” |
|
|
|
||
|
|
rticonnextmsgcppd.lib |
|
|
|
|
|
|
|
64
|
|
|
|
|
|
|
|
|
Windows Platforms |
|
Table 10.3 Building Instructions for Windows Target Architectures |
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
Library |
|
RTI Libraries or Jar Filesa |
|
Required |
|
|
||
|
API |
|
|
System |
Required Compiler Flags |
|
||||
|
|
Format |
|
|
|
|
|
Libraries |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
nddsdotnet.dll or |
|
|
|
|
|
|
|
|
|
|
nddsdotnet40.dll |
|
|
|
|
|
|
|
|
Release |
|
For Connext Messaging, also include: |
|
|
|
|
||
|
|
|
|
rticonnextdotnet.dll or |
|
|
|
|
|
|
|
C# |
|
|
rticonnextdotnet40.dll |
|
|
N/A |
N/A |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
nddsdotnetd.dll or |
|
|
|
||||
|
|
|
|
|
|
|
|
|
||
|
|
|
|
nddsdotnet40d.dll |
|
|
|
|
|
|
|
|
Debug |
|
For Connext Messaging, also include: |
|
|
|
|
||
|
|
|
|
rticonnextdotnetd.dll or |
|
|
|
|
|
|
|
|
|
|
rticonnextdotnet40d.dll |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|