The original work for the Solaris port was done with Sun C++ 12 (I
believe) and not gcc. The configure script may need some help to get
working with g++.

-Steve

> -----Original Message-----
> From: Warwick Richard (00101635) [mailto:[email protected]] 
> Sent: Tuesday, August 25, 2009 8:15 AM
> To: [email protected]
> Subject: Problems compiling qpidc-0.5 on Solaris 10
> 
> 
> Hallo,
> 
> part of this problem was already posted to the users@ mailing 
> list last 
> Friday. Since I haven't received an answer yet I figured I might
have 
> more luck here. Please let me know if this is the wrong channel.
> 
> I have two problems compiling qpidc-0.5 on Solaris 10.
> 
> 1.) Broker.cpp won't compile because of multiple warning messages.
> 
> "workaround" was to configure with the --enable-warnings=no 
> option. The 
> make then gets much further but stops in :
> 
> 2.) replication_exchange.so won't build because the linker can't
find 
> libCrun.so.
> 
> More details on both problems below. I'm presuming that it's 
> not a good 
> idea to build with warnings disabled so would prefer to solve
problem 
> 1.). I'm trying to build a demo implementation for our site so we
can 
> evaluate QPID. Has anyone else built on Solaris 10 yet ?
> 
> Can anyone offer any hints on how to get past this ?
> 
> Regards
> Warwick
> 
> warwick.richard<at>ubs.com
> 
> 
> Details for 1.)
> 
> depbase=`echo qpid/broker/Broker.lo | sed 
> 's|[^/]*$|.deps/&|;s|\.lo$||'`;\
>        /bin/bash ../libtool --tag=CXX   --mode=compile g++ 
> -DHAVE_CONFIG_H -I. -Igen -I./gen  -I/app/qpid/tools/include -Werror

