You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by Dennis Jacobfeuerborn <d....@conversis.de> on 2007/06/26 21:04:31 UTC

problems trying to get qpid working

Hi,
currently I'm trying to get qpid to work on my Fedora 7 machine but I keep 
running into obstacles. I first tried using the packages included in the 
distribution but I have been unable to compile a simple client because of 
include errors (e.g. "posix/check.h" seems to be required but is nowhere to 
be found on my system).
Now I'm trying to compile a version from svn which seems to work until I 
get the following error:

...
ar cru .libs/libLogger.a qpid/log/.libs/libLogger_la-Logger.o
ranlib .libs/libLogger.a
creating libLogger.la
(cd .libs && rm -f libLogger.la && ln -s ../libLogger.la libLogger.la)
/bin/sh ../libtool --tag=CXX   --mode=link g++ -Werror -pedantic -Wall 
-Wextra -Wno-shadow -Wpointer-arith -Wcast-qual -Wcast-align -Wno-long-long 
-Wvolatile-register-var -Winvalid-pch -Wno-system-headers 
-Woverloaded-virtual -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE 
-D_LARGEFILE64_SOURCE -pthread -I/usr/include/apr-1   -DUSE_APR_PLATFORM=1 
-g -O2 -version-info 1:0:1  -o libqpidcommon.la -rpath /opt/amqp/lib 
qpid/sys/apr/APRAcceptor.lo qpid/sys/apr/APRBase.lo qpid/sys/apr/APRPool.lo 
qpid/sys/apr/APRSocket.lo qpid/sys/apr/LFProcessor.lo 
qpid/sys/apr/LFSessionContext.lo qpid/sys/apr/Socket.lo 
qpid/sys/apr/Time.lo qpid/sys/apr/Thread.lo  qpid/framing/AMQBody.lo 
qpid/framing/AMQRequestBody.lo qpid/framing/AMQResponseBody.lo 
qpid/framing/AMQContentBody.lo qpid/framing/AMQFrame.lo 
qpid/framing/AMQHeaderBody.lo qpid/framing/AMQHeartbeatBody.lo 
qpid/framing/AMQMethodBody.lo qpid/framing/MethodContext.lo 
qpid/framing/BasicHeaderProperties.lo qpid/framing/BodyHandler.lo 
qpid/framing/ChannelAdapter.lo qpid/framing/Buffer.lo 
qpid/framing/FieldTable.lo qpid/framing/FramingContent.lo 
qpid/framing/InitiationHandler.lo qpid/framing/ProtocolInitiation.lo 
qpid/framing/ProtocolVersion.lo qpid/framing/ProtocolVersionException.lo 
qpid/framing/Requester.lo qpid/framing/Responder.lo 
qpid/framing/Correlator.lo qpid/framing/Value.lo qpid/framing/Proxy.lo 
gen/qpid/framing/AMQP_ClientProxy.lo 
gen/qpid/framing/AMQP_MethodVersionMap.lo 
gen/qpid/framing/AMQP_ServerProxy.lo qpid/Exception.lo qpid/Url.lo 
qpid/QpidError.lo qpid/sys/Runnable.lo qpid/sys/ProducerConsumer.lo 
qpid/CommonOptions.lo qpid/log/Options.lo qpid/log/Selector.lo 
qpid/log/Statement.lo -lboost_program_options libLogger.la -lapr-1 -luuid 
-lcrypt -lpthread -ldl   -ldl -lrt
libtool: link: `gen/qpid/framing/AMQP_ClientProxy.lo' is not a valid 
libtool object
make[3]: *** [libqpidcommon.la] Error 1
make[3]: Leaving directory `/home/dennis/amqp/cpp/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/dennis/amqp/cpp/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/dennis/amqp/cpp/src'
make: *** [all-recursive] Error 1

What is the best way to go for someone who is interested to experiment with 
AMQP?

Regards,
   Dennis

Re: problems trying to get qpid working

