activemq-artemis/artemis-native
Otavio Rodolfo Piske 584a610f6a ARTEMIS-2260 Fixes a potential NULL pointer dereference on the thin library
If the code fails to allocate native memory for the error message, it
will still perform the call to strcpy, which will result in a
segmentation fault to occur. This may cause the JVM to shutdown abruptly
potentially causing the original root cause to be hidden.
2019-02-22 10:10:28 -05:00
..
bin ARTEMIS-2037 Adding 32 bits back on libaio 2018-08-17 12:52:38 -04:00
src ARTEMIS-2260 Fixes a potential NULL pointer dereference on the thin library 2019-02-22 10:10:28 -05:00
CMakeLists.txt ARTEMIS-150 moving to cmake will fix nar/jar dependency issues and fix SBT 2015-07-15 20:29:36 -04:00
README More rename updates 2015-04-30 09:07:20 -05:00
compile-native.sh ARTEMIS-150 moving to cmake will fix nar/jar dependency issues and fix SBT 2015-07-15 20:29:36 -04:00
pom.xml ARTEMIS-2037 Adding 32 bits back on libaio 2018-08-17 12:52:38 -04:00

README

This is a simple tutorial on compiling libActiveMQLibAIO.so

DEPENDENCIES

Make sure you install these packages:

- G++ (yum install gcc-c++ or aptitude install g++)
- Gcc (yum insall gcc or aptitude install gcc)
- JDK (full JDK)


LIBAIO INFORMATION

libaio is part of the kernel project. The library makes system calls on the kernel layer.

This is the project information:

Git Repository:  git://git.kernel.org/pub/scm/libs/libaio/libaio.git
Mailing List:    linux-aio@kvack.org


STEPS TO BUILD

1. Make sure you have JAVA_HOME defined, and pointing to the root of your JDK:

Example:

 $> export JAVA_HOME=/usr/share/jdk1.7


2. Call compile-native.sh. Bootstrap will call all the initial scripts you need
 $>  ./compile-native.sh

if you are missing any dependencies, autoconf would tell you what you're missing.


COMPILED FILE

The produced file will be under the ./target/nar (example: ./target/nar/artemis-native-1.0.0-amd64-Linux-gpp-jni/lib/amd64-Linux-gpp/jni/libartemis-native-1.0.0.so)
and you will have to rename it manually under ./bin following the appropriate pattern.


DOCUMENTATION

The User Manual, chapter 38 (Libaio Native Libraries) will provide more details about our native libraries on libaio.