User Tools

Site Tools


Build Debian MariaDB packages with readline support

I've been frustrated with the use of editline (libedit) instead of readline that MariaDB is now built with in Debian 11. I have found editline to be buggy: its implementation of Ctrl-R and editing of wrapped lines do not work well, plus Ctrl-W not being mapping to delete a word by default is infuriating!

As I understand it, Debian is no longer able to distribute MariaDB built against readline as the former is GPL2 and the latter GPL3, and apparently the 2 are incompatible for distribution.

The following instructions build a new Debian packages against readline:

apt install build-essential devscripts libreadline-dev
apt build-dep mariadb-client-core-10.5
apt build-dep libreadline-dev
su <unpriv user>
apt source mariadb-client-core-10.5
cd mariadb-10.5-10.5.19/

For Bookworm:

apt install build-essential devscripts libreadline-dev
apt build-dep mariadb
apt build-dep readline
su <unpriv user>
apt source mariadb
cd mariadb-10.11.6/

Edit debian/changelog and add new line at top. Version number should be incremented by adding a letter on the end. E.g.

mariadb-10.5 (1:10.5.19-0+deb11u2c) bullseye; urgency=medium

  * Build against readline instead of libedit

 -- Andy Beverley <>  Tue, 22 Aug 2023 14:08:00 +0100

Edit debian/control and change:




Edit debian/rules and add -DNOT_FOR_DISTRIBUTION=1 below -DWITH_INNODB_SNAPPY=ON. Then run:

For Bookworm edit cmake/aws_sdk.cmake and change NOT_FOR_DISTRIBUTION to NOT_FOR_DISTRIBUTION1 (this is to stop the AWS SDK from being included which causes the build to fail.

debuild -uc -us -b
how_to_rebuild_mariadb_against_readline_in_debian.txt · Last modified: 2024/05/20 22:33 by abeverley