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]
