I have been moderately successful in compiling ACE/TAO under Cygwin (Some problems with cone of the Services, but my CORBA programs interoperate with our Solaris-based TAO services (and other CORBA clients/servants) fine.
I encountered two problems with a couple of the definitions in the Cygwin /usr/include files: 1) In limits.h, IOV_MAX is defined as (__INT_MAX__-1) (a *very* large number). The other UNIX systems I could examime set it to a much smaller value (like 1024). The comment says this is the "/* Maximum number of iovcnt in a writev */". Does Cygwin really support this many? Or is this just a convenient setting? The reason for the question is that ACE (and TAO) define arrays for the full number of supported IOV entries, and g++ chokes on an array of size __INT_MAX__-1 (To set ACE/TAO to compile, I patched this value to 1024) 2) As a convenience (I suppose), math.h has a macro definition for log2. This is not the case in any other math.h I have been able to examine and causes a real problem in the development of a platform-independent "log2" routine. The problem is that the pre-processor replaces the string "log2" with it's defined value without regard to context. This means that while I can write my own log() function (in my namespace, or course) I cannot write a log2 function -- it won't compile. (To get ACE/TAO to compile, I patched math.h to remove this define.) The real questions in this post are: 1) Should there a better value for IOV_MAX in limits.h 2) Should the (as far as I can tell) non-standard define for log2 be removed (or replaced with a real log2 function?) 3) Should I just go away and be quiet? Thanks, -David. --------------------- David Dawson [EMAIL PROTECTED] 703-367-3885 -----Original Message----- From: Luc Hermitte [mailto:[EMAIL PROTECTED] Sent: Saturday, April 05, 2003 8:06 AM To: [EMAIL PROTECTED] Subject: Re: ORB Hello, * On Fri, Apr 04, 2003 at 05:07:50PM +0200, Vaillant Etienne <[EMAIL PROTECTED]> wrote: > I need a ORB for an application under Cygwin. I know Mico and Omniorb > but are there other ? TAO may be -- based on the C++ library ACE. I am not sure if it has been ported for Cygwin, but it is available on many different systems -- unices, Windows, etc. HTH, -- Luc Hermitte -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/ -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/