Posted by Carl Trieloff <cc...@redhat.com>.
looked at the error in more detail, you are missing the code generators, 
they are currently Java. Looks like that is failing. If you don't want 
to set Java up, then the RPM's Nuno pointed you to have the generated 
stubs included.

Carl.


Carl Trieloff wrote:
>
> Dennis,
>
> I am on an earlier version of FC, I have a FC7 at home and can give it 
> a spin. something might have changed on FC7
> after the packages where added to FC7.
>
> To build from svn, do a ./bootstap and then make. make check to make 
> sure all is sane.
> If the ./configure fails there is a script to set up the tool chain to 
> build it.
>
> Also, today we had some issues with trunk, so make sure you have the 
> latest, what happens if you do this.
>
> ./bootstap
> ./configure
> make
> make check
>
> Does it get through the bootstrap and configure, also did you check 
> out the whole source tree of just the cpp?
> Carl.
>
>
> Dennis Jacobfeuerborn wrote:
>> Hi,
>> currently I'm trying to get qpid to work on my Fedora 7 machine but I 
>> keep running into obstacles. I first tried using the packages 
>> included in the distribution but I have been unable to compile a 
>> simple client because of include errors (e.g. "posix/check.h" seems 
>> to be required but is nowhere to be found on my system).
>> Now I'm trying to compile a version from svn which seems to work 
>> until I get the following error:
>>
>> ...
>> ar cru .libs/libLogger.a qpid/log/.libs/libLogger_la-Logger.o
>> ranlib .libs/libLogger.a
>> creating libLogger.la
>> (cd .libs && rm -f libLogger.la && ln -s ../libLogger.la libLogger.la)
>> /bin/sh ../libtool --tag=CXX   --mode=link g++ -Werror -pedantic 
>> -Wall -Wextra -Wno-shadow -Wpointer-arith -Wcast-qual -Wcast-align 
>> -Wno-long-long -Wvolatile-register-var -Winvalid-pch 
>> -Wno-system-headers -Woverloaded-virtual -DLINUX=2 -D_REENTRANT 
>> -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -pthread -I/usr/include/apr-1   
>> -DUSE_APR_PLATFORM=1 -g -O2 -version-info 1:0:1  -o libqpidcommon.la 
>> -rpath /opt/amqp/lib qpid/sys/apr/APRAcceptor.lo 
>> qpid/sys/apr/APRBase.lo qpid/sys/apr/APRPool.lo 
>> qpid/sys/apr/APRSocket.lo qpid/sys/apr/LFProcessor.lo 
>> qpid/sys/apr/LFSessionContext.lo qpid/sys/apr/Socket.lo 
>> qpid/sys/apr/Time.lo qpid/sys/apr/Thread.lo  qpid/framing/AMQBody.lo 
>> qpid/framing/AMQRequestBody.lo qpid/framing/AMQResponseBody.lo 
>> qpid/framing/AMQContentBody.lo qpid/framing/AMQFrame.lo 
>> qpid/framing/AMQHeaderBody.lo qpid/framing/AMQHeartbeatBody.lo 
>> qpid/framing/AMQMethodBody.lo qpid/framing/MethodContext.lo 
>> qpid/framing/BasicHeaderProperties.lo qpid/framing/BodyHandler.lo 
>> qpid/framing/ChannelAdapter.lo qpid/framing/Buffer.lo 
>> qpid/framing/FieldTable.lo qpid/framing/FramingContent.lo 
>> qpid/framing/InitiationHandler.lo qpid/framing/ProtocolInitiation.lo 
>> qpid/framing/ProtocolVersion.lo 
>> qpid/framing/ProtocolVersionException.lo qpid/framing/Requester.lo 
>> qpid/framing/Responder.lo qpid/framing/Correlator.lo 
>> qpid/framing/Value.lo qpid/framing/Proxy.lo 
>> gen/qpid/framing/AMQP_ClientProxy.lo 
>> gen/qpid/framing/AMQP_MethodVersionMap.lo 
>> gen/qpid/framing/AMQP_ServerProxy.lo qpid/Exception.lo qpid/Url.lo 
>> qpid/QpidError.lo qpid/sys/Runnable.lo qpid/sys/ProducerConsumer.lo 
>> qpid/CommonOptions.lo qpid/log/Options.lo qpid/log/Selector.lo 
>> qpid/log/Statement.lo -lboost_program_options libLogger.la -lapr-1 
>> -luuid -lcrypt -lpthread -ldl   -ldl -lrt
>> libtool: link: `gen/qpid/framing/AMQP_ClientProxy.lo' is not a valid 
>> libtool object
>> make[3]: *** [libqpidcommon.la] Error 1
>> make[3]: Leaving directory `/home/dennis/amqp/cpp/src'
>> make[2]: *** [all-recursive] Error 1
>> make[2]: Leaving directory `/home/dennis/amqp/cpp/src'
>> make[1]: *** [all] Error 2
>> make[1]: Leaving directory `/home/dennis/amqp/cpp/src'
>> make: *** [all-recursive] Error 1
>>
>> What is the best way to go for someone who is interested to 
>> experiment with AMQP?
>>
>> Regards,
>>   Dennis
>


