You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by Ján Sáreník <js...@redhat.com> on 2010/03/30 12:04:32 UTC

CMake compilation failure

Hello!

So I tried CMake on r928878...

- - - - - - - - - - - - - - - - - - - - - -
$ cd cpp
$ cmake .
$ make
...
[ 79%] Built target ssl
[ 79%] Built target sslconnector
[ 80%] Built target watchdog
[ 80%] Building CXX object src/CMakeFiles/xml.dir/qpid/xml/XmlExchange.o
/var/tmp/jasan/qpid-20100330/cpp/src/qpid/xml/XmlExchange.cpp: In member function ‘bool qpid::broker::XmlExchange::matches(boost::shared_ptr<XQQuery>&, qpid::broker::Deliverable&, const qpid::framing::FieldTable*, bool)’:
/var/tmp/jasan/qpid-20100330/cpp/src/qpid/xml/XmlExchange.cpp:192: error: ‘class ResultImpl’ has no member named ‘getEffectiveBooleanValue’
make[2]: *** [src/CMakeFiles/xml.dir/qpid/xml/XmlExchange.o] Error 1
make[1]: *** [src/CMakeFiles/xml.dir/all] Error 2
make: *** [all] Error 2
- - - - - - - - - - - - - - - - - - - - - -

fedora-release-14-0.4.noarch
cmake-2.8.1-0.2.rc5.fc14.x86_64
xqilla-devel-2.2.3-7.fc14.x86_64
xerces-c-devel-3.0.1-16.fc13.x86_64

   Best regards, Ján
-- 
Red Hat Czech, MRG Quality Assurance Associate

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


Re: CMake compilation failure

Posted by Ján Sáreník <js...@redhat.com>.
And if I build without XML, I am getting following:

[ 99%] Building CXX object src/tests/CMakeFiles/cluster_test.dir/PartialFailure.o
Linking CXX executable unit_test
[100%] Building CXX object src/tests/CMakeFiles/cluster_test.dir/ClusterFailover.o
[100%] Built target unit_test
[100%] Building CXX object src/tests/CMakeFiles/cluster_test.dir/InitialStatusMap.o
[100%] Building CXX object src/tests/CMakeFiles/cluster_test.dir/StoreStatus.o
Linking CXX executable cluster_test
/usr/bin/ld: CMakeFiles/cluster_test.dir/StoreStatus.o: undefined reference to symbol 'boost::system::get_system_category()'
/usr/bin/ld: note: 'boost::system::get_system_category()' is defined in DSO /usr/lib64/libboost_system-mt.so.1.41.0 so try adding it to the linker command line
/usr/lib64/libboost_system-mt.so.1.41.0: could not read symbols: Invalid operation
collect2: ld returned 1 exit status
make[2]: *** [src/tests/cluster_test] Error 1
make[1]: *** [src/tests/CMakeFiles/cluster_test.dir/all] Error 2
make: *** [all] Error 2

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


RE: CMake compilation failure

Posted by Steve Huston <sh...@riverace.com>.
Hi Ján,

> Hello!
> 
> So I tried CMake on r928878...
> 
> - - - - - - - - - - - - - - - - - - - - - -
> $ cd cpp
> $ cmake .
> $ make
> ...
> [ 79%] Built target ssl
> [ 79%] Built target sslconnector
> [ 80%] Built target watchdog
> [ 80%] Building CXX object 
> src/CMakeFiles/xml.dir/qpid/xml/XmlExchange.o
> /var/tmp/jasan/qpid-20100330/cpp/src/qpid/xml/XmlExchange.cpp:
>  In member function ‘bool 
> qpid::broker::XmlExchange::matches(boost::shared_ptr<XQQuery>&
> , qpid::broker::Deliverable&, const 
> qpid::framing::FieldTable*, bool)’:
> /var/tmp/jasan/qpid-20100330/cpp/src/qpid/xml/XmlExchange.cpp:
> 192: error: ‘class ResultImpl’ has no member named 
> ‘getEffectiveBooleanValue’
> make[2]: *** [src/CMakeFiles/xml.dir/qpid/xml/XmlExchange.o] Error 1
> make[1]: *** [src/CMakeFiles/xml.dir/all] Error 2
> make: *** [all] Error 2
> - - - - - - - - - - - - - - - - - - - - - -

This smells like some mismatch between Makefile.am and CMakeFiles.txt
but I don't regularly build XmlExchange.

> And if I build without XML, I am getting following:
> 
> [ 99%] Building CXX object 
> src/tests/CMakeFiles/cluster_test.dir/PartialFailure.o
> Linking CXX executable unit_test
> [100%] Building CXX object 
> src/tests/CMakeFiles/cluster_test.dir/ClusterFailover.o
> [100%] Built target unit_test
> [100%] Building CXX object 
> src/tests/CMakeFiles/cluster_test.dir/InitialStatusMap.o
> [100%] Building CXX object 
> src/tests/CMakeFiles/cluster_test.dir/StoreStatus.o
> Linking CXX executable cluster_test
> /usr/bin/ld: CMakeFiles/cluster_test.dir/StoreStatus.o: 
> undefined reference to symbol 'boost::system::get_system_category()'
> /usr/bin/ld: note: 'boost::system::get_system_category()' is 
> defined in DSO /usr/lib64/libboost_system-mt.so.1.41.0 so try 
> adding it to the linker command line
> /usr/lib64/libboost_system-mt.so.1.41.0: could not read 
> symbols: Invalid operation
> collect2: ld returned 1 exit status
> make[2]: *** [src/tests/cluster_test] Error 1
> make[1]: *** [src/tests/CMakeFiles/cluster_test.dir/all] Error 2
> make: *** [all] Error 2

It looks like this is missing the boost system reference; again, not one
I regularly build so I haven't seen it.

-Steve


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org