f



[ace-bugs] Re: [ace-users] RE: HPUX11.00 defines token 'undo' as __undo in sys/sem.h

Hi Lance,

>> It seems I failed to express myself clearly. Here I go again. :-)
>> I understand the need for the ACE_OS::last_error() function. What I don't
>> understand is the reason for its particular windows implementation.
>> Specifically, why does it favour returning errno, rather than
>> GetLastError()?

As I said earlier, the intent was to replace the direct use of errno
in the ACE code, particularly for the ACE C++ socket wrapper facades.
These wrapper facades typically check errno since that is common
across both Windows and UNIX for socket operations.  Only if errno is
0 is the value of GetLastError() returned.  If we *hadn't* done this,
then there would have been all sorts of special-case code in the ACE
wrapper facades.

>> In my experience, on Windows GetLastError is sometimes much
>> more specific about the problem that occurred. 

I agree, which is why you need to be careful when using
ACE_OS::last_error(), which has a very specific purpose that I
described above.

Take care,

        Doug
-- 
Dr. Douglas C. Schmidt, Professor           TEL: (615) 343-8197
Electrical Engineering and Computer Science FAX: (615) 343-7440
Vanderbilt University                       WEB: www.cs.wustl.edu/~schmidt/
Nashville, TN 37203                         NET: d.schmidt@vanderbilt.edu

0
Douglas
7/7/2004 5:27:07 AM
comp.soft-sys.ace 20326 articles. 1 followers. marlow.andrew (167) is leader. Post Follow

0 Replies
892 Views

Similar Articles

[PageSpeed] 18

Reply:

Similar Artilces:

[ace-bugs] Re: [ace-users] HPUX11.00 defines token 'undo' as __undo in sys/sem.h
Hi Lance, Just to clarify, this isn't really an ACE bug/issue, right? You're just asking for suggestions on how to work around an HPUX issue? Thanks, Doug >> ACE VERSION: 5.4 >> >> HOST MACHINE and OPERATING SYSTEM: >> HPUX 11.00 >> >> TARGET MACHINE and OPERATING SYSTEM, if different from HOST: >> COMPILER NAME AND VERSION (AND PATCHLEVEL): >> gcc -v >> Reading specs from /usr/local/lib/gcc-lib/hppa2.0n-hp-hpux11.00/3.2/specs >> Configured with: ./configure : (reconfigured) ./configure : (reconfigured) >> ./configure : (reconfigured) ./configure : (reconfigured) ./configure : >> (reconfigured) ./configure : (reconfigured) ./configure : (reconfigured) >> ./configure : (reconfigured) ./configure : (reconfigured) ./configure : >> (reconfigured) ./configure >> Thread model: posix >> gcc version 3.2 >> >> >> CONTENTS OF $ACE_ROOT/ace/config.h: >> #include "ace/config-hpux-11.00.h" >> >> CONTENTS OF $ACE_ROOT/include/makeinclude/platform_macros.GNU (unless >> this isn't used in this case, e.g., with Microsoft Visual C++): >> include $(ACE_ROOT)/include/makeinclude/platform_hpux_gcc.GNU >> >> >> AREA/CLASS/EXAMPLE AFFECTED: >> >> >...

[ace-users] Re: HPUX11.00 defines token 'undo' as __undo in sys/sem.h
Hi Lance, > Can you tell me why last_error favours errno on Windows? The only > mention I've found on google groups was a discussion between you and > Vladimir Mityunin in 2001. But no mention of WHY. I believe it's because ACE_OS::last_error() started out as a way to rid ourselves from directly accessing errno in ACE code - particularly the ACE C++ socket wrapper facades. On Windows, some things that would use errno on UNIX require ::GetLastError(), so this method tries to shield the rest of ACE from having to know about this. I hope this helps. Take care, Doug ...

