Compiling instructions ======================= Make sure you have installed the following packages: autoconf automake gcc-c++ To compile you will need to obtain the MySQL source code. MySQL source code is available at: http://dev.mysql.com/downloads/mysql/ ==== MySQL 5.1 ====== Extract the MySQL source code in the root directory. For example: unzip zip-sources/mysql-5.1.40.zip Then run the following command: cd mysql-5.1.40 CXX=gcc ./configure cd include make Then goto top dir and run: chmod +x bootstrap.sh ./bootstrap.sh This will create configure script. Then run: CXX='gcc -static-libgcc' CC='gcc -static-libgcc' ./configure --with-mysql=mysql-5.1.40 ==== MySQL 5.5 / 5.6 / 5.7 ====== Extract MySQL 5.5, 5.6, or 5.7 source code go to mysql-src dir and run: cd mysql-5.5.x or mysql-5.6.x or mysql-5.7.x cmake . make Note: MySQL 5.7 requires Boost 1.59. You may have to install that first (see www.boost.org). In such a case, use: cmake -DWITH_BOOST=/path/to/boost_1_59_0 . Note: For MariaDB use: cmake . -DBUILD_CONFIG=mysql_release Note: For Percona`s MySQL use: cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_CONFIG=mysql_release -DWITH_BOOST=boost_1_59_0 . Note: to speed things up it is possible to build just the following directories: libservices extra back to working dir and run: chmod +x bootstrap.sh ./bootstrap.sh CXX='gcc -static-libgcc' CC='gcc -static-libgcc' ./configure --with-mysql=mysql-5.x.x --with-mysql-libservices=mysql-5.x.x/libservices/libmysqlservices.a make Note: For Percona`s MySQL define also PERCONA_BUILD=true variable, like "PERCONA_BUILD=true ./configure..." ==== Compiling with make ===== Go to top source dir and run: make Plugin will be compiled at: src/.libs/libaudit_plugin.so Some documentation about configure command for mysql: http://dev.mysql.com/doc/refman/5.1/en/source-configuration-options.html ==== MariaDB 10.2.10 ====== 1. Firstly checkout the source code:- - svn co https://beasource3.corp.nai.org/svn/projects/DBSec-MySQL audit_plugin_mysql 2. cd audit_plugin_mysql 3. unzip zip-sources/mariadb-10.2.10.zip 4. cd mariadb-10.2.10 5. CC=gcc CXX=g++ cmake . -DBUILD_CONFIG=mysql_release -DGNUTLS_INCLUDE_DIR=./zip-sources/mariadb-10.2.10/gnutls-3.3.24/64b/include -DGNUTLS_LIBRARY=./zip-sources/mariadb-10.2.10/gnutls-3.3.24/64b/lib 6. cd mariadb-10.2.10/libservices 7. make 8. cd ../extra 9. make 10. cd ../.. 11. chmod +x bootstrap.sh 12. ./bootstrap.sh 13. CXX='gcc -static-libgcc' CC='gcc -static-libgcc' MYSQL_AUDIT_PLUGIN_VERSION=1.1.13 MYSQL_AUDIT_PLUGIN_REVISION=`svn info|grep ^Revision|awk -F ": " '{print $2}'` ./configure --enable-debug=no --with-mysql=mariadb-10.2.10 --with-mysql-libservices=mariadb-10.2.10/libservices/libmysqlservices.a 14. gmake <======== This will create the plugin "libaudit_plugin.so"