Re: problems trying to get qpid working

Posted by Carl Trieloff <cc...@redhat.com>.
Dennis,

I am on an earlier version of FC, I have a FC7 at home and can give it a 
spin. something might have changed on FC7
after the packages where added to FC7.

To build from svn, do a ./bootstap and then make. make check to make 
sure all is sane.
If the ./configure fails there is a script to set up the tool chain to 
build it.

Also, today we had some issues with trunk, so make sure you have the 
latest, what happens if you do this.

./bootstap
./configure
make
make check

Does it get through the bootstrap and configure, also did you check out 
the whole source tree of just the cpp?
Carl.


Dennis Jacobfeuerborn wrote:
> Hi,
> currently I'm trying to get qpid to work on my Fedora 7 machine but I 
> keep running into obstacles. I first tried using the packages included 
> in the distribution but I have been unable to compile a simple client 
> because of include errors (e.g. "posix/check.h" seems to be required 
> but is nowhere to be found on my system).
> Now I'm trying to compile a version from svn which seems to work until 
> I get the following error:
>
> ...
> ar cru .libs/libLogger.a qpid/log/.libs/libLogger_la-Logger.o
> ranlib .libs/libLogger.a
> creating libLogger.la
> (cd .libs && rm -f libLogger.la && ln -s ../libLogger.la libLogger.la)
> /bin/sh ../libtool --tag=CXX   --mode=link g++ -Werror -pedantic -Wall 
> -Wextra -Wno-shadow -Wpointer-arith -Wcast-qual -Wcast-align 
> -Wno-long-long -Wvolatile-register-var -Winvalid-pch 
> -Wno-system-headers -Woverloaded-virtual -DLINUX=2 -D_REENTRANT 
> -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -pthread -I/usr/include/apr-1   
> -DUSE_APR_PLATFORM=1 -g -O2 -version-info 1:0:1  -o libqpidcommon.la 
> -rpath /opt/amqp/lib qpid/sys/apr/APRAcceptor.lo 
> qpid/sys/apr/APRBase.lo qpid/sys/apr/APRPool.lo 
> qpid/sys/apr/APRSocket.lo qpid/sys/apr/LFProcessor.lo 
> qpid/sys/apr/LFSessionContext.lo qpid/sys/apr/Socket.lo 
> qpid/sys/apr/Time.lo qpid/sys/apr/Thread.lo  qpid/framing/AMQBody.lo 
> qpid/framing/AMQRequestBody.lo qpid/framing/AMQResponseBody.lo 
> qpid/framing/AMQContentBody.lo qpid/framing/AMQFrame.lo 
> qpid/framing/AMQHeaderBody.lo qpid/framing/AMQHeartbeatBody.lo 
> qpid/framing/AMQMethodBody.lo qpid/framing/MethodContext.lo 
> qpid/framing/BasicHeaderProperties.lo qpid/framing/BodyHandler.lo 
> qpid/framing/ChannelAdapter.lo qpid/framing/Buffer.lo 
> qpid/framing/FieldTable.lo qpid/framing/FramingContent.lo 
> qpid/framing/InitiationHandler.lo qpid/framing/ProtocolInitiation.lo 
> qpid/framing/ProtocolVersion.lo 
> qpid/framing/ProtocolVersionException.lo qpid/framing/Requester.lo 
> qpid/framing/Responder.lo qpid/framing/Correlator.lo 
> qpid/framing/Value.lo qpid/framing/Proxy.lo 
> gen/qpid/framing/AMQP_ClientProxy.lo 
> gen/qpid/framing/AMQP_MethodVersionMap.lo 
> gen/qpid/framing/AMQP_ServerProxy.lo qpid/Exception.lo qpid/Url.lo 
> qpid/QpidError.lo qpid/sys/Runnable.lo qpid/sys/ProducerConsumer.lo 
> qpid/CommonOptions.lo qpid/log/Options.lo qpid/log/Selector.lo 
> qpid/log/Statement.lo -lboost_program_options libLogger.la -lapr-1 
> -luuid -lcrypt -lpthread -ldl   -ldl -lrt
> libtool: link: `gen/qpid/framing/AMQP_ClientProxy.lo' is not a valid 
> libtool object
> make[3]: *** [libqpidcommon.la] Error 1
> make[3]: Leaving directory `/home/dennis/amqp/cpp/src'
> make[2]: *** [all-recursive] Error 1
> make[2]: Leaving directory `/home/dennis/amqp/cpp/src'
> make[1]: *** [all] Error 2
> make[1]: Leaving directory `/home/dennis/amqp/cpp/src'
> make: *** [all-recursive] Error 1
>
> What is the best way to go for someone who is interested to experiment 
> with AMQP?
>
> Regards,
>   Dennis


