[Ace-users] [ace-users] [ace-bugs] Stock build system: OpenBSD and asm symbols
Douglas C. Schmidt
schmidt at dre.vanderbilt.edu
Sat Oct 13 12:43:33 CDT 2007
Hi,
Thanks for using the PRF.
>ACE VERSION: 5.6.1
>
>HOST MACHINE and OPERATING SYSTEM:
>x86, OpenBSD 4.1
>
>TARGET MACHINE and OPERATING SYSTEM, if different from HOST:
>Not different.
>
>COMPILER NAME AND VERSION (AND PATCHLEVEL):
>GCC 3.3.3
>
>THE $ACE_ROOT/ace/config.h FILE:
>config-openbsd.h
>
>THE $ACE_ROOT/include/makeinclude/platform_macros.GNU FILE:
>platform_openbsd.GNU
>
>CONTENTS OF $ACE_ROOT/bin/MakeProjectCreator/config/default.features:
>Does not exist.
>
>AREA/CLASS/EXAMPLE AFFECTED:
>Running programs which use ACE (and TAO) is affected.
>
>DOES THE PROBLEM AFFECT:
>COMPILATION? No
>LINKING? No
>EXECUTION? Yes
>OTHER (please specify)?
>
>SYNOPSIS:
>ACE_OS::dlsym always fails.
>
>DESCRIPTION:
>It looks like that OpenBSD doesn't prepend an underscore in shared
>objects' symbols anymore.
>
>REPEAT BY:
>Run whatever program which uses TAO under OpenBSD 4.1. It fails with the
>following message:
>"ORBInitializer Registry unable to find the ORBInitializer Registry
>instance"
>because it can't find a symbol in libTAO_PI.so.
>
>SAMPLE FIX/WORKAROUND:
>Remove the following line from config-openbsd.h:
>#define ACE_USES_ASM_SYMBOL_IN_DLSYM
Is there a particular version number symbal that we can check for
here, e.g.,
#ifdef (_OPENBSD_4_1)
#define ACE_USES_ASM_SYMBOL_IN_DLSYM
#endif
or something like this to avoid breaking earlier versions of OpenBSD?
Thanks,
Doug
--
Dr. Douglas C. Schmidt Professor and Associate Chair
Electrical Engineering and Computer Science TEL: (615) 343-8197
Vanderbilt University WEB: www.dre.vanderbilt.edu/~schmidt
Nashville, TN 37203 NET: d.schmidt at vanderbilt.edu
More information about the Ace-users
mailing list