For anyone interested in a Windows port of the qpid amqp 1.0, I have Visual
Studio 10 snapshots available on my github webpage.
 (Visual Studio port of proton and a qpid port loading proton)

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. I don't know
any reason why they wouldn't work for Visual Studio 12.

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

 To compile and run the proton port 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 mode:

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

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 Visual Studio Properties for the 10 projects in
this solution and make sure the paths are correct on your pc.

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
                c:\qpidWin\qpidWinSnap\qpid\qpid\cpp\output\Debug>qpidd
--load-module amqpd --auth no

clients 
                                set the environment variable
QPID_LOAD_MODULE to amqpcd                      
hello_world client
                                hello_world

qpid-client-test client
                                qpid-client-test --verbose
response:
                                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.
Original email on these snapshots was sent as:
"Windows Snapshot of QPID that loads the  AMQP 1.0 module (proton windows
port)"
on 12/18/2012 
to d...@qpid.apache.org
and 
"Proton Port for Windows"
on 11/14/2012
proton@qpid.apache.org
So both ports need to be rebased. I'm planning to do this soon,  since a new
release is out for proton
Thanks,
Mary Hinton

-----Original Message-----
From: Eagy, Taylor [mailto:te...@blackbirdtech.com] 
Sent: Wednesday, January 16, 2013 12:13 PM
To: proton@qpid.apache.org
Subject: RE: Is Proton a lightweight alternative to Qpid?

Rafael and Ted,

Thanks for your help on this. I'm excited to see that proton is getting a
Windows port since I wasn't able to build it in VS2012 successfully.

Thanks,
Taylor

________________________________
From: Rafael Schloming [r...@alum.mit.edu]
Sent: Tuesday, January 15, 2013 8:13 PM
To: proton@qpid.apache.org
Subject: Re: Is Proton a lightweight alternative to Qpid?

If you run cmake this way you can build the minimal code needed for just the
proton library and its python bindings:

cmake -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_PYTHON=ON -DBUILD_PHP=OFF
-DBUILD_PERL=OFF -DBUILD_RUBY=OFF <path_to_src_tree>

A quick test on my system shows that a make install based on the above build
works out to about 1.4MB. Stripping out header files and some package config
stuff would get you down to about 1.2MB if you want to go super barebones.

--Rafael

On Tue, Jan 15, 2013 at 5:38 PM, Ted Ross <tr...@redhat.com> wrote:

> Taylor,
>
> You need the following files:
>
>     proton.py          (from proton-c/bindings/python)
>     cproton.py         (from $BUILD/bindings/python)
>     _cproton.so        (from $BUILD/bindings/python)
>     libqpid-proton.so  (from $BUILD)
>
> -Ted
>
>
>
> On 01/15/2013 03:35 PM, Eagy, Taylor wrote:
>
>> Ted,
>>
>>
>>
>> Proton is more lightweight and the systems that it runs on won't have 
>> Java installed. While I would prefer a more Pythonic portable 
>> solution, as long as Proton-c builds within 5MB, then it should work. 
>> However, I'm getting a bunch of undefined reference messages from 
>> pythonPYTHON_wrap.c when trying to make install it. So if I just want 
>> to use the p2p messaging between Python processes, what are the 
>> minimum amount of files that I need to create a Python queue server to
handle the queues between processes?
>> (i.e. proton.py, cproton.py, etc)
>>
>>
>>
>> Thanks,
>>
>> Taylor
>>
>>
>>


Reply via email to