Re: problems trying to get qpid working

Posted by Dennis Jacobfeuerborn <d....@conversis.de>.
Nuno Santos wrote:
> Dennis Jacobfeuerborn wrote:
>> currently I'm trying to get qpid to work on my Fedora 7 machine but I 
>> keep running into obstacles. [...]
>> What is the best way to go for someone who is interested to experiment 
>> with AMQP?
> 
> Dennis,
> 
> since you're using Fedora, you may want to try the RPMs that we have 
> available at http://rhm.et.redhat.com/download/ . They represent the 
> latest builds of trunk and M2 (for C++, i386 RPMs are recent, but not 
> the latest; x86_64 are the latest).

Thanks for the reply Nuno,

I've tried compiling qpidc-0.2 from the source-rpm (there is no i386 rpm) 
and while the compilation itself worked out one of the ten test failed with 
the following message:

terminate called after throwing an instance of 'qpid::QpidError'
   what():  Error [20022] Invalid argument (./qpid/sys/apr/Mutex.h:61)
/bin/sh: line 4: 24714 Aborted                 VALGRIND= srcdir=. ${dir}$tst
FAIL: run-unit-tests

It then said I should report the error to this list so there you go :)

Rebuilding qpidc-0.1 succeeded though but it seems this version is too old 
to use with the examples ("topic_publisher.cpp") from the subversion 
repository as the include paths don't match up. I tried adapting them until 
I got to the point where the file "posix/check.h" is required. This file is 
present in the svn repository but does not get installed with the rpms. The 
following two files contain this reference:

# grep -nri "check.h" .
./sys/Thread.h:33:#  include <posix/check.h>
./sys/Mutex.h:29:#  include <posix/check.h>