RE: [ace-users] HPUX11.00 defines token 'undo' as __undo in sys/sem.h
Hi Lance, Thanks for using the PRF! This seems like a problem you may want to raise with HP. If a part of ACE is using the sem stuff, and we blindly #undef'd it, ACE would break. For your example, you can try only including the particular OS_NS_*.h file(s) you need - that may avoid the problem. Best regards, -Steve -- Steve Huston, Riverace Corporation Co-author of "C++ Network Programming" and "The ACE Programmer's Guide" Books, ACE kit and support info at http://www.riverace.com/ -----Original Message----- From: owner-ace-users@cse.wustl.edu [mailto:owner-ace-users@cse.wustl.edu] On Behalf Of Lance Paine Sent: Tuesday, July 06, 2004 9:08 PM To: 'ace-users@cs.wustl.edu' Subject: [ace-users] HPUX11.00 defines token 'undo' as __undo in sys/sem.h ACE VERSION: 5.4 HOST MACHINE and OPERATING SYSTEM: HPUX 11.00 TARGET MACHINE and OPERATING SYSTEM, if different from HOST: COMPILER NAME AND VERSION (AND PATCHLEVEL): gcc -v Reading specs from /usr/local/lib/gcc-lib/hppa2.0n-hp-hpux11.00/3.2/specs Configured with: ./configure : (reconfigured) ./configure : (reconfigured) ./configure : (reconfigured) ./configure : (reconfigured) ./configure : (reconfigured) ./configure : (reconfigured) ./configure : (reconfigured) ./configure : (reconfigured) ./configure : (reconfigured) ./configure : (reconfigured) ./configure Thread model: posix gcc version 3.2...

[ace-users] RE: HPUX11.00 defines token 'undo' as __undo in sys/sem.h #2
It seems I failed to express myself clearly. Here I go again. :-) I understand the need for the ACE_OS::last_error() function. What I don't understand is the reason for its particular windows implementation. Specifically, why does it favour returning errno, rather than GetLastError()? In my experience, on Windows GetLastError is sometimes much more specific about the problem that occurred. #if defined (ACE_WIN32) 00010 int lerror = ::GetLastError (); 00011 int lerrno = errno; 00012 return lerrno == 0 ? lerror : lerrno; 00013 #else I wonder why it isn't: #if defined (ACE_WIN32) 00012 return ::GetLastError(); 00013 #else or #if defined (ACE_WIN32) 00010 int lerror = ::GetLastError (); 00011 int lerrno = errno; 00012 return lerror == 0 ? lerrno : lerror; 00013 #else -----Original Message----- From: Douglas C. Schmidt [mailto:schmidt@cs.wustl.edu] Sent: Wednesday, 7 July 2004 5:05 p.m. To: lance@ams.co.nz; ace-users@cs.wustl.edu Subject: Re: HPUX11.00 defines token 'undo' as __undo in sys/sem.h Hi Lance, > Can you tell me why last_error favours errno on Windows? The only > mention I've found on google groups was a discussion between you and > Vladimir Mityunin in 2001. But no mention of WHY. I believe it's because ACE_OS::last_error() started out as a way to rid ourselves from directly accessing errno in ACE code - particularly the ACE C++ socket wrapper facades. On Windows, some...

[ace-users] HPUX11.00 defines token 'undo' as __undo in sys/sem.h
This message is in MIME format. Since your mail reader does not understand this format, some or all of this message may not be legible. ------_=_NextPart_001_01C463BE.CC3C81B0 Content-Type: text/plain; charset="iso-8859-1" ACE VERSION: 5.4 HOST MACHINE and OPERATING SYSTEM: HPUX 11.00 TARGET MACHINE and OPERATING SYSTEM, if different from HOST: COMPILER NAME AND VERSION (AND PATCHLEVEL): gcc -v Reading specs from /usr/local/lib/gcc-lib/hppa2.0n-hp-hpux11.00/3.2/specs Configured with: ./configure : (reconfigured) ./configure : (reconfigured) ../configure : (reconfigured) ./configure : (reconfigured) ./configure : (reconfigured) ./configure : (reconfigured) ./configure : (reconfigured) ../configure : (reconfigured) ./configure : (reconfigured) ./configure : (reconfigured) ./configure Thread model: posix gcc version 3.2 CONTENTS OF $ACE_ROOT/ace/config.h: #include "ace/config-hpux-11.00.h" CONTENTS OF $ACE_ROOT/include/makeinclude/platform_macros.GNU (unless this isn't used in this case, e.g., with Microsoft Visual C++): include $(ACE_ROOT)/include/makeinclude/platform_hpux_gcc.GNU AREA/CLASS/EXAMPLE AFFECTED: DOES THE PROBLEM AFFECT: COMPILATION? yes. LINKING? On Unix systems, did you run make realclean first? EXECUTION? OTHER (please specify)? [Pleas...

