[Quickfix-developers] RE: Solaris Installation Steps?
Brought to you by:
orenmnero
|
From: Ahmad M. Z. <az...@qt...> - 2002-04-20 12:40:37
|
Hi Guys,
Just wanted to share with you my notes on installing QuickFIX on Solaris =
8.
Here is what i had to do to get it working on my Sun Box...
I noticed that ./configure is not checking for libxml2, and this simply =
makes the process harder.=20
Any recommendations?
The setup machine is:
SunOS ZEW 5.8 Generic_108528-03 sun4u sparc SUNW,Ultra-5_10
gcc --version =3D> 2.95.3
g++ --version =3D> 2.95.3
-=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-
The stuff that was installed beforehand:
gcc-2.95.3-sol8-sparc-local.gz (from sunfreeware.com)
=20
The stuff i needed to download/install:
_ lxml2-2.4.20-sol8-sparc-local.gz (from libxml.org solaris binaries)
_ ruby-1.6.7-sol8-sparc-local.gz (from sunfreeware.com)
_ rubyunit-0.5.4-02.tar.gz =20
-=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-
pre-install:
# to make configure script know where is lex
% export PATH=3D$PATH:/usr/ccs/bin
# add=20
% gunzip lxml2-2.4.20-sol8-sparc-local.gz
% pkgadd -d lxml2-2.4.20-sol8-sparc-local
# check libxml configuration
% xml2-config --libs
-L/usr/local/libxml/sparc/lib -R/usr/local/libxml/sparc/lib -lxml2 -lz =
-lpthread -lm -lsocket -lnsl
% xml2-config --cflags
-I/usr/local/libxml/include/libxml2
# for ruby and ruby unit...
% gunzip ruby-1.6.7-sol8-sparc-local.gz
% pkgadd -d ruby-1.6.7-sol8-sparc-local
% gunzip rubyunit-0.5.4-02.tar.gz
% tar xfv rubyunit-0.5.4-02.tar
% cd rubyunit-0.5.4-02
% ruby install.rb
# seems like it was installed with gcc/g++ package
% find /usr -name sstream* &
/usr/local/include/g++-3/sstream
-=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-
E D I T E D S T U F F
-=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-
Apr 20 15:31 2002 diff of ./Makefile.in in quickfix and =
modified.quickfix=20
64c64
< CFLAGS =3D @CFLAGS@
---
> CFLAGS =3D @CFLAGS@ -I/usr/local/libxml/include/libxml2
-=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-
Apr 20 15:31 2002 diff of ./src/C++/Makefile.in in quickfix and =
modified.quickfix=20
64c64
< CFLAGS =3D @CFLAGS@
---
> CFLAGS =3D @CFLAGS@
89c89
< INCLUDES =3D -I. -I.. -I../.. -I../../..
---
> INCLUDES =3D -I/usr/local/libxml/include/libxml2 -I. -I.. -I../.. =
-I../../..
-=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-
Apr 20 15:31 2002 diff of ./src/Makefile.in in quickfix and =
modified.quickfix
94,97c94,97
< at_server_LDADD =3D C++/libquickfix.la -lxml -lpthread
< at_client_LDADD =3D C++/libquickfix.la -lxml -lpthread
< ut_LDADD =3D C++/test/libquickfixcpptest.la C++/libquickfix.la -lxml =
-lpthread
< pt_LDADD =3D C++/libquickfix.la -lxml -lpthread
---
> at_server_LDADD =3D -L/usr/local/libxml/sparc/lib =
-R/usr/local/libxml/sparc/lib C++/libquickfix.la -lxml2 -lpthread
> at_client_LDADD =3D -L/usr/local/libxml/sparc/lib =
-R/usr/local/libxml/sparc/lib C++/libquickfix.la -lxml2 -lpthread
> ut_LDADD =3D -L/usr/local/libxml/sparc/lib =
-R/usr/local/libxml/sparc/lib C++/test/libquickfixcpptest.la =
C++/libquickfix.la -lxml2 -lpthread
> pt_LDADD =3D -L/usr/local/libxml/sparc/lib =
-R/usr/local/libxml/sparc/lib C++/libquickfix.la -lxml2 -lpthread
-=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-
E N D O F E D I T E D S T U F F
-=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-
# and finally ...
% ./configure; make; make install
# interesting stats with make on a Ultra10 440 MHz 512 MB machine:
% time make --silent
real 8m37.626s
user 7m27.260s
sys 0m42.570s
-=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-
Testing:
# run ruby tests!
% cd test
% ./check.sh
.........................................................................=
................................
105 out of 105 tests passing (100%)
Created Session - BeginString: FIX.4.2, SenderCompID: ISLD, =
TargetCompID: TW
<at>
<test name=3D'definitions/server/10_MsgSeqNumEqual.def' =
result=3D'success'/>
<test name=3D'definitions/server/10_MsgSeqNumGreater.def' =
result=3D'success'/>
<test name=3D'definitions/server/10_MsgSeqNumLess.def' =
result=3D'success'/>
<test name=3D'definitions/server/11a_NewSeqNoGreater.def' =
result=3D'success'/>
<test name=3D'definitions/server/11b_NewSeqNoEqual.def' =
result=3D'success'/>
<test name=3D'definitions/server/11c_NewSeqNoLess.def' =
result=3D'success'/>
<test name=3D'definitions/server/13b_UnsolicitedLogoutMessage.def' =
result=3D'success'/>
<test name=3D'definitions/server/14a_BadField.def' =
result=3D'success'/>
<test name=3D'definitions/server/14b_RequiredFieldMissing.def' =
result=3D'success'/>
<test name=3D'definitions/server/14c_TagNotDefinedForMsgType.def' =
result=3D'success'/>
<test name=3D'definitions/server/14d_TagSpecifiedWithoutValue.def' =
result=3D'success'/>
<test name=3D'definitions/server/14e_IncorrectEnumValue.def' =
result=3D'success'/>
<test name=3D'definitions/server/14f_IncorrectDataFormat.def' =
result=3D'success'/>
<test =
name=3D'definitions/server/14g_HeaderBodyTrailerFieldsOutOfOrder.def' =
result=3D'success'/>
<test =
name=3D'definitions/server/15_HeaderAndBodyFieldsOrderedDifferently.def' =
result=3D'success'/>
<test =
name=3D'definitions/server/19a_PossResendMessageThatHAsAlreadyBeenSent.de=
f' result=3D'success'/>
<test =
name=3D'definitions/server/19b_PossResendMessageThatHasNotBeenSent.def' =
result=3D'success'/>
<test name=3D'definitions/server/1a_ValidLogonMsgSeqNumTooHigh.def' =
result=3D'success'/>
<test =
name=3D'definitions/server/1a_ValidLogonWithCorrectMsgSeqNum.def' =
result=3D'success'/>
<test name=3D'definitions/server/1b_DuplicateIdentity.def' =
result=3D'success'/>
<test name=3D'definitions/server/1c_InvalidSenderCompID.def' =
result=3D'success'/>
<test name=3D'definitions/server/1c_InvalidTargetCompID.def' =
result=3D'success'/>
<test name=3D'definitions/server/1d_InvalidLogonLengthInvalid.def' =
result=3D'success'/>
<test name=3D'definitions/server/1d_InvalidLogonWrongBeginString.def' =
result=3D'success'/>
<test name=3D'definitions/server/1e_NotLogonMessage.def' =
result=3D'success'/>
<test name=3D'definitions/server/20_SimultaneousResendRequest.def' =
result=3D'success'/>
<test name=3D'definitions/server/2a_MsgSeqNumCorrect.def' =
result=3D'success'/>
<test name=3D'definitions/server/2b_MsgSeqNumTooHigh.def' =
result=3D'success'/>
<test name=3D'definitions/server/2c_MsgSeqNumTooLow.def' =
result=3D'success'/>
<test name=3D'definitions/server/2d_GarbledMessage.def' =
result=3D'success'/>
<test name=3D'definitions/server/2e_PossDupAlreadyReceived.def' =
result=3D'success'/>
<test name=3D'definitions/server/2e_PossDupNotReceived.def' =
result=3D'success'/>
<test name=3D'definitions/server/2f_PossDupOrigSendingTimeTooHigh.def' =
result=3D'success'/>
<test name=3D'definitions/server/2g_PossDupNoOrigSendingTime.def' =
result=3D'success'/>
<test name=3D'definitions/server/2i_BeginStringValueUnexpected.def' =
result=3D'success'/>
<test name=3D'definitions/server/2k_CompIDDoesNotMatchProfile.def' =
result=3D'success'/>
<test name=3D'definitions/server/2m_BodyLengthValueNotCorrect.def' =
result=3D'success'/>
<test name=3D'definitions/server/2o_SendingTimeValueOutOfRange.def' =
result=3D'success'/>
<test name=3D'definitions/server/2q_MsgTypeNotValid.def' =
result=3D'success'/>
<test name=3D'definitions/server/2r_UnregisteredMsgType.def' =
result=3D'success'/>
<test name=3D'definitions/server/2t_FirstThreeFieldsOutOfOrder.def' =
result=3D'success'/>
<test name=3D'definitions/server/3b_InvalidChecksum.def' =
result=3D'success'/>
<test name=3D'definitions/server/3c_GarbledMessage.def' =
result=3D'success'/>
<test name=3D'definitions/server/4a_NoDataSentDuringHeartBtInt.def' =
result=3D'success'/>
<test name=3D'definitions/server/4b_ReceivedTestRequest.def' =
result=3D'success'/>
<test name=3D'definitions/server/6_SendTestRequest.def' =
result=3D'success'/>
<test name=3D'definitions/server/7_ReceiveRejectMessage.def' =
result=3D'success'/>
<test name=3D'definitions/server/8_AdminAndApplicationMessages.def' =
result=3D'success'/>
<test name=3D'definitions/server/8_OnlyAdminMessages.def' =
result=3D'success'/>
<test name=3D'definitions/server/8_OnlyApplicationMessages.def' =
result=3D'success'/>
/have fun!
ahmad m. zawawi
|