Building MariaDB on Ubuntu

You are viewing an old version of this article. View the current version here.

Ubuntu build requirements

  • Packaging scripts
  • MariaDB sources
  • The following Ubuntu packages:
    • build-essential dpkg-dev devscripts hardening-wrapper autoconf automake1.9 autotools-dev binutils bison chrpath debhelper defoma doxygen dpatch dvipdfmx fakeroot fontconfig-config g++ g++-4.3 gawk gcc gcc-4.3 gettext ghostscript ghostscript-x gs gsfonts html2text intltool-debian libc6-dev libcroco3 libcups2 libcupsimage2 libfontconfig1 libfontenc1 libfreetype6 libgomp1 libgs8 libice6 libjpeg62 libkpathsea4 libltdl7 libltdl7-dev libmail-sendmail-perl libncurses5-dev libpaper-utils libpaper1 libpng12-0 libpoppler4 libreadline5-dev libsm6 libstdc++6-4.3-dev libsys-hostname-long-perl libtiff4 libtool libwrap0-dev libxaw7 libxfont1 libxmu6 libxpm4 libxt6 linux-libc-dev lmodern m4 make patchutils po-debconf psfontmgr tex-common texlive-base texlive-base-bin texlive-base-bin-doc texlive-common texlive-doc-base texlive-latex-base texlive-latex-base-doc ttf-dejavu ttf-dejavu-core ttf-dejavu-extra xfonts-encodings xfonts-utils zlib1g-dev
MariaDB until 5.3

An easy way to install the above packages is like so:

apt-get build-dep mysql-server-5.1
apt-get install build-essential dpkg-dev devscripts hardening-wrapper

Ubuntu .deb build steps

First setup your build environment.

Package the Debian packages

cd $PACKAGING_WORK
bakery/preheat.sh
cd bakery_{number}
bakery/tarbake51.sh last:1 $MARIA_WORK
bakery/autobake51-deb.sh mariadb-{version_num}-maria-beta-ourdelta{number}.tar.gz

On subsequent packaging builds, you just update your repositories and run above packaging scripts again.

Update the repositories

rm -rf $MARIA_WORK
rm -rf $PACKAGING_WORK
 
cd $MARIA_MASTER
$BZR pull
$BZR branch $MARIA_MASTER $MARIA_WORK
 
cd $PACKAGING_MASTER
$BZR pull
$BZR branch $PACKAGING_MASTER $PACKAGING_WORK

Now you can run the steps under Package the Debian packages again.

Monty Program's latest fixes

SergeyP made some fixes to the build which are not yet in ourdelta's repo. They were pushed into:

lp:maria-captains/ourdelta/ourdelta-mariadb51-2-montyprogram-fixes

At this point, building from that repo produces debs that will install successfully. Feel free to push further fixes into that tree.

Speeding up the build

In order to speed up the build you'll need to make and commit the following change in bakery/autobake-deb.sh

 -export DEB_BUILD_OPTIONS="fulltest"
 +export DEB_BUILD_OPTIONS="nocheck"

After building

After building the packages, it is a good idea to put them in a repository. See the Creating a Debian Repository page for instructions.

MariaDB starting with 5.5

Alternate mechanism for getting source:

$ apt-get source mariadb-server

Use the debian/autobake-deb.sh script from the MariaDB source tree:

$ debian/autobake-deb.sh
MariaDB galera

As apt-source mariadb-galera-server doesn't work use https://downloads.mariadb.org/mariadb-galera/ to retrieve a source tar.gz file.

Use the debian/autobake-deb.sh script from the MariaDB source tree:

$ debian/autobake-deb.sh

Comments

Comments loading...
Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.