[ace-bugs] Re: [ace-users] ACE_Logging_Strategy doesn't work when built with #define ACE_HAS_MFC 1 in config.h
Hi Ken, Thanks for using the PRF. >> ACE VERSION: 5.4.1 >> >> HOST MACHINE and OPERATING SYSTEM: >> Windows 2000 >> >> TARGET MACHINE and OPERATING SYSTEM, if different from HOST: >> COMPILER NAME AND VERSION (AND PATCHLEVEL): >> >> CONTENTS OF $ACE_ROOT/ace/config.h >> #define ACE_HAS_STANDARD_CPP_LIBRARY 1 >> //#define ACE_HAS_MFC 1 >> #define ACE_HAS_NO_THROW_SPEC 1 >> >> #include "ace/config-win32.h" >> >> AREA/CLASS/EXAMPLE AFFECTED: >> ACE_Logging_Strategy examples failed when #define ACE_HAS_MFC 1 is in config.h. >> DOES THE PROBLEM AFFECT: >> COMPILATION? >> LINKING? >> On Unix systems, did you run make realclean first? >> EXECUTION? >> OTHER (please specify)? >> ACE_Logging_Strategy examples/tests and following file don't work as expected when one puts #define ACE_HAS_MFC 1 in config.h >> >> SYNOPSIS: >> Can't use ACE_Service_Config::open() to configure Logging strategy using svc.conf with: >> dynamic Logger Service_Object * ACE:_make_ACE_Logging_Strategy() "-w -s foobar.log -f STDERR|OSTREAM -pDEBUG|~INFO|~WARNING|~NOTICE|~ERROR|~CRITICAL|~ALERT|~EMERGENCY" >> >> >> DESCRIPTION: >> ACE_Service_Config...

Re: [ace-users] [ace-bugs] ACE don't link
Hi, According to MSDN you should link Advapi32.lib, can you add that to the linker flags? Regards, Johnny Willemsen Remedy IT Postbus 101 2650 AC Berkel en Rodenrijs The Netherlands www.theaceorb.nl / www.remedy.nl *** Next ACE Training May 7-10, see http://www.theaceorb.nl *** *** Integrated compile and test statistics see http://remedy.nl *** *** Commercial service and support for ACE/TAO/CIAO *** *** See http://www.theaceorb.nl/en/support.html *** "Roman Bober" <roman300178@gmail.com> wrote in message news:<mailman.97.1178117505.5286.ace-bugs@mail.cse.wustl.edu>... > Hi ! > Please see below.I'd really appriciate any suggestions. > > ACE VERSION: 5.5.8 > > OPERATING SYSTEM -windows XP > WINSOCK dll version : 3.10.0.103 > > THE $ACE_ROOT/ace/config.h attached > > AREA/CLASS/EXAMPLE AFFECTED: > all modules failed to link > > THE PROBLEM AFFECT: > LINKING -ACE affected > > SYNOPSIS: > ACE project don't link > DESCRIPTION: > I tried to compile the ACE solution using Visual C++ 2005 Express > addtion on windows XP. The compilation took place with no problem, > however the code don't link. and I get the LNK2019/01 errors, for > example : > > Configuration.obj : error LNK2019: unresolved external symbol > __imp__RegCloseKey@4 referenced in function "pro...

[ace-bugs] Re: [ace-users] How to use c++ native exception handling instead of ACE's while building ACE+TAO
Hi, To ensure that we have proper version/platform/compiler information, please make sure you fill out the appropriate problem report form (PRF), which is in $ACE_ROOT/PROBLEM-REPORT-FORM $TAO_ROOT/PROBLEM-REPORT-FORM or in $ACE_ROOT/BUG-REPORT-FORM $TAO_ROOT/BUG-REPORT-FORM in older versions of ACE+TAO. Make sure to include this information when asking any questions about ACE+TAO since otherwise we have to "guess" what version/platform/compiler/options you've using, which is error-prone and slows down our responsiveness. > I know we can set exceptions = 1 or 0 in platform_macros.GNU > to use ACE's exception handling or C++'s native exception handling. > > But I am still not clear on which value should I set exceptions to if > I want to use only the C++'s native exception handling support. Then just set it to 1 which is the default. Regards, Johnny Willemsen Remedy IT Postbus 101 2650 AC Berkel en Rodenrijs The Netherlands www.theaceorb.nl / www.remedy.nl ------=_Part_4854_4331443.1142846841468 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline ACE VERSION: 5.5 HOST MACHINE and OPERATING SYSTEM: *Sparc, Solaris 10 * If on Windows based OS's, which version of WINSOCK do you use?: TARGET MACHINE and OPERATING SYSTEM, if different from HOST: COMPILER NAME AND VERSION (AN...