That was also the problem I eventually encountered using the qpid[cd]-0.2 
packages from Fedora. I'm not sure if this a problem with the packaging or 
if the files "sys/Thread.h" and/or "sys/Mutex.h" should never get pulled in 
by the compilation in the first place.

Regards,
   Dennis

Re: problems trying to get qpid working

Posted by Nuno Santos <ns...@redhat.com>.
Dennis Jacobfeuerborn wrote:
> currently I'm trying to get qpid to work on my Fedora 7 machine but I 
> keep running into obstacles. [...]
> What is the best way to go for someone who is interested to experiment 
> with AMQP?

Dennis,

since you're using Fedora, you may want to try the RPMs that we have 
available at http://rhm.et.redhat.com/download/ . They represent the 
latest builds of trunk and M2 (for C++, i386 RPMs are recent, but not 
the latest; x86_64 are the latest).

Nuno

Re: problems trying to get qpid working

Posted by Gordon Sim <gs...@redhat.com>.
Dennis Jacobfeuerborn wrote:
> Removing the packages and 
> compiling from a fresh checkout fails almost immediately with:
[...]
> qpid/framing/AMQP_ServerOperations.h: No such file or directory
[...]
> qpid/framing/AMQP_MethodVersionMap.h: No such file or directory
[...]
> qpid/framing/AMQP_HighestVersion.h: No such file or directory

These files should all be generated. The generation process is currently 
java based and required when building from the repository. (The qpid 
packages contain these generated files, and if installed those versions 
get picked up).

Assuming you hava JDK5.0 or later on your path, when building from svn, 
you should get something like the following:

./generate.sh
Generating code.
C++ generation mode.
XML files: [./../../specs/amqp.0-9.xml, 
./../../specs/amqp-errata.0-9.xml, 
./../../specs/amqp-dtx-preview.0-9.xml, ./../xml/cluster.xml]
   "./../../specs/amqp.0-9.xml": Found version 0-9.
   "./../../specs/amqp-errata.0-9.xml": Found version 0-9.
   "./../../specs/amqp-dtx-preview.0-9.xml": Found version 0-9.
   "./../xml/cluster.xml": Found version 0-9.
Model template file(s):
[...]
Method template file(s):
[...]
Generation directory:
[...]
Files generated: 136

Could you have a look at that section of the output, near the start and 
see if there are any errors? Or send the full output of the build?

Re: problems trying to get qpid working

