mirror of https://github.com/apache/activemq.git
110 lines
4.3 KiB
Plaintext
110 lines
4.3 KiB
Plaintext
|
--------------------------------------------------------------------------
|
||
|
ActiveMQ CPP Library - Version 0.0.1
|
||
|
--------------------------------------------------------------------------
|
||
|
|
||
|
This library provides a JMS like interface to an ActiveMQ broker in c++.
|
||
|
|
||
|
Currently the Library only supports the Stomp protocol, future versions
|
||
|
will contain support for openwire.
|
||
|
|
||
|
UNIT Tests
|
||
|
--------------------------------------------------------------------------
|
||
|
|
||
|
The package contains a complete set of cppunit tests. In order for you
|
||
|
to build an run the tests, you will need to download and install the
|
||
|
cppunit suite.
|
||
|
|
||
|
http://cppunit.sourceforge.net/cppunit-wiki
|
||
|
|
||
|
or on Fedora type
|
||
|
|
||
|
yum install cppunit*
|
||
|
|
||
|
Make sure that the path to the installed cpp unit library and includes is
|
||
|
visible in your current shell before you try building the tets.
|
||
|
|
||
|
Integration Tests
|
||
|
--------------------------------------------------------------------------
|
||
|
|
||
|
The library also contains a set of tests that are run against a real AMQ
|
||
|
broker. Running these without a broker will result in failed tests.
|
||
|
The tests currently hardcode the broker url to be tcp://127.0.0.1:61613,
|
||
|
you can change this by changing the declaration in IntegrationCommon.cpp
|
||
|
in the test-integration src tree.
|
||
|
|
||
|
Notes for Windows users
|
||
|
--------------------------------------------------------------------------
|
||
|
|
||
|
The builds support using the GNU compiler on Windows, we used the MinGW
|
||
|
package. There is an issues still outstanding with this in that the sockets
|
||
|
break for no reason when built this way. We therefore suggest that you
|
||
|
stick with using the MSVC compiler when on windows.
|
||
|
|
||
|
There are a couple or things that you will need to setup to ensure that the
|
||
|
MSVC compile succeeds.
|
||
|
|
||
|
* You need to download and install the Platform SDK if you don't have it
|
||
|
installed already.
|
||
|
* Ensure that the path to you MSVC install is set in the PATH env variable.
|
||
|
you can tests this buy typing cl.exe at the command line, if you get an
|
||
|
error complaining that its not found, then setup you PATH correctly.
|
||
|
* Set the INCLUDE env variable to include the path to your MSVC includes,
|
||
|
and the platform SDK includes.
|
||
|
|
||
|
i.e. INCLUDE = D:\Program Files\Microsoft Visual Studio 8\VC\include;D:\Program Files\Microsoft Platform SDK\Include
|
||
|
|
||
|
* Set the LIB env variable to include the path to your MSVC libs, and the
|
||
|
Platform SDK libs.
|
||
|
|
||
|
i.e. LIB = D:\Program Files\Microsoft Visual Studio 8\VC\lib;D:\Program Files\Microsoft Platform SDK\Lib
|
||
|
|
||
|
Maven Builds
|
||
|
--------------------------------------------------------------------------
|
||
|
|
||
|
The pacakge currently supports building the library only using maven.
|
||
|
|
||
|
The Mojo Native plugin (from the MOJO maven plugins site) is required.
|
||
|
|
||
|
http://mojo.codehaus.org/maven-native/native-maven-plugin/introduction.html
|
||
|
|
||
|
On the windows platform is was necessay to download the source for this
|
||
|
plugin and build it locally, this shouldn't be necessary on non-windows
|
||
|
platforms, but if you have problems, try that first.
|
||
|
|
||
|
You can get the latest source via subversion:
|
||
|
|
||
|
svn co https://svn.codehaus.org/mojo/trunk/mojo/maven-native
|
||
|
|
||
|
Once you have downloaded the source, install the plugin into your local
|
||
|
repository via: mvn install
|
||
|
|
||
|
Using Maven with activemq-cpp
|
||
|
|
||
|
* type mvn package
|
||
|
|
||
|
This will build the library using the default target for the platform
|
||
|
you are on, which is release, and the gnu compiler for unix platforms, or
|
||
|
the MSVC compiler on windows platforms.
|
||
|
|
||
|
Makefile Builds
|
||
|
--------------------------------------------------------------------------
|
||
|
|
||
|
The Makefile provided requires some env variable to be set
|
||
|
|
||
|
OSTYPE: This is the OS you are on and is reflected in the names of the
|
||
|
makefiles. Currently your choices are Linux or Windows, both use
|
||
|
the GNU compiler.
|
||
|
|
||
|
CONFIG: This is the build Mode you want to execute, i.e. debug or release.
|
||
|
|
||
|
MAKESUPPORT_HOME: Path to the folder where the Makefiles are stored.
|
||
|
|
||
|
There are three targets available in the Makefile, lib, test, and integration
|
||
|
whose output is fairly obvious.
|
||
|
|
||
|
Using the Makefile:
|
||
|
|
||
|
* type make to build all targets: lib, tests and integration
|
||
|
* type make < Target Name > to build only the target you need.
|
||
|
* type make clean to remove all of the object, library, and executable files.
|