[omniORB] Red Hat Linux 8.0 - SRPMS compilation problem

Thomas Lockhart lockhart@fourpalms.org
Mon Oct 7 15:57:00 2002


...
> I got the following error when rpmbuild --rebuild omniORB-4.0.0-3.src.rpm:

On Mandrake 9.0 I've got the following RPMs installed:

  openssl-0.9.6g-1mdk
  libopenssl0-devel-0.9.6g-1mdk
  libopenssl0-0.9.6g-1mdk

Your problem seems to be related to declaration conflicts between 
standard features and the SSL package. On my machine, if there is a 
problem with defining _XOPEN_SOURCE then crypt() will be redefined in 
des.h, causing your symptom. What version of openssl are you running? 
Trouble between /usr/include/unistd.h and openssl should have shown up 
on my machine too I would think...

On a somewhat related topic, should we make SSL an optional feature in 
the source RPM?

                    - Thomas

> g++ -c -O2 -Wall -Wno-unused -fexceptions -I.. -I./.. 
> -I../../../../../include/omniORB4/internal 
> -I../../../../../include/omniORB4/internal -D_OMNIORB_SSL_LIBRARY 
> -D__OMNIORB4__ -I../../../../../stub
> -D_REENTRANT -I/usr/include -I. -I. -I../../../../../include 
> -I../../../../../include -D__OSVERSION__=2 -D__linux__ -D__x86__ -o 
> static/sslActive.o sslActive.cc
> cc1plus: warning: changing search order for system directory "/usr/include"
> cc1plus: warning:   as it has already been specified as a non-system 
> directory
> In file included from 
> ../../../../../include/omniORB4/internal/SocketCollection.h:161,
>                 from sslActive.cc:43:
> /usr/include/unistd.h:946: declaration of `char* crypt(const char*, const
>   char*) throw ()' throws different exceptions
> /usr/include/openssl/des.h:193: than previous declaration `char* 
> crypt(const
>   char*, const char*)'
> make[5]: *** [static/sslActive.o] Error 1
> make[5]: Leaving directory 
> `/usr/src/redhat/BUILD/omniORB-4.0.0/src/lib/omniORB/orbcore/ssl'