[Maria-developers] Patch
Added generic build instructions from KB to INSTALL-SOURCE diff --git a/INSTALL-SOURCE b/INSTALL-SOURCE index 32cfa97..809d69b 100644 --- a/INSTALL-SOURCE +++ b/INSTALL-SOURCE @@ -1,3 +1,86 @@ -Instructions for building MariaDB can be found at: +The instructions in this file will help you compile MariaDB from source. Links to more complete instructions for specific platforms can be found at https://kb.askmonty.org/en/compiling-mariadb-from-source/ +First, get a copy of the MariaDB source. + +Next, prepare your system to be able to compile the source. + +If you don't want to run MariaDB as yourself, then you should create a mysql user. The example below uses this user. + +MariaDB starting with 5.5 + +Using cmake + +MariaDB 5.5 and above is compiled using cmake. You can configure your build simply by running cmake without any special options, like +cmake . +but if you want it to be configured exactly as we do for our releases, use +cmake . -DBUILD_CONFIG=mysql_release +All cmake configuration options for MariaDB can be displayed with: +cmake . -LH +To build and install MariaDB after running cmake use +make +sudo make install +If the commands above fail, you can enable more compilation information by doing: +make VERBOSE=1 +MariaDB until 5.3 +Building MariaDB with the BUILD scripts +The easiest way of building MariaDB would be to use the appropriate BUILD script that matches your configuration. For example: +cd $maria-source-dir # ex: ~/repos/maria/trunk + +BUILD/compile-pentium64-max # Build for intel/amd 64 bit with all options +BUILD/compile-pentium-max # Build for 32 bit pentum with all options + +BUILD/compile-pentium64-debug-max # Build for intel/amd 64 bit with debugging +BUILD/compile-pentium64-valgrind-max # Build for testing with valgrind + +There are many different BUILD scripts which cover many different configurations and processor architectures. +To see what a build scripts does, you can run it with the --print option. +After building MariaDB with a BUILD script, install MariaDB with: +sudo make install +Building MariaDB Manually +If there is no appropriate script, you can also execute the build commands directly: + +cd $maria-source-dir # ex: ~/repos/maria/trunk +BUILD/autorun.sh +./configure +make +sudo make install +Max builds configure line +The following configure line is the one we used to use in the -max builds (which includes all features we think are relevant). This is also the configure line we use with most of our binary builds: + +./configure --prefix=/usr/local/mysql --enable-assembler \ + --with-extra-charsets=complex --enable-thread-safe-client --with-big-tables \ + --with-plugin-maria --with-aria-tmp-tables --without-plugin-innodb_plugin \ + --with-mysqld-ldflags=-static --with-client-ldflags=-static --with-readline \ + --with-ssl --with-plugins=max-no-ndb --with-embedded-server --with-libevent \ + --with-mysqld-ldflags=-all-static --with-client-ldflags=-all-static \ + --with-zlib-dir=bundled --enable-local-infile + +For a full list of options, you can do: + +./configure --help + +Starting MariaDB for the first time +After installing MariaDB (using sudo make install), but prior to starting MariaDB for the first time, one should: + +ensure the directory where you installed MariaDB is owned by the mysql user (if the user doesn't exist, you'll need to create it) +run the mysql_install_db script to generate the needed system tables +Here is an example: + +# The following assumes that the 'mysql' user exists and that we installed MariaDB + +# in /usr/local/mysql +chown -R mysql /usr/local/mysql/ +scripts/mysql_install_db --user=mysql +/usr/local/mysql/bin/mysqld_safe --user=mysql & + + +Testing MariaDB + +If you want to test your compiled MariaDB, you can do either of: + +make test +or + +cd mysql-test ; ./mysql-test-run --force +Each of the above are run from the source directory. There is no need to 'sudo make install' MariaDB prior to running them. \ No newline at end of file
participants (1)
-
Blessing Atie