Posted by Dennis Jacobfeuerborn <d....@conversis.de>.
Andrew Stitcher wrote:
> On Tue, 2007-06-26 at 21:04 +0200, Dennis Jacobfeuerborn wrote:
>> Hi,
>> currently I'm trying to get qpid to work on my Fedora 7 machine but I keep 
>> running into obstacles. I first tried using the packages included in the 
>> distribution but I have been unable to compile a simple client because of 
>> include errors (e.g. "posix/check.h" seems to be required but is nowhere to 
>> be found on my system).
> 
> At present, you can probably avoid this problem by adding
> -DUSE_APR_PLATFORM=1 to your compile line. You'll notice that this flag
> is used in the default client program builds in svn at the moment. This
> should be going away on the trunk fairly soon as we are moving away from
> APR completely.
> 
>> Now I'm trying to compile a version from svn which seems to work until I 
>> get the following error:
>>
>> ...
>> ar cru .libs/libLogger.a qpid/log/.libs/libLogger_la-Logger.o
>> ranlib .libs/libLogger.a
>> creating libLogger.la
>> (cd .libs && rm -f libLogger.la && ln -s ../libLogger.la libLogger.la)
>> /bin/sh ../libtool --tag=CXX   --mode=link g++ -Werror -pedantic -Wall 
>> -Wextra -Wno-shadow -Wpointer-arith -Wcast-qual -Wcast-align -Wno-long-long 
>> -Wvolatile-register-var -Winvalid-pch -Wno-system-headers 
>> -Woverloaded-virtual -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE 
>> -D_LARGEFILE64_SOURCE -pthread -I/usr/include/apr-1   -DUSE_APR_PLATFORM=1 
>> -g -O2 -version-info 1:0:1  -o libqpidcommon.la -rpath /opt/amqp/lib 
>> qpid/sys/apr/APRAcceptor.lo qpid/sys/apr/APRBase.lo qpid/sys/apr/APRPool.lo 
>> qpid/sys/apr/APRSocket.lo qpid/sys/apr/LFProcessor.lo 
>> qpid/sys/apr/LFSessionContext.lo qpid/sys/apr/Socket.lo 
>> qpid/sys/apr/Time.lo qpid/sys/apr/Thread.lo  qpid/framing/AMQBody.lo 
>> qpid/framing/AMQRequestBody.lo qpid/framing/AMQResponseBody.lo 
>> qpid/framing/AMQContentBody.lo qpid/framing/AMQFrame.lo 
>> qpid/framing/AMQHeaderBody.lo qpid/framing/AMQHeartbeatBody.lo 
>> qpid/framing/AMQMethodBody.lo qpid/framing/MethodContext.lo 
>> qpid/framing/BasicHeaderProperties.lo qpid/framing/BodyHandler.lo 
>> qpid/framing/ChannelAdapter.lo qpid/framing/Buffer.lo 
>> qpid/framing/FieldTable.lo qpid/framing/FramingContent.lo 
>> qpid/framing/InitiationHandler.lo qpid/framing/ProtocolInitiation.lo 
>> qpid/framing/ProtocolVersion.lo qpid/framing/ProtocolVersionException.lo 
>> qpid/framing/Requester.lo qpid/framing/Responder.lo 
>> qpid/framing/Correlator.lo qpid/framing/Value.lo qpid/framing/Proxy.lo 
>> gen/qpid/framing/AMQP_ClientProxy.lo 
>> gen/qpid/framing/AMQP_MethodVersionMap.lo 
>> gen/qpid/framing/AMQP_ServerProxy.lo qpid/Exception.lo qpid/Url.lo 
>> qpid/QpidError.lo qpid/sys/Runnable.lo qpid/sys/ProducerConsumer.lo 
>> qpid/CommonOptions.lo qpid/log/Options.lo qpid/log/Selector.lo 
>> qpid/log/Statement.lo -lboost_program_options libLogger.la -lapr-1 -luuid 
>> -lcrypt -lpthread -ldl   -ldl -lrt
>> libtool: link: `gen/qpid/framing/AMQP_ClientProxy.lo' is not a valid 
>> libtool object
>> make[3]: *** [libqpidcommon.la] Error 1
>> make[3]: Leaving directory `/home/dennis/amqp/cpp/src'
>> make[2]: *** [all-recursive] Error 1
>> make[2]: Leaving directory `/home/dennis/amqp/cpp/src'
>> make[1]: *** [all] Error 2
>> make[1]: Leaving directory `/home/dennis/amqp/cpp/src'
>> make: *** [all-recursive] Error 1
> 
> This is the kind of problem you get from libtool when there's crud from
> a previous compile left around. Either manually remove each of the .lo
> files you get this message with, or "make clean" which should remove
> all .lo files. This can also be triggered by parallel builds (make -j)
> in older versions from svn, currently use of libtool should all be non
> parallel to avoid this problem.

The problem is that the file AMQP_ClientProxy.lo doesn't exist. To my 
surprise it seems that having the Fedora qpidc packages installed 
interferes with the compilation process. Removing the packages and 
compiling from a fresh checkout fails almost immediately with:

