Hi,

you are right, the problem disappears when I use dynamic libraries.

Unfortunately for our project I must use static libraries.
Is there some specific order for the libraries required if I want build own C++ client application? Is there another way to ensure that the protocol registration is done at proper time (e.g. I invoke some special method/function before I try to open a connection)?

Regards,
Grzegorz

On 2/1/2011 6:51 PM, Gordon Sim wrote:
On 02/01/2011 04:53 PM, Grzegorz Swiatek wrote:
Hi,

I want to start my simple C++ program (see below) that tries to open a
connection and get following output:
open connection
Unknown protocol: tcp (qpid/client/Connector.cpp:52)

I used static libraries with following link settings:
-static -lqpidclient -static -lqpidcommon -lm -lrt -ldl -luuid -lpthread
-lboost_filesystem -lboost_program_options

My environment is:
- CentOS 5.5 /x86_64
- gcc/g++ 4.1.2
- qpid 0.8

What is wrong here?

My guess would be that the static linking is the issue. The protocol
registration relies on static initialisers at present and the static
linking may result in the wrong order of execution.

Are you able to link dynamically to verify that theory?

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


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

Reply via email to