Re: [ace-users] Re: Can't query ACE's bugzilla with Safari browser
Hi > > Same query in the InternetExplorer works fine, the resulting page > > starts correct with > > <HTML><HEAD> > > > > The original bugzilla page works fine, too. So this might be a > > problem with your bugzilla implementation. > > > > Could you please fix it? > > I am DEFINITELY not the right person to ask about this! Ossama, do > you have any idea what's going on here with bugzilla? I am not sure whether its a bugzilla issue. I have the same problem with Safari for a few months now. Bugzilla doesn't do anything specific, instead it just executes a cgi script and safari barfs. It is not just our bugzilla page that has been a issue for me. I have ran into a few more pages where this wouldn't work. Please let us know if you have any suggestions for a fix and we will gladly apply them. Thanks Bala ...

Re: [ace-users] Compile time error: "error: 'write_n' is not a member of 'ACE'"
Hi, You lack an include, include "ace/ACE.h" in your program Regards, Johnny Willemsen Remedy IT Postbus 101 2650 AC Berkel en Rodenrijs The Netherlands www.theaceorb.nl / www.remedy.nl "Paresh" <pareshspednekar@gmail.com> wrote in message news:<1173985162.346951.209100@y66g2000hsf.googlegroups.com>... > Hi All, > > ACE VERSION: 5.5.6 > HOST MACHINE and OPERATING SYSTEM: LINUX, Kernel 2.6.19-1.2288.fc5, > i686 > > I tried to compile the program given below, but was giving following > compilation error: > Please help me to compile this proram > > --------------------------------------- > COMPILATION------------------------------------------ > [root@paresh ACE_MSG_BLOCK]# g++ main.C -o main -lACE -IACE_ROOT > main.C: In function 'int main(int, char**)': > main.C:9: error: 'read_n' is not a member of 'ACE' > main.C:20: error: 'write_n' is not a member of 'ACE' > ----------------------------------END > COMPILATION-------------------------------------------- > > > > ---------------------------------------------PROGRAM > main.C--------------------------------------------- > > #include "ace/OS.h" > #include "ace/Message_Block.h" > > int main(int argc, char* argv[]) { > ACE_Message_Block *head = new ACE_Message_Block(BUFSIZ); > ...

RE: [ace-bugs] Re: [ace-users] ACE & POSIX
Hey there's a thought. ;-) I like it. Kindly, Graham -----Original Message----- From: owner-ace-bugs@cse.wustl.edu [mailto:owner-ace-bugs@cse.wustl.edu] On Behalf Of Stephen Torri Sent: Monday, June 14, 2004 9:38 PM To: Douglas C. Schmidt Cc: ace-bugs@cs.wustl.edu Subject: Re: [ace-bugs] Re: [ace-users] ACE & POSIX Douglas C. Schmidt wrote: > Hi Folks, > > >>Yes, but it sure would make the ACE libraries smaller and potentially >>easier to maintain. A lot of the OS specific code would go away. ;-) > > > Ah, but there's rub! It will actually make ACE much larger and harder > to maintain since there will be many platforms/compiler that don't > support the new standard for many years, so it will be necessary to > support multiple variants! Having said that, I welcome these > enhancements since I think they will help improve the relevance of C++ > (cf Java), but it won't make ACE smaller and easier to maintain > (unfortunately)! > > Take care, > > Doug So consider it a new opportunity to develop new design patterns, write more papers and books, and become financially independent. ;) Stephen ...

[ace-bugs] Re: [ace-users] What is reason that ACE::sock_error isn't called from strerr for WIN32?
Hi Boris, >> I meant why ACE_OS::strerror doesn't looks like: >> >> const char *ACE_OS::strerror(int error) { >> #ifdef WIN32 >> if (error >= WSAEINTR && error <= WSASYSCALLFAILURE) { >> const char *errorText=ACE:sock_error(error); >> if (ACE_OS::strstr(errorText, "unknown") != errorText) >> return errorText; >> } >> #endif >> >> .... >> >> } >> >> Then we'll need to call single function to get error text in all cases. Ok, I've updated things as follows: ACE_INLINE char * ACE_OS::strerror (int errnum) { #if defined (ACE_LACKS_STRERROR) return ACE_OS::strerror_emulation (errnum); #else /* ACE_LACKS_STRERROR */ #if defined (WIN32) if (error >= WSAEINTR && error <= WSASYSCALLFAILURE) { const char *errortext = ACE:sock_error (error); if (ACE_OS::strstr (errortext, "unknown") != errortext) return errortext; } #endif /* WIN32 */ return ::strerror (errnum); #endif /* ACE_LACKS_STRERROR */ } Please let me know what else should change as a result of this. Thanks, Doug -- Dr. Douglas C. Schmidt, Professor TEL: (615) 343-8197 Electrical Engineering and Computer Science FAX: (615) 343-7440 Vanderbilt University WEB: www.cs.wustl.edu/~schmidt/ Nashville, TN 37203 ...