make[3]: Entering directory `/home/dennis/amqp/cpp/src'
depbase=`echo qpid/sys/apr/APRAcceptor.lo | sed 
's|[^/]*$|.deps/&|;s|\.lo$||'`;\
         /bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H 
-I. -Igen -I./gen   -Werror -pedantic -Wall -Wextra -Wno-shadow 
-Wpointer-arith -Wcast-qual -Wcast-align -Wno-long-long 
-Wvolatile-register-var -Winvalid-pch -Wno-system-headers 
-Woverloaded-virtual -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE 
-D_LARGEFILE64_SOURCE -pthread -I/usr/include/apr-1   -DUSE_APR_PLATFORM=1 
-g -O2 -MT qpid/sys/apr/APRAcceptor.lo -MD -MP -MF $depbase.Tpo -c -o 
qpid/sys/apr/APRAcceptor.lo qpid/sys/apr/APRAcceptor.cpp &&\
         mv -f $depbase.Tpo $depbase.Plo
mkdir qpid/sys/apr/.libs
  g++ -DHAVE_CONFIG_H -I. -Igen -I./gen -Werror -pedantic -Wall -Wextra 
-Wno-shadow -Wpointer-arith -Wcast-qual -Wcast-align -Wno-long-long 
-Wvolatile-register-var -Winvalid-pch -Wno-system-headers 
-Woverloaded-virtual -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE 
-D_LARGEFILE64_SOURCE -pthread -I/usr/include/apr-1 -DUSE_APR_PLATFORM=1 -g 
-O2 -MT qpid/sys/apr/APRAcceptor.lo -MD -MP -MF 
qpid/sys/apr/.deps/APRAcceptor.Tpo -c qpid/sys/apr/APRAcceptor.cpp  -fPIC 
-DPIC -o qpid/sys/apr/.libs/APRAcceptor.o
In file included from ./qpid/framing/AMQFrame.h:29,
                  from qpid/sys/apr/LFSessionContext.h:30,
                  from qpid/sys/apr/APRAcceptor.cpp:26:
./qpid/framing/AMQMethodBody.h:28:48: error: 
qpid/framing/AMQP_ServerOperations.h: No such file or directory
In file included from qpid/sys/apr/LFSessionContext.h:30,
                  from qpid/sys/apr/APRAcceptor.cpp:26:
./qpid/framing/AMQFrame.h:33:48: error: 
qpid/framing/AMQP_MethodVersionMap.h: No such file or directory
./qpid/framing/AMQFrame.h:34:46: error: qpid/framing/AMQP_HighestVersion.h: 
No such file or directory
./qpid/framing/AMQMethodBody.h:54: error: 'AMQP_ServerOperations' has not 
been declared
./qpid/framing/AMQFrame.h:44: error: 'highestProtocolVersion' was not 
declared in this scope
make[3]: *** [qpid/sys/apr/APRAcceptor.lo] Error 1
make[3]: Leaving directory `/home/dennis/amqp/cpp/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/dennis/amqp/cpp/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/dennis/amqp/cpp/src'
make: *** [all-recursive] Error 1

That is after removing all qpid* packages from the system and doing a fresh 
checkout followed by a bootstrap, configure and make.

Regards,
   Dennis


Re: problems trying to get qpid working

Posted by Andrew Stitcher <as...@redhat.com>.
On Tue, 2007-06-26 at 21:04 +0200, Dennis Jacobfeuerborn wrote:
> Hi,
> currently I'm trying to get qpid to work on my Fedora 7 machine but I keep 
> running into obstacles. I first tried using the packages included in the 
> distribution but I have been unable to compile a simple client because of 
> include errors (e.g. "posix/check.h" seems to be required but is nowhere to 
> be found on my system).

At present, you can probably avoid this problem by adding
-DUSE_APR_PLATFORM=1 to your compile line. You'll notice that this flag
is used in the default client program builds in svn at the moment. This
should be going away on the trunk fairly soon as we are moving away from
APR completely.

