For anyone interested in a Windows port of the qpid amqp 1.0, I have a
Visual Studio 10 snapshot available on my github webpage.

 

I hope to add Jiras for patches so that my Visual Studio port can be
considered for inclusion in the current QPID codebase.

                

In the meantime, I placed my Visual Studio port of the qpid project on my
github website.

                https://github.com/MaryDHinton/qpid/tree/qpidWinSnap

                

You can download a zip file by selecting the ZIP button on the Webpage.

 

To compile and run this code you will also need to download, compile, and
run the Snapshot code of the proton Windows port. 

It is located at:

 
https://github.com/MaryDHinton/qpid-proton/tree/protonWinSnap

                

Both projects are set up  for Visual Studio 10 and debug mode.

============== Proton ===============

 

To see the Windows port running for proton, use this branch

https://github.com/MaryDHinton/qpid-proton/tree/protonWinSnap

 

To compile and run this code, all you should need to do is:

 

Select the zip button on the page above and extract the code.

Select the proton.sln file in the proton-c folder and open it in Visual

Studio 2010.

Compile the qpid-proton and proton projects.

Go to the Debug folder and run proton (the debug version is the only mode

set up, the release will have to be set up).

 

I set up an environment variable for the proton after building the proton
dll, then added this environment variable to the qpid project in the C/C++
properties page (Additional Include Directories).

Set the environment variable 

PROTON_INCLUDE --- to your environment. Mine is set to:

 
C:\proton\protonWinSnap\qpid-proton\proton-c\include;C:\proton\protonWinSnap
\qpid-proton\proton-c

I also have the path to proton executable set in my environment path

                c:\qpid\qpid\proton\proton-c\Debug

 

After the proton dll and proton executable are compiled, you can run proton
in server and client mode.

 

Server

Open up a dialog box and change to the proton path and run       

                proton

 

client

Open up a second dialog box and change to the proton path and run       

                proton -c 127.0.0.1

 

You should be able to see messages passed between a proton client and

server.  

============ QPID AMQP 1.0 ===============

For QPID, I used Boost 1.51.0.

 

I have a solution file (qpid-cpp-Snap.sln) for the qpid port that includes
only the projects to compile, run, and test the qpid amqp 1.0 for Visual
Studio.

                                projects included:

                                                amqp

                                                amqpc

                                                hello_world

                                                qpid-client-test

                                                qpidbroker

                                                qpidclient

                                                qpidcommon

                                                qpidd

                                                qpidmessaqing

                                                qpidtypes

 

                                                

You may need to check the Properties for the 10 projects in this solution
and make sure the paths are correct on your pc.

                                For example:

                                                Configuration Properties

 
OutputDirectory

                                                C/C++

                                                                General 

 
Additional Include Directories

                                                                Output Files

 
Program Database File Name

                                                Linker

                                                                General

 
Additional Library Directories

                                                                Input

 
Additional Dependencies

                                                                Debugging

 
Generate Program Database File

                                                                Advanced

 
Import Library

 


I used the path C:\qpidWin to put the extracted files from the zip.

 

After building both the proton Windows port and the QPID port for the server
and client, the amqp 1.0 can be loaded in the server with the following
command

from the path where your dlls and executables are located. The path setup in
this solution is:

                c:\qpidWin\Debug

 

server

                qpidd --load-module amqpd --auth no

                

                Response

                c:\qpidWin\qpidWinSnap\qpid\qpid\cpp\output\Debug>qpidd
--load-module amqpd --auth no

                                2012-12-17 14:53:24 [Broker] notice SASL
disabled: No Authentication Performed

                                2012-12-17 14:53:32 [Network] notice
Listening on TCP/TCP6 port 5672

                                5672

                                2012-12-17 14:53:32 [Broker] notice Broker
running

                                2012-12-17 14:55:30 [Security] warning SASL:
No Authentication Performed

                                2012-12-17 14:56:11 [Security] warning SASL:
No Authentication Performed

                                2012-12-17 15:02:51 [Broker] notice Shut
down

 

clients 

                                set the environment variable
QPID_LOAD_MODULE to amqpcd

                                

hello_world client

                                hello_world

qpid-client-test client

                                qpid-client-test --verbose

 

                Response

 
c:\qpidWin\qpidWinSnap\qpid\qpid\cpp\output\Debug>qpid-client-test --verbose

                                Opened connection.

                                Opened session.

                                Declared exchange.

                                Declared queue.

                                Bound queue to exchange.

                                Published message: abcdefghijklmnop...

                                Received the exepected message.

                                Closed session.

                                Closed connection.

                

If you are using Norton's antivirus, you may have to disable checking for
the Suspicious.Cloud.7.F signature.

Thanks,

Mary Hinton

 

 

Reply via email to