freebsd/ace: Errors when compiling ACE application

Jean-Philippe Daigle jean.daigle at SolaceSystems.com
Mon Dec 18 13:48:54 PST 2006


Hello,

I'm trying to compile an application using the FreeBSD port of ACE 5.5.
We've been successfully supporting the application under Linux, and are
currently trying to port to FreeBSD 6.1.

The problem I'm having now is that including ace/OS_NS_netdb.h results
in errors; from what I've read, gethost*_r functions are not defined on
FreeBSD?

My compiler output looks like the following, and since this is FreeBSD,
I believe "ACE_LACKS_NETDB_REENTRANT_FUNCTIONS" is defined. Help from
any other ACE-on-FreeBSD users would be greatly appreciated!

g++ -Wall -Wpointer-arith -g -pipe -O0 -DACE_HAS_EXCEPTIONS
-D__ACE_INLINE__ -I/usr/local/include -Werror  -I-
-I/usr/home/solaceuser/dev/cppcsmp/..
-I/usr/home/solaceuser/dev/cppcsmp/solace -I/usr/local/include/ -c
/usr/home/solaceuser/dev/cppcsmp/CSMPFactory.cpp -o CSMPFactory.o
In file included from /usr/local/include/ace/OS_NS_netdb.h:142,
                 from
/usr/home/solaceuser/dev/cppcsmp/CSMPFactory.cpp:19:
/usr/local/include/ace/OS_NS_netdb.inl: In function `hostent*
ACE_OS::gethostbyaddr_r(const char*, int, int, hostent*, char*, int*)':
/usr/local/include/ace/OS_NS_netdb.inl:108: error: `::gethostbyaddr_r'
has not been declared
/usr/local/include/ace/OS_NS_netdb.inl: In function `hostent*
ACE_OS::gethostbyname_r(const char*, hostent*, char*, int*)':
/usr/local/include/ace/OS_NS_netdb.inl:218: error: `::gethostbyname_r'
has not been declared
/usr/local/include/ace/OS_NS_netdb.inl: In function `protoent*
ACE_OS::getprotobyname_r(const char*, protoent*, char*)':
/usr/local/include/ace/OS_NS_netdb.inl:365: error: `::getprotobyname_r'
has not been declared
/usr/local/include/ace/OS_NS_netdb.inl: In function `protoent*
ACE_OS::getprotobynumber_r(int, protoent*, char*)':
/usr/local/include/ace/OS_NS_netdb.inl:432: error:
`::getprotobynumber_r' has not been declared
/usr/local/include/ace/OS_NS_netdb.inl: In function `servent*
ACE_OS::getservbyname_r(const char*, const char*, servent*, char*)':
/usr/local/include/ace/OS_NS_netdb.inl:506: error: `::getservbyname_r'
has not been declared

--
Jean-Philippe Daigle



More information about the freebsd-threads mailing list