> Now I'm trying to compile a version from svn which seems to work until I 
> get the following error:
> 
> ...
> ar cru .libs/libLogger.a qpid/log/.libs/libLogger_la-Logger.o
> ranlib .libs/libLogger.a
> creating libLogger.la
> (cd .libs && rm -f libLogger.la && ln -s ../libLogger.la libLogger.la)
> /bin/sh ../libtool --tag=CXX   --mode=link g++ -Werror -pedantic -Wall 
> -Wextra -Wno-shadow -Wpointer-arith -Wcast-qual -Wcast-align -Wno-long-long 
> -Wvolatile-register-var -Winvalid-pch -Wno-system-headers 
> -Woverloaded-virtual -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE 
> -D_LARGEFILE64_SOURCE -pthread -I/usr/include/apr-1   -DUSE_APR_PLATFORM=1 
> -g -O2 -version-info 1:0:1  -o libqpidcommon.la -rpath /opt/amqp/lib 
> qpid/sys/apr/APRAcceptor.lo qpid/sys/apr/APRBase.lo qpid/sys/apr/APRPool.lo 
> qpid/sys/apr/APRSocket.lo qpid/sys/apr/LFProcessor.lo 
> qpid/sys/apr/LFSessionContext.lo qpid/sys/apr/Socket.lo 
> qpid/sys/apr/Time.lo qpid/sys/apr/Thread.lo  qpid/framing/AMQBody.lo 
> qpid/framing/AMQRequestBody.lo qpid/framing/AMQResponseBody.lo 
> qpid/framing/AMQContentBody.lo qpid/framing/AMQFrame.lo 
> qpid/framing/AMQHeaderBody.lo qpid/framing/AMQHeartbeatBody.lo 
> qpid/framing/AMQMethodBody.lo qpid/framing/MethodContext.lo 
> qpid/framing/BasicHeaderProperties.lo qpid/framing/BodyHandler.lo 
> qpid/framing/ChannelAdapter.lo qpid/framing/Buffer.lo 
> qpid/framing/FieldTable.lo qpid/framing/FramingContent.lo 
> qpid/framing/InitiationHandler.lo qpid/framing/ProtocolInitiation.lo 
> qpid/framing/ProtocolVersion.lo qpid/framing/ProtocolVersionException.lo 
> qpid/framing/Requester.lo qpid/framing/Responder.lo 
> qpid/framing/Correlator.lo qpid/framing/Value.lo qpid/framing/Proxy.lo 
> gen/qpid/framing/AMQP_ClientProxy.lo 
> gen/qpid/framing/AMQP_MethodVersionMap.lo 
> gen/qpid/framing/AMQP_ServerProxy.lo qpid/Exception.lo qpid/Url.lo 
> qpid/QpidError.lo qpid/sys/Runnable.lo qpid/sys/ProducerConsumer.lo 
> qpid/CommonOptions.lo qpid/log/Options.lo qpid/log/Selector.lo 
> qpid/log/Statement.lo -lboost_program_options libLogger.la -lapr-1 -luuid 
> -lcrypt -lpthread -ldl   -ldl -lrt
> libtool: link: `gen/qpid/framing/AMQP_ClientProxy.lo' is not a valid 
> libtool object
> make[3]: *** [libqpidcommon.la] Error 1
> make[3]: Leaving directory `/home/dennis/amqp/cpp/src'
> make[2]: *** [all-recursive] Error 1
> make[2]: Leaving directory `/home/dennis/amqp/cpp/src'
> make[1]: *** [all] Error 2
> make[1]: Leaving directory `/home/dennis/amqp/cpp/src'
> make: *** [all-recursive] Error 1

This is the kind of problem you get from libtool when there's crud from
a previous compile left around. Either manually remove each of the .lo
files you get this message with, or "make clean" which should remove
all .lo files. This can also be triggered by parallel builds (make -j)
in older versions from svn, currently use of libtool should all be non
parallel to avoid this problem.

> 
> What is the best way to go for someone who is interested to experiment with 
> AMQP?

I'd say svn is the most reliable way at present. FWIW I currently
develop qpid using F7 x86_64 and the trunk of the svn repository.

Andrew