I'm trying to install BlueZ 5.50 on Ubuntu 16.04 because I need MIDI support.

I compiled and installed it as follows:

sudo apt-get install libudev-dev
sudo apt-get install libical-dev
sudo apt-get install libreadline-dev
cd bluez-5.50
./configure --enable-midi
make -j8
sudo make install

The problem is that it doesn't update /usr/sbin/bluetoothd, which is the default version that is started when I reboot.
bluetoothd -v results in 5.37
but ./src/bluetoothd -v results in 5.50.

The only version in the path seems to be the old version:

whereis bluetoothd
bluetoothd: /usr/sbin/bluetoothd /usr/share/man/man8/bluetoothd.8.gz

Why does the install script keep the old version? How can I update everything to the new version? Do I have to?

Right now, MIDI BLE seems to be working, even with the old version of bluetoothd.

1 Answer 1


If you compile a programm from sources and do not use pre-compiled dpkg packages, the dpkg packages will not be touched or changed in any way.

Normally, the configure step instructs the build to use /usr/local as install prefix, instead of /usr. This is to prevent self-compiled stuff to override binaries or other files that are shipped within a dpkg package.
So you bluetoothd binary resides somewhere in /usr/local.

root@localhost:~/bluez-5.50# find /usr/local -name bluetoothd

Unfortunately or luckily, not really sure, the make install does place a systemd service and target in /lib/systemd/system, which overrides the files from the dpkg package bluez.
In my opinion, these two files should go into /etc/systemd/system to prevent e.g. an update of bluez overwriting your manually installed version. To make that, you also should add --with-systemdsystemunitdir=/etc/systemd/system to your configure command and reinstall the new bluez and the old bluez.

root@localhost:~/bluez-5.50# ./configure --enable-midi --with-systemdsystemunitdir=/etc/systemd/system
root@localhost:~/bluez-5.50# make 
root@localhost:~/bluez-5.50# make install
root@localhost:~/bluez-5.50# apt-get install --reinstal bluez

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.