> -pedantic -Wall -Wextra -Wno-shadow -Wpointer-arith -Wcast-qual 
> -Wcast-align -Wno-long-long -Winvalid-pch -Wno-system-headers 
> -Woverloaded-virtual -g -O2 -MT qpid/broker/Broker.lo -MD -MP -MF 
> $depbase.Tpo -c -o qpid/broker/Broker.lo qpid/broker/Broker.cpp &&\
>        mv -f $depbase.Tpo $depbase.Plo
> g++ -DHAVE_CONFIG_H -I. -Igen -I./gen 
> -I/app/qpid/tools/include -Werror 
> -pedantic -Wall -Wextra -Wno-shadow -Wpointer-arith -Wcast-qual 
> -Wcast-align -Wno-long-long -Winvalid-pch -Wno-system-headers 
> -Woverloaded-virtual -g -O2 -MT qpid/broker/Broker.lo -MD -MP -MF 
> qpid/broker/.deps/Broker.Tpo -c qpid/broker/Broker.cpp  -fPIC 
> -DPIC -o 
> qpid/broker/.libs/Broker.o
> qpid/broker/Broker.cpp: In constructor 
> `qpid::broker::Broker::Broker(const
qpid::broker::Broker::Options&)':
> qpid/broker/Broker.cpp:160: warning: cast from 
> `qpid::management::ManagementAgent*' to 
> `qpid::management::ManagementBroker*' increases required alignment
of 
> target type
> qpid/broker/Broker.cpp:187: warning: cast from 
> `qpid::management::ManagementAgent*' to 
> `qpid::management::ManagementBroker*' increases required alignment
of 
> target type
> qpid/broker/Broker.cpp:239: warning: cast from 
> `qpid::management::ManagementAgent*' to 
> `qpid::management::ManagementBroker*' increases required alignment
of 
> target type
> qpid/broker/Broker.cpp:241: warning: cast from 
> `qpid::management::ManagementAgent*' to 
> `qpid::management::ManagementBroker*' increases required alignment
of 
> target type
> make[2]: *** [qpid/broker/Broker.lo] Error 1
> make[2]: Leaving directory `/app/qpid/stage/qpidc-0.5/src'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/app/qpid/stage/qpidc-0.5/src'
> make: *** [all] Error 2
> 
> Quite a few programs have already compiled, the make was 
> running for 19 
> minutes before grounding to a halt.
> 
> Details for 2.)
> 
> make[3]: Entering directory `/app/qpid/stage/qpidc-0.5/src'
> /bin/bash ../libtool --tag=CXX   --mode=link g++  -g -O2 
> -no-undefined 
> -module -avoid-version -L/app/qpid/tools/lib -L/usr/lib/openais 
> -L/usr/lib64/openais -L/usr/lib/corosync -L/usr/lib64/corosync -o 
> replication_exchange.la -rpath /app/qpid/lib/qpid/daemon 
> qpid/replication/ReplicationExchange.lo libqpidbroker.la 
> libqpidcommon.la -lboost_program_options -lCrun -luuid
> g++ -shared -nostdlib -L/app/qpid/tools/lib -L/usr/lib/openais 
> -L/usr/lib64/openais -L/usr/lib/corosync -L/usr/lib64/corosync 
> /usr/local/lib/gcc/sparc-sun-solaris2.10/3.4.6/crti.o 
> /usr/ccs/lib/values-Xa.o 
> /usr/local/lib/gcc/sparc-sun-solaris2.10/3.4.6/crtbegin.o  
> qpid/replication/.libs/ReplicationExchange.o  -Wl,-R 
> -Wl,/app/qpid/stage/qpidc-0.5/src/.libs -Wl,-R 
> -Wl,/usr/local/lib -Wl,-R 
> -Wl,/app/qpid/lib -Wl,-R -Wl,/usr/local/lib 
> -L/app/qpid/stage/qpidc-0.5/src/.libs -L/app/qpid/tools/lib 
> -L/usr/lib/openais -L/usr/lib64/openais -L/usr/lib/corosync 
> -L/usr/lib64/corosync ./.libs/libqpidbroker.so 
> -L/sol10/SOURCES/S10/gcc-3.4.6/objdir/sparc-sun-solaris2.10/li
> bstdc++-v3/src 
> -L/sol10/SOURCES/S10/gcc-3.4.6/objdir/sparc-sun-solaris2.10/li
> bstdc++-v3/src/.libs 
> -L/usr/local/lib -L/usr/local/ssl/lib -L/usr/openwin/lib 
> -L/sol10/SOURCES/S10/gcc-3.4.6/objdir/gcc ./.libs/libqpidcommon.so 
> -lboost_program_options -lCrun -luuid 
> -L/usr/local/lib/gcc/sparc-sun-solaris2.10/3.4.6 -L/usr/ccs/bin 
> -L/usr/ccs/lib 
> -L/usr/local/lib/gcc/sparc-sun-solaris2.10/3.4.6/../../.. 
> /usr/local/lib/libstdc++.so -lm -lgcc_s 
> /usr/local/lib/gcc/sparc-sun-solaris2.10/3.4.6/crtend.o 
> /usr/local/lib/gcc/sparc-sun-solaris2.10/3.4.6/crtn.o  -Wl,-h 
> -Wl,replication_exchange.so -o .libs/replication_exchange.so
> ld: fatal: library -lCrun: not found
> ld: fatal: File processing errors. No output written to 
> .libs/replication_exchange.so
> collect2: ld returned 1 exit status
> 
> I twiddled the Makefile and added :
> LDFLAGS = -L/app/qpid/tools/lib -L/usr/lib -L/usr/lib/openais 
> -L/usr/lib64/openais -L/usr/lib/corosync -L/usr/lib64/corosync
> but this didn't help.
> 
> There *is* a libCrun.so on the system :
> qpidc-0.5 $ ls -l /usr/lib/libCrun*
> -rwxr-xr-x   1 root     bin        63772 Oct 12  2006 
> /usr/lib/libCrun.so.1
> 
> ... and /usr/lib is in the LD_LIBRARY_PATH (see below). I even tried

> "export LIBPATH=$LD_LIBRARY_PATH" but no luck.
> 
> # Some system details :
> qpidc-0.5 $ uname -a
> SunOS svbotanybay.flur.zuerich.ubs.ch 5.10 Generic_127111-11 
> sun4v sparc 
> SUNW,Sun-Fire-T200
> 
> # The package
> qpidc-0.5 $ ls -l ../../pkg/qpid-cpp-0.5.tar.gz
> -rw-r--r--   1 t101635  t101635  4926139 Jul 28 11:13 
> ../../pkg/qpid-cpp-0.5.tar.gz
> 
> # The package was downloaded from :
> http://www.apache.org/dist/qpid/0.5/qpid-cpp-0.5.tar.gz
> 
> # The offending source files
> qpidc-0.5 $ ls -l src/qpid/broker/Broker.cpp
> -rw-rw----   1 t101635  dev        16826 Mar 25 20:27 
> src/qpid/broker/Broker.cpp
> 
> # I'm compiling with gcc
> qpidc-0.5 $ g++ -v
> Reading specs from 
> /usr/local/lib/gcc/sparc-sun-solaris2.10/3.4.6/specs
> Configured with: ../configure --with-as=/usr/ccs/bin/as 
> --with-ld=/usr/ccs/bin/ld --enable-shared
--enable-languages=c,c++,f77
> Thread model: posix
> gcc version 3.4.6
> 
> # the GNU tools are installed in /usr/local/bin, the Sun compiler in

> /usr/bin
> # I've placed /usr/local/bin first in the path so the GNU tools are 
> always found first
> qpidc-0.5 $ echo $PATH
> /usr/local/bin:/opt/bin:/opt/sbin:/opt/ubs/bin:/opt/ubs/sbin:/
> sbin:/usr/bin:/usr/sbin:/usr/ccs/bin:/usr/openwin/bin:/usr/dt/
> bin/home/t101635/.bin:/usr/sfw/bin:/home/t101635/share 
> 
> # ditto for the libpath :
> qpidc-0.5 $ echo $LD_LIBRARY_PATH
> /usr/local/lib:/opt/lib:/usr/lib:/usr/dt/lib:/usr/openwin/lib/
> usr/sfw/lib:/home/t101635/lib 
> 
> 
> # qpid version
> qpidc-0.5 $ ls -l RELEASE_NOTES
> -rw-rw----   1 t101635  dev          677 May 17 14:33 RELEASE_NOTES
> 
> # before compiling, I configured with this command :
> # this is where boost is installed
> export CPPFLAGS=-I/app/qpid/tools/include
> export LDFLAGS=-L/app/qpid/tools/lib
> 
> ./configure --prefix=/app/qpid --exec-prefix=/app/qpid \
> --with-help2man --with-doxygen --with-poller \
> --without-sasl --without-xml --without-rdma --without-ssl
> 
> after problem 1.), I added --enable-warnings=no to the 
> configure command 
> and ran it (after make distclean)
> 
> The new config.log is attached. (this is the one used on the second 
> compile - i.e. problem 2.)
> 
> 
> 
> 


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]

Reply via email to