[ace-bugs] Re: [ace-users] Why ACE memory pool couldn't work well in linux??
Hi Wubailiu, To ensure that we have proper version/platform/compiler information, please make sure you fill out the appropriate problem report form (PRF), which is in $ACE_ROOT/PROBLEM-REPORT-FORM $TAO_ROOT/PROBLEM-REPORT-FORM or in $ACE_ROOT/BUG-REPORT-FORM $TAO_ROOT/BUG-REPORT-FORM in older versions of ACE+TAO. Make sure to include this information when asking any questions about ACE+TAO since otherwise we have to "guess" what version/platform/compiler/options you've using, which is error-prone and slows down our responsiveness. >> I want to use ACE_Malloc class to provide a memory pool. When user ask for a >> new block of memory but there is no block in memory pool that big enough to >> return to the user, the ACE_Shared_Memory_Pool should acquire a new segment >> from OS and add it to the free-list of memory pool. >> It could work well in windows. >> but in linux, in that condition ACE give me the error info : address out of >> range , segment error! In other word, now the max size of memory pool is >> the size of one segment. So it couldn't be named a 'pool'. >> >> Anybody know how to resole this problem? Is it a bug of ACE? I recommend using the ACE_MMAP_Memory_Pool rather than ACE_Shared_Memory_Pool and see ifthis works better. Thanks Doug -- Dr. Douglas C. Schmidt, Professor TEL: (615) 343-8197 Electrical Engine...

[ace-bugs] Re: [ace-users] What is reason that ACE::sock_error isn't called from strerr for WIN32? #2
Hi Boris, That works fine for now, though only because ACE_LACKS_STERROR is just defined for WinCE. But I'll make this change since we can always handle any new cases whether ACE_LACKS_STERROR as they arise! Thanks, Doug >> What do you think if make it like this: >> ACE_INLINE char * >> ACE_OS::strerror (int errnum) >> { >> #if defined (WIN32) >> if (error >= WSAEINTR && error <= WSASYSCALLFAILURE) >> { >> const char *errortext = ACE:sock_error (error); >> if (ACE_OS::strstr (errortext, "unknown") != errortext) >> return errortext; >> } >> #endif /* WIN32 */ >> #if defined (ACE_LACKS_STRERROR) >> return ACE_OS::strerror_emulation (errnum); >> #else /* ACE_LACKS_STRERROR */ >> return ::strerror (errnum); >> #endif /* ACE_LACKS_STRERROR */ >> } >> >> > -----Original Message----- >> > From: Douglas C. Schmidt [mailto:schmidt@cs.wustl.edu] >> > Sent: Friday, August 06, 2004 4:59 PM >> > To: ace-bugs@cs.wustl.edu; boris_kaminer@mail.ru >> > Subject: Re: [ace-users] What is reason that ACE::sock_error >> > isn't called from strerr for WIN32? >> > >> > >> > Hi Boris, >> > >> > >> I meant why ACE_OS::strerror doesn't ...

[ace-bugs] Re: [ace-users] Why ACE memory pool couldn't work well in linux?? #2
Hi Wubailiu, >> I have filled and sent PRF to ace-bugs@cs.wustl.edu. I haven't seen this posting yet - are you certain you've subscribed to ace-bugs@cs.wustl.edu? >> In fact, bceause ACE_Shared_Memory_Pool is based on System V, so in >> windows platform I used ACE_MMAP_Memory_Pool and it works well. But >> in Red hat 7.3, I have tested both ACE_Shared_Memory_Pool and >> ACE_MMAP_Memory_Pool and they couldn't work both. When I used >> ACE_MMAP_Memory_Pool, the memory pool could just offer about 3k >> bytes memory and when beyond it memory pool returned nil error. That's very odd - it sounds like there's a configuration problem in your release somewhere. I recommend you try running the various ACE_Malloc tests in $ACE_ROOT/tests/ and $ACE_ROOT/examples/Shared_Malloc/ to see if they work for you. >> When I used ACE_Shared_Memory_Pool, the size of memory that memory >> pool could offer is as the same as the size of segment that >> configed by ACE_Shared_Memory_Pool_Option. I have no idea whether Redhat 7.3 supports System V shared memory very well. I do know, however, that the ACE_MMAP stuff should work fine. Thanks, Doug -- Dr. Douglas C. Schmidt, Professor TEL: (615) 343-8197 Electrical Engineering and Computer Science FAX: (615) 343-7440 Vanderbilt University WEB: www.cs.wustl.edu/~schmidt/ Nashville, TN 37203 ...

