Istruzioni generiche per il build
Le istruzioni in questa pagina spiegazione come compilare MariaDB dai sorgenti. Link a istruzioni più complete per piattaforme specifiche si trovano nella pagina Compilare MariaDB dai sorgenti.
Prima occorre ottenere una copia dei sorgenti di MariaDB.
Poi si prepari il sistema, per metterlo in grado di compilare i sorgenti. Un modo semplice per farlo, se si usa Linux, è eseguire i seguenti comandi (a seconda della propria distribuzione):
sudo apt-get build-dep mysql-server # su distribuzioni basate su Debian o Ubuntu sudo yum-builddep mysql # su Fedora sudo zypper si -d mysql-community-server # su OpenSUSE
Nota: sulle distribuzioni basate su Debian, si potrebbe ricevere un errore "You must put some 'source' URIs in your sources.list". Per evitarlo, assicurarsi che /etc/apt/sources.list contenga i repository dei sorgenti.
Su Debain Squeeze:
deb http://ftp.debian.org/debian squeeze main contrib deb http://security.debian.org squeeze/updates main contrib deb-src http://ftp.debian.org/debian squeeze main contrib deb-src http://security.debian.org squeeze/updates main contrib
Si faccia riferimento alla documentazione della propria distribuzione per sapere come eseguire questa operazione sul proprio sistema.
Dopo aver modificato il file sources.list, si esegua:
sudo apt-get update
...seguito dal comando summenzionato build-dep
.
Nota: Su openSUSE il repository dei pacchetti dei sorgenti potrebbe essere disabilitato. Il seguente comando lo abilita:
sudo zypper mr -er repo-source
Dopo averlo abilitato, si può eseguire il comando zypper per installare le dipendenze.
Se non si vuole eseguire MariaDB con il proprio utente, si può usare un utente per mysql
. L'esempio sotto usa questo utente.
Now cd into the source directory and execute the appropriate BUILD script that matches your configuration:
cd $maria-source-dir # es: ~/repos/maria/trunk BUILD/compile-pentium64-max # Build per intel/amd 64 con tutte le opzioni BUILD/compile-pentium-max # Build per pentium 32 bit con tutte le opzioni BUILD/compile-pentium64-debug-max # Build per intel/amd 64 bit con debugging BUILD/compile-pentium64-valgrind-max # Build per testing con valgrind
Per vedere cosa fanno gli script di build, si può eseguirli con l'opzione --print
.
Se non esiste uno script appropriato, si può anche eseguire configure
direttamente:
cd $maria-source-dir # es: ~/repos/maria/trunk BUILD/autorun.sh ./configure --with-plugin-xtradb make sudo make install
Se si sta utilizzando MariaDB 5.5 o più recente (versioni che usano cmake) e si riscontrano problemi nel compilare, è possibile ottenere maggiori informazioni di compilazione con:
make VERBOSE=1
Avviare MariaDB per la prima volta
Prima di avviare MariaDB per la prima volta:
- Accertarsi che la directory appartenga all'utente mysql (se l'utente non esiste, occorre crearlo)
- Si esegua lo script
mysql_install_db
per generare le tabelle di sistema
Ecco un esempio:
# Il seguente esempio presuppone che l'utente 'mysql' esista # e che MariaDB sia installato in /usr/local/mysql chown -R mysql /usr/local/mysql/ scripts/mysql_install_db --user=mysql /usr/local/mysql/bin/mysqld_safe --user=mysql &
configure sulle build max
Il seguente comando configure line è quello che viene utilizzato per creare le build -max (che includono tutte le caratteristiche ritenute rilevanti). E' anche il comando configure utilizzato per la maggior parte delle build binarie:
./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
Per visualizzare la lista completa delle opzioni:
configure --help
Se si vuole testare MariaDB compilato, si può eseguire uno di questi due comanndi:
make test
cd mysql-test ; mysql-test-run --force
NOTA: Se si esegue un test o il debug di MariaDB è meglio eseguirlo da dove si trova il codice sorgente, invece di installarlo con 'make install'. In tal caso, si veda la pagina Eseguire MariaDB dalla directory dei sorgenti.