You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by Alexander Chernykh <al...@mail.ru> on 2007/07/06 08:48:15 UTC

Unable to compile Active MQ cpp client on QNX

Given:
QNX 6.3.0 SP3,
gcc 3.3.5 which is supplied with OS,
activemq-cpp-2.0.1-src,
autoconf 2.61,
automake 1.9.6,
libtool 1.5.24,
cppunit 1.10.2,
m4 1.4.9,
e2fsprogs precompiled from third-party cd.

What I did:
after compiling and insttalling all prerequsites for activemq-cpp i do the
following to compile activemq-cpp :
./autogen.sh
./configure at this stage execution failed with the following: 
checking for pthread_create in -lpthread... no
but in qnx all neccessary functions of pthread.h are in libc.so, so in
configure.ac i do the following:
 *) ## Unix configuration

#    AC_CHECK_LIB(pthread, pthread_create,[have_pthread="yes"],
  #              AC_MSG_ERROR([libpthread not found!]))

    CXXFLAGS="-ansi -pedantic  $CXXFLAGS"
    #LIBS="$LIBS -lm -lpthread -luuid"
LIBS="$LIBS -lm -luuid"

after that ./autogen.sh and ./configure work fine.
Than i do make i'm given the following error:
ccplus1: unrecognized key 'Wstrict-aliasing=2'.
If i remove this key in Makefile, and compile again, i gain errors:
f g++ -DHAVE_CONFIG_H -I. -I. -I../.. -ansi -pedantic -g -O2 -W -Wall
-fstrict-aliasing -Wno-long-long -MT ActiveMQConsumer.o -MD -MP -MF
".deps/ActiveMQConsumer.Tpo" -c -o ActiveMQConsumer.o `test -f
'activemq/core/ActiveMQConsumer.cpp' || echo
'./'`activemq/core/ActiveMQConsumer.cpp; \
then mv -f ".deps/ActiveMQConsumer.Tpo" ".deps/ActiveMQConsumer.Po"; else rm
-f ".deps/ActiveMQConsumer.Tpo"; exit 1; fi
activemq/core/ActiveMQConsumer.cpp:365: error: syntax error before `
_attribute_'
activemq/core/ActiveMQConsumer.cpp:365: error: prototype for `void
activemq::core::ActiveMQConsumer::afterMessageIsConsumed(...)' does not
match any in class `activemq::core::ActiveMQConsumer'
activemq/core/ActiveMQConsumer.h:216: error: candidate is: virtual void
activemq::core::ActiveMQConsumer::afterMessageIsConsumed(activemq::core::ActiveMQMessage*,
bool)
activemq/core/ActiveMQConsumer.cpp: In member function `void
activemq::core::ActiveMQConsumer::afterMessageIsConsumed(...)':
activemq/core/ActiveMQConsumer.cpp:377: error: `message' undeclared (first
use
this function)
activemq/core/ActiveMQConsumer.cpp:377: error: (Each undeclared identifier
is
reported only once for each function it appears in.)
activemq/core/ActiveMQConsumer.cpp:377: error: ISO C++ forbids declaration
of `
destroyMessage' with no type
activemq/core/ActiveMQConsumer.cpp:378: error: syntax error before `}' token
activemq/core/ActiveMQConsumer.cpp:386: error: extra qualification `
activemq::core::ActiveMQConsumer::' on member `acknowledgeMessage' ignored
activemq/core/ActiveMQConsumer.cpp: In member function `virtual void
activemq::core::ActiveMQConsumer::acknowledgeMessage(const
activemq::core::ActiveMQMessage*)':
activemq/core/ActiveMQConsumer.cpp:407: error: extra qualification `
activemq::core::ActiveMQConsumer::' on member `dispatch' ignored
activemq/core/ActiveMQConsumer.cpp: In member function `virtual void
activemq::core::ActiveMQConsumer::dispatch(activemq::core::DispatchData&)':
activemq/core/ActiveMQConsumer.cpp:449: error: extra qualification `
activemq::core::ActiveMQConsumer::' on member `purgeMessages' ignored
activemq/core/ActiveMQConsumer.cpp: In member function `virtual void
activemq::core::ActiveMQConsumer::purgeMessages()':
activemq/core/ActiveMQConsumer.cpp:470: error: extra qualification `
activemq::core::ActiveMQConsumer::' on member `destroyMessage' ignored
activemq/core/ActiveMQConsumer.cpp: In member function `virtual void
activemq::core::ActiveMQConsumer::destroyMessage(activemq::core::ActiveMQMessage*)
':
activemq/core/ActiveMQConsumer.cpp:489: error: extra qualification `
activemq::core::ActiveMQConsumer::' on member `onConnectorResourceClosed'
ignored
make[2]: *** [ActiveMQConsumer.o] Error 1
make[2]: Leaving directory
`/home/lebovic/activemq-cpp/activemq-cpp/src/main'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/lebovic/activemq-cpp/activemq-cpp'
make: *** [all] Error 2

Any suggestions are appreciated.


 
-- 
View this message in context: http://www.nabble.com/Unable-to-compile-Active-MQ-cpp-client-on-QNX-tf4033928s2354.html#a11459567
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Re: Unable to compile Active MQ cpp client on QNX

Posted by Albert Strasheim <fu...@gmail.com>.
Hello

I suspect GCC 3.3 might be a bit on the old side for compiling ActiveMQ-CPP. 
You probably want to use GCC 3.4 or later.

It might be possible to make a few modifications to the code to get it to 
compile with GCC 3.3, but judging from the error messages, this might turn 
out to be hard work.

Regards,

Albert

----- Original Message ----- 
From: "Alexander Chernykh" <al...@mail.ru>
To: <us...@activemq.apache.org>
Sent: Friday, July 06, 2007 8:48 AM
Subject: Unable to compile Active MQ cpp client on QNX


>
> Given:
> QNX 6.3.0 SP3,
> gcc 3.3.5 which is supplied with OS,
> activemq-cpp-2.0.1-src,
> autoconf 2.61,
> automake 1.9.6,
> libtool 1.5.24,
> cppunit 1.10.2,
> m4 1.4.9,
> e2fsprogs precompiled from third-party cd.