Here is how I build OpenAMQ and Zyre from the latest source packages on www.openamq.org. I installed Microsoft's free Visual C Express, which is a complete C/C++ compiler and Visual Studio for Windows. It is equivalent to Visual C/C++ 2008.
My machine has a bunch of GNU tools installed on the path. So this is a command-line session. You can do the same with the right clicks.
set IBASE_HOME=C:\ibase
set PATH=C:\ibase\debug\bin:%PATH%
"C:\Program Files\Microsoft Visual Studio 9.0\VC\vcvarsall.bat"
wget http://download.imatix.com/openamq/unstable/OpenAMQ-1.4b0.zip
unzip OpenAMQ-1.4b0.zip
cd OpenAMQ-1.4b0\openamq\windows
msbuild OpenAMQ.sln /t:Rebuild /p:Configuration=Debug
- Set the IBASE_HOME environment variable, which is where we'll be installing the built executables, libaries, and include files. Clickety-click: set IBASE_HOME in the System control panel:
set IBASE_HOME=C:\ibase
- Set the PATH so that we can find the OpenAMQ and Zyre binaries once they've been installed. Clickety-click: add C:\ibase\debug to your system's environment. However… this means you can't install debug versions of the software. It's better to set the path in your command window. I'll explain how managing release and debug builds.
set PATH=C:\ibase\debug\bin:%PATH%
- Set the Visual Studio environment variables. Clickety-click: start Visual Studio (in my case, VCExpress):
"C:\Program Files\Microsoft Visual Studio 9.0\VC\vcvarsall.bat"
- Get the source package from iMatix.com. Clickety-click: go to www.openamq.org and click the proper download link:
wget http://download.imatix.com/openamq/unstable/OpenAMQ-1.4b0.zip
- Unpack the source package. Clickety-click: use the Windows explorer to unzip the downloaded package:
unzip OpenAMQ-1.4b0.zip
- Go to the right place. Clickety-click: open the Windows Explorer into the OpenAMQ-1.4b0\openamq\windows directory:
cd OpenAMQ-1.4b0\openamq\windows
- Rebuild OpenAMQ and company. Clickety-click: double-click on the OpenAMQ.sln file, then choose the 'Debug' configuration from the drop-down in the top menu, then click the Build icon:
msbuild openamq.sln /t:Rebuild /p:Configuration=Debug
- Test that OpenAMQ has been built. Clickety-click: open a Console box and type this command:
amq_server -v
Edit | Attachments | Tags | Source | Print
|
Table of Contents
|
Building from the Windows source kit (17 Feb 2009 20:57)
Managing Release and Debug builds (17 Feb 2009 20:56)
Useful free tools to install (17 Feb 2009 20:53)
Installing the executables (16 Feb 2009 10:41)

Good article, thanks a lot for your explanations!
…and in order to build binaries running with the multithreaded dll runtimes, just create new
configurations by copying existing one (Debug/Release), switch the runtime from actual
static runtimes (/MT) to the dynamic dll runtimes (/MD) on each project and rebuild all from
the "solution". If you prefer to (re)build all from the command line :
…and if you called your new config "DebugDll" …
msbuild openamq.sln /t:Rebuild /p:Configuration=DebugDll
Why this dll runtimes configurations have not been added in the "solution"?
This is a great idea. I think actually we'll switch completely to the DLL runtime since that's more compatible with other projects like APR. Would this work for you?
Portfolio
Hi pieterh,
Well static libraries have their beauty also ;-) !…
…yes it works fine for me. I tested both client/server with/without dll runtimes, and with
clients or server in debian, all works fine. Please note I put "DebugDll" or "ReleaseDll"
as the names for my configs, I think it should be better to have naming patterns more
sophisticated!!! like "boost" libraries names or others libs!…
I personally think having a build that is linked with DLL runtime is very important.
For example, I use boost::asio for threading model and potentially plan to run openAMQ server within one of the threads (or the other way around — I have not studies this enough yet)
— but the point is most big and important C++ windows libraries that are likely to be used when developing OpenAMQ servers are using DLL runtime.
Yeah.. static libraries can be hard to work with sometimes. DLL runtime would be great.. Was wondering if theres any effort towards this direction
I need precompiled iBase (gsl.exe) for windows. I don't use C (and probably won't). Where from it can be downloaded? Thanks.
You can, actually, install VCExpress and rebuild openamq, and get GSL/4 (gsl.exe). Quite straight forward.
Portfolio