[ace-users] Re: fatal error C1083: Cannot open include file: 'ace/config-all.h': No such file or directory
Hi, Make sure you set ACE_ROOT to the location of ACE (for example c:\ace\ace_wrappers) and then restart the IDE, the IDE caches all environment variables after being started. Regards, Johnny Willemsen Remedy IT Postbus 101 2650 AC Berkel en Rodenrijs The Netherlands www.theaceorb.nl / www.remedy.nl "Samer S. Issa" <issa.samer@gmail.com> wrote in message news:<1138270579.069801.255530@z14g2000cwz.googlegroups.com>... > ACE VERSION: 5.4.8 > > - HOST MACHINE and OPERATING SYSTEM: > Windows XP Pro. Unknown version of winsock. > > - TARGET MACHINE and OPERATING SYSTEM, > Windows XP Pro. > - COMPILER NAME AND VERSION (AND PATCHLEVEL): > MSVC++ 7.1. > > CONTENTS OF $ACE_ROOT/ace/config.h: > $ACE_ROOT/ace/config.h has been created and it has the include > file of conifg-win32.h. > > AREA/CLASS/EXAMPLE AFFECTED: > The file "config-all.h" doesn't compile. The line > > #include "ace/config.h" > > Generates the error message: > > ../ace/config-all.h(19) : fatal error C1083: Cannot open include file: > 'ace/config.h': No such file or directory > > DOES THE PROBLEM AFFECT: > COMPILATION? yes > LINKING? no > EXECUTION? yes > OTHER (please specify)? > > SYNOPSIS: > I have bui...

Re: [ace-bugs] RE: FW: [ace-users] ACE & POSIX
Hi Graham, >> Having spent most of my time in the murky world of real-time >> embedded systems (for the medical industry) I can tell you this. >> It is quite unlikely that the "old dodgers" (according to your >> definition I would fall into that category) would upgrade their >> version of ACE. If the current (or older) version of ACE works why >> upgrade? That's not been our experience working with scores of companies during the past decade. There are many companies who are stuck using older compiler platforms, but are quite happy to upgrade to newer versions of ACE, particularly when those versions fix important bugs, improve compile-/run-time performance, and/or add useful features. In fact, companies like OCI do a good business supporting precisely these sorts of uesrs. >> The old gnu 2.7.2 compiler that was mentioned earlier is most >> likely the compiler that is used by Windriver's IDE Tornado (which >> I use daily). Tornado 2.0.2 for Intel CPUs uses a snapshot of the >> (2.7.2) gnu compiler (Although Windriver doesn't like to admit it. >> I don't know how they get around the open source rules.). Even the >> "new" version of Tornado coming out this fall uses a newer but >> still older version of the gnu compiler. But rumor has it that the >> Diablo compiler, which has been recently only available for >> Motorola C...

[ace-bugs] Re: [ace-users] ACE
Hi, Thanks for using the PRF. >> ACE VERSION: 5.4.1 >> >> HP Server and HP-UX 11.1 >> >> aCC: HP ANSI C++ B3910B A.03.37 >> >> CONTENTS OF $ACE_ROOT/ace/config.h : config-hpux-11.00.h >> >> CONTENTS OF $ACE_ROOT/include/makeinclude/platform_macros.GNU : >> platorm_hpux_aCC.GNU >> >> AREA/CLASS/EXAMPLE AFFECTED: >> >> $ACE_ROOT/ace - Compiled successfully but >> >> $ACE_ROOT/ - failed to compile as shown below >> >> Installing gperf -> /home/umitd/Projects/Trophy/lib/ACE_wrappers/bin >> Installing gperf -> /home/umitd/Projects/Trophy/lib/ACE_wrappers/bin >> gmake[6]: Leaving directory >> `/home/umitd/Projects/Trophy/lib/ACE_wrappers/apps/g >> perf/src' >> cd tests && gmake -f Makefile all >> gmake[6]: Entering directory >> `/home/umitd/Projects/Trophy/lib/ACE_wrappers/apps/ >> gperf/tests' >> >> Makefile: >> /home/umitd/Projects/Trophy/lib/ACE_wrappers/apps/gperf/tests/Makefile >> >> aCC -AA +W930 +W302 +DAportable -g -DACE_HAS_THREADS -D_REENTRANT >> -D_RWSTD_MULTI >> _THREAD -D_POSIX_C_SOURCE=199506L -D_HPUX_SOURCE -DHPUX_VERS=1111 >> -DACE_LACKS_PR >> AGMA_ONCE -I/home/umitd/Projects/Trophy/lib/ACE_wrappers >> -DACE_HAS_EXCEPTIONS >> -D__ACE_INLINE__ -c -o .obj/test.o te...

