ACE, DAO, OpenDDS

Novell, don’t drop the ball in connecting to industry. Specifically referring to OpenSuse 10.2, Novell created a trouble free os which supports big-time ditributions like Oracle without requiring the public to contact Novell at all.

And as a result historically, institutions which create advanced distributions like ACE and TAO have listed OpenSuse as compatible as seen here.

Building and Installing TAO.

However, such organizations are beginning to stop supporting OpenSuse as is the case with OpenDDS which requires ACE and TAO.

I have an ongoing support request here.

SourceForge.net: Tracker atid=685820

I will repost it as follows:

------------- repost start
Date: 2008-10-26 04:00
Sender: nobody

Mitza,

I installed the latest version of ACE and TAO from the source you provided
( i.e. the object computing supported version ). That went fine - all very
clean.

Then I renamed my original installation of openDDS to openDDSorg and
re-extracted and rebuilt openDDS.

Almost made it, but I have the following errors.

-------------------- errors - start

GNUmakefile:
/linux_app_distros/OpenDDS/DDS/performance-tests/DCPS/Sync/GNUmakefile.Sync_ServerLib
MAKEFLAGS=w – built_in_topics=0

g++ -fvisibility=hidden -fvisibility-inlines-hidden -W -Wall
-Wpointer-arith -O3 -g -pipe -D_REENTRANT -DACE_HAS_AIO_CALLS
-D_GNU_SOURCE -I/opt/ACE_wrappers/ -I/opt/ACE_wrappers//TAO
-DACE_HAS_EXCEPTIONS -D__ACE_INLINE__ -I/opt/ACE_wrappers/
-I/opt/ACE_wrappers//TAO -DSYNC_BUILD_DLL -c -fPIC -o
.shobj/SyncServer_i.o SyncServer_i.cpp
g++ -fvisibility=hidden -fvisibility-inlines-hidden -W -Wall
-Wpointer-arith -O3 -g -pipe -D_REENTRANT -DACE_HAS_AIO_CALLS
-D_GNU_SOURCE -I/opt/ACE_wrappers/ -I/opt/ACE_wrappers//TAO
-DACE_HAS_EXCEPTIONS -D__ACE_INLINE__ -I/opt/ACE_wrappers/
-I/opt/ACE_wrappers//TAO -DSYNC_BUILD_DLL -c -fPIC -o .shobj/SyncS.o
SyncS.cpp
g++ -fvisibility=hidden -fvisibility-inlines-hidden -W -Wall
-Wpointer-arith -O3 -g -pipe -D_REENTRANT -DACE_HAS_AIO_CALLS
-D_GNU_SOURCE -I/opt/ACE_wrappers/ -I/opt/ACE_wrappers//TAO
-DACE_HAS_EXCEPTIONS -D__ACE_INLINE__ -I/opt/ACE_wrappers/
-I/opt/ACE_wrappers//TAO -DSYNC_BUILD_DLL -c -fPIC -o .shobj/SyncC.o
SyncC.cpp
g++ -Wl,-O3 -D_REENTRANT -DACE_HAS_AIO_CALLS -D_GNU_SOURCE
-I/opt/ACE_wrappers/ -I/opt/ACE_wrappers//TAO -DACE_HAS_EXCEPTIONS
-D__ACE_INLINE__ -I/opt/ACE_wrappers/ -I/opt/ACE_wrappers//TAO
-DSYNC_BUILD_DLL -shared -Wl,-h -Wl,libSyncServer.so.1.5a_p9 -o
libSyncServer.so.1.5a_p9 .shobj/SyncServer_i.o .shobj/SyncS.o
.shobj/SyncC.o -Wl,-E -L/opt/ACE_wrappers//ace -L./ -L…/…/…/lib
-L/opt/ACE_wrappers//TAO/tao -L. -L/opt/ACE_wrappers//lib -lTAO_IORTable
-lTAO_PortableServer -lTAO_AnyTypeCode -lTAO -lACE -ldl -lpthread -lrt
/usr/lib/gcc/i586-suse-linux/4.1.2/…/…/…/…/i586-suse-linux/bin/ld:
.shobj/SyncServer_i.o(.text+0x1a01): unresolvable R_386_GOTOFF relocation
against symbol std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()@@GLIBCXX_3.4' /usr/lib/gcc/i586-suse-linux/4.1.2/../../../../i586-suse-linux/bin/ld: final link failed: Nonrepresentable section on output collect2: ld returned 1 exit status make[1]: *** [libSyncServer.so.1.5a_p9] Error 1 make[1]: Leaving directory /linux_app_distros/OpenDDS/DDS/performance-tests/DCPS/Sync’
make: *** [Sync_ServerLib] Error 2
www:/linux_app_distros/OpenDDS/DDS #

--------------------errors - end

Any ideas ?

Regards,
Help

------------- repost end

Can you help your long time users like me run OpenDDS ?

After a miraculously clean install and successful build of ACE and TAO on OpenSuse 10.2 and a remarkably unremarkable attempt to install and build OpenDDS on OpenSuse 10.2, the build of OpenDDS fails.

Can you help your users like me make OpenDDS run ?

This problem is resolved thanks to the great support from folks at OpenDDS and the fact that Novell did a great job on OpenSuse 10.2.

The resolution was twofold

  1. Updating to the most recent version of ACE+TAO from the Object Computing website ( as opposed to some other place ) to support OpenDDS

  2. add

no_hidden_visibility=1

to the top of the file

ACE_wrappers/include/makeinclude/platform_macros.GNU

Very clean warning free build.