RE: [Quickfix-developers] QuickFIX on Solaris / Forte 5.3 / Roguewave
Brought to you by:
orenmnero
From: Peterson, K. <kri...@rb...> - 2004-07-08 19:49:07
|
Joerg - I'll summarise the changes required for the three builds (Solaris/GCC-3.4.0= /GNU binutils-2.15, Solaris/SUNPro-5.3, Solaris/SUNPro-5.3/Roguewave STL 2.= 2) here, and I'll follow up with an email for each one with descriptions, p= atches, etc. uname -a for the build environment was 'SunOS gtsdev2 5.8 Generic_108528-15= sun4u sparc SUNW,Sun-Fire-280R Solaris'. SunPRO version was: CC -V output was 'CC: Sun WorkShop 6 update 2 C++ 5.3 P= atch 111685-09 2002/07/17'=20 For GCC build, I built GCC 3.4.0 with SunPRO, then built GNU binutils 2.15 = with GCC 3.4.0. GCC and binutils were installed into ~/local (I do not have= root on this box). All builds were linked against the Solaris C library (n= o glibc). Note that TZ must be set to UTC for unit tests for all builds to pass; othe= rwise quite a few Session testcases will fail due to latency violations. Pr= oblem is related due to Solaris mktime()/strptime() and daylight savings ti= me, either now or SendingTime gets (mis)adjusted by an hour and the latency= check fails. Summary of changes to configure/makefiles - strip out all carriage returns from *.h, *.c, *.cpp files - remove all occurances of '-lstdc++' from all configure, Makefile and Mak= efile.in files. - patches to test programs (all fixes for const char* warnings/errors) GCC built QuickFIX at this point (after fixing bug in GNU ld). SunCC requir= ed substantial edits to compile QuickFIX - replace ';;' with ';'; typically by removing ';' after all macro invocat= ions in Fields.h, etc. - replace std::make_pair() calls with Fields::value_type() (SunPRO 5.3 can= 't do implicit template instantiations in a few cases, in this case call co= nstructor of std::map's value_type directly) - bug in SunPRO 5.3's STL where map/multimap assignment operator does not = copy comparison function object yet copies elements in original order. Chan= ge Fieldmap to use copy constructor or copy elements iteratively. Compiling using Roguewave as a third party STL required adding #include's t= o some files, prefacing C library calls with std:: (i.e. sprintf to std::sp= rintf, etc). The linker and archiver had to be changed to include template = instantiations used by QuickFIX in the resulting .so and .a files. I'll post more details tomorrow and patches for those interested. Regards, - Kris -----Original Message----- From: Joerg Thoennes [mailto:Joe...@ma...] Sent: 08 July 2004 15:03 To: Peterson, Kristofer Cc: QuickFIX Development (E-mail) Subject: Re: [Quickfix-developers] QuickFIX on Solaris / Forte 5.3 / Roguewave Hi Kris, > I have been developing a FIX 4.2 connection to an executing broker > using QuickFIX 1.7.1. As our trading system runs on Solaris/SPARC and > is built with SunPRO 5.3 C++ and Roguewave, this has made for an > interesting build environment for building QuickFIX. Sounds good. So far we have no SunPRO setup for QF as far as I know. > I have built QuickFIX on Solaris with GCC 3.4.0, SunPRO 5.3 w/shipped > STL and SunPRO 5.3 w/separate Roguewave STL. All of the builds > required edits to configure and Makefile.in files (I did not change > autoconf files as I don't have the tools), and the SunPRO 3.3 builds > required substantial changes to source files as well. Would be nice to have some tests to detect the compiler/build=20 environment. BTW, you can download Solaris packages for the autotools. > I'd like to know if anyone else has had any experiences using > QuickFIX on Solaris and would like to share them. If all goes well, > we'd like to use QuickFIX elsewhere and improve QuickFIX's support > for Solaris so that it will work out of the box (or tarball as it > were). Great! This would be the 2nd binary package for QF. Maybe the native Sun=20 compiler generates faster code instead of GCC (Do you have any benchmarks?). >=20 > If there is interest, I would be happy to provide details of what > we've done to get QuickFIX working. Yes, please contribute. We will give you support with the autotools as=20 good as we can. Cheers, J=F6rg --=20 Joerg Thoennes http://macd.com Tel.: +49 (0)241 44597-24 Macdonald Associates GmbH Fax : +49 (0)241 44597-10 Lothringer Str. 52, D-52070 Aachen <font face=3D"Times New Roman" size=3D"3"> <p>------------------------------------------------------------------------= ------</p> <p> This email is intended only for the use of the individual(s) to whom it= is addressed and may be privileged and confidential. Unauthorised use or d= isclosure is prohibited. If you receive this e-mail in error, please advise= immediately and delete the original message. This message may have been al= tered without your or our knowledge and the sender does not accept any liab= ility for any errors or omissions in the message.</p> <p>=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D</p> </font> |