[ace-bugs] Re: [ace-users] [BUG REPORT / BUG FIX PROPOSAL]: [ACE_Fixed_Set & it's iterators]
Hi Abelardo, Thanks for these fixes - I've added them to ACE! Doug >> ACE VERSION: 5.4.1 >> >> HOST MACHINE and OPERATING SYSTEM: >> Intel PIV, AMD AthlonXP & AthlonMP. GNU/Linux (kernel 2.4.x & 2.6.x) >> >> COMPILER NAME AND VERSION (AND PATCHLEVEL): >> gcc 3.3.3 >> >> CONTENTS OF $ACE_ROOT/ace/config.h: >> config-linux.h >> >> CONTENTS OF $ACE_ROOT/include/makeinclude/platform_macros.GNU: >> platform_linux.GNU >> >> AREA/CLASS/EXAMPLE AFFECTED: >> ACE_Fixed_Set, ACE_Fixed_Set_Iterator, ACE_Fixed_Set_Const_Iterator >> >> THE PROBLEM AFFECT: >> Execution of the application >> >> SYNOPSIS: >> The class ACE_Fixed_Set has some bugs in it's interface declaration and >> also some in it's implementation, also its iterators declaration and >> implementation could be improved. >> >> DESCRIPTION: >> The class ACE_Fixed_Set has some bugs in it's interface declaration and >> also some in it's implementation that makes: 1) typedef the wrong class >> for is constant iterator, and 2) it's method �size� misbehave in certain >> circumstances where you randomly delete elements of a set object. >> The iterators of ACE_Fixed_Set has a lot of code in common so the can be >> refactored to have a co...

Re: [ace-users] [BULK] Re: [ace-bugs] [BULK] Re: Calling ACE::init() causes exception on 20th instantiation of a
Thanks to Aleksandar Vukajlovic at finsoft! He got us a bit closer to finding this issue and also came up with some much simpler test code that reproduces the issue (see below). It seems that ACE::fini is not properly cleaning up a thread or some storage. When config.h file is modified to include more thread keys (#define ACE_DEFAULT_THREAD_KEYS 1000), the issue occurs later on. The default value for ACE_DEFAULT_THREAD_KEYS is 64, with this, ACE::init will fail after ~20 iterations, with it increased to 1000, ACE::init fails ~500 iterations. Small program that will reproduce bug without using complex MFC follows from Aleksandar. Many thanks in advance for anyone who can help debug this. - Andrew //Test code #include "ace/OS.h" #include "ace/Log_Msg.h" #ifdef _DEBUG const char* dll_name = "U:\\Temp\\TestACEInit\\DllTest\\Debug\\DllTest.dll"; #else const char* dll_name = "U:\\Temp\\TestACEInit\\DllTest\\Release\\DllTest.dll"; #endif //_DEBUG void doTest () { for (int i = 0; i < 1000; ++i) { HMODULE hm = ::LoadLibrary (dll_name); if (hm == NULL) ACE_DEBUG ((LM_ERROR, "failed to load library, iteration (%d)\n", i)); if (::FreeLibrary (hm) == FALSE) ACE_DEBUG ((LM_ERROR, "failed to free library, iteration (%d)\n", i)); } } int main (int argc, char* argv[]) { doTest (); return 0; } ////////////////////////////////// // DllTest code...

[ace-users] Re: Using ACE Components in a 'for sale' product
Hi Peter, >> I have written an ETL tool that I am actually selling as a part of my >> consulting business. One of the enhancements I plan to make is allow >> processes to share memory through memory mapped IO. It was in checking >> up on this that I was pointed to ACE from a newsgroup. >> >> However, ACE has way much more to offer than a few lines of code for >> memory mapped IO. Right! Please see http://www.cs.wustl.edu/~schmidt/ACE/ for lots of information on what's provided by ACE. >> As I have read through it I can see how many ACE features would very >> nicely fit into the overall design of my software, especially in the >> areas of getting data from a number of places. It's pretty clear to me >> my software could be easily extended using ACE. >> >> I was wondering if/how others have gone about the process of using ACE >> as a suite of utilities and building commercially salable products on >> top of it. Sure, there are MANY (i.e., thousands) of products/projects using ACE. Check out http://www.cs.wustl.edu/~schmidt/ACE-users.html for a summary of some of the more interesting ones. >> Is this possible/sensible/reasonable? How does the licensing work? Is >> there a process of passing license fees back into development? >> >> I'm not sure ACE is a GNU License.....and I want to do the right thing >...

[ace-users] Re: [ace-bugs] ACE Licensing Issue: ace/CLASSIX
Hi Michael, Thanks for using the PRF. >> ACE VERSION: 5.4 >> >> HOST MACHINE and OPERATING SYSTEM: >> HP rp8400 HP-UX 11iv1 >> >> TARGET MACHINE and OPERATING SYSTEM, if different from HOST: >> COMPILER NAME AND VERSION (AND PATCHLEVEL): >> aCC >> >> CONTENTS OF $ACE_ROOT/ace/config.h: >> >> CONTENTS OF $ACE_ROOT/include/makeinclude/platform_macros.GNU >> (unless >> this isn't used in this case, e.g., with Microsoft Visual C++): >> >> AREA/CLASS/EXAMPLE AFFECTED: >> ace/CLASSIX >> >> DOES THE PROBLEM AFFECT: >> OTHER? (Licensing) >> >> SYNOPSIS: >> Nearly all the files in ace/CLASSIX have a copyright in them >> or a signature from Nokia. Our lawyers are going nuts. >> Example: >> CLASSIX_Dgram_Mcast.cpp: >> // Copyright 1998 Nokia Telecommunications >> >> CLASSIX_OS.h >> // = AUTHOR(S) >> // Nokia Telecommunications >> >> DESCRIPTION: >> How does this affect the ace license? >> >> REPEAT BY: >> >> SAMPLE FIX/WORKAROUND: >> Get the copyrights out of the code, or put special permissions >> into the code. O...

Re: [ace-bugs] RE: [ace-users] Linux LFS (Large File Support) and ACE
Hi, >> I guess I'm a bit confused. From what I've read on the net, it >> seems that if I define -D_FILE_OFFSET_BITS=64 (as reported by >> getconf LFS_CFLAGS on linux), and my code uses posix types >> religiously, then my code should become large-file capable "just >> like that." Based on your email, if ACE is type-safe, then it >> should magically support large files given this flag. (getconf >> LFS_LDFLAGS returns nothing on linux). >> >> Yet, you also mention adding interfaces ACE_OS and ACE_File. What >> would be the motivation of those interfaces if the above is true? >> >> I suppose the answer is "to support large files on systems that do >> not support LFS API's posixely" ? I think the main issue here is that different operating systems provide different ways to handle "large" files. For example, some operating systems have you pass special compile flags (e.g. -D_FILE_OFFSET_BITS=64) and/or use special functions (e.g., the *64() functions provided by AIX and HP/UX). As far as I know, there is no POSIX "standard" way to handle this. There's no current support in ACE for the *64() functions, which is what's provided by that *.zip file whose URL I sent you. It may be easier, however, just to try and recompile ACE and your apps using the -D_FILE_OFFSET_BITS=64 to see if that works first. If not, pleas...

Re: [ace-users] [ace-bugs] ace-bugs: ACE_FACTORY_DEFINE NEEDED
Hi, Thanks for using the PRF! > ACE VERSION: 6.1.7 > > HOST MACHINE and OPERATING SYSTEM: > > Intel(R) Core(TM)2 Duo CPU > Ubuntu 12.04.2 LTS > Linux version 3.2.0-37-generic > > TARGET MACHINE and OPERATING SYSTEM, if different from HOST: > COMPILER NAME AND VERSION (AND PATCHLEVEL): > > gcc version 4.6.3 > (Ubuntu/Linaro 4.6.3-1ubuntu5) > > THE $ACE_ROOT/ace/config.h FILE: > > #include "ace/config-linux.h" > > THE $ACE_ROOT/include/makeinclude/platform_macros.GNU FILE : > > include $(ACE_ROOT)/include/makeinclude/platform_linux.GNU > ssl=1 > > CONTENTS OF $ACE_ROOT/bin/MakeProjectCreator/config/default.features > (used by MPC when you generate your own makefiles): > > NONE > > AREA/CLASS/EXAMPLE AFFECTED: > > examples/C++NPv2/AIO_Client_Logging_Daemon.cpp > > DOES THE PROBLEM AFFECT: > EXECUTION! > sr_configurable_logging_server fails to properly work with libAIO_CLD.so > > SYNOPSIS: > > In AIO_Client_Lo...

Web resources about - [ace-bugs] Re: [ace-users] RE: HPUX11.00 defines token 'undo' as __undo in sys/sem.h - comp.soft-sys.ace

Resources last updated: 3/6/2016 4:04:22 AM