--- a/Makefile.tools
+++ b/Makefile.tools
@@ -16,7 +16,7 @@ client_bluetoothctl_SOURCES = client/mai
 					client/mgmt.h client/mgmt.c
 client_bluetoothctl_LDADD = lib/libbluetooth-internal.la \
 			gdbus/libgdbus-internal.la src/libshared-glib.la \
-			$(GLIB_LIBS) $(DBUS_LIBS) -lreadline
+			$(GLIB_LIBS) $(DBUS_LIBS) -lreadline -lncurses
 endif
 
 if ZSH_COMPLETIONS
@@ -382,7 +382,7 @@ tools_meshctl_SOURCES = tools/meshctl.c
 				tools/mesh-gatt/onoff-model.c
 tools_meshctl_LDADD = gdbus/libgdbus-internal.la src/libshared-glib.la \
 				lib/libbluetooth-internal.la \
-				$(GLIB_LIBS) $(DBUS_LIBS) -ljson-c -lreadline
+				$(GLIB_LIBS) $(DBUS_LIBS) -ljson-c -lreadline -lncurses
 
 EXTRA_DIST += tools/mesh-gatt/local_node.json tools/mesh-gatt/prov_db.json
 endif
@@ -401,7 +401,7 @@ tools_mesh_cfgclient_SOURCES = tools/mes
 				mesh/crypto.h mesh/crypto.c
 
 tools_mesh_cfgclient_LDADD = lib/libbluetooth-internal.la src/libshared-ell.la \
-						$(ell_ldadd) -ljson-c -lreadline
+						$(ell_ldadd) -ljson-c -lreadline -lncurses
 
 bin_PROGRAMS +=  tools/mesh-cfgtest
 
@@ -507,7 +507,7 @@ noinst_PROGRAMS += tools/btmgmt tools/ob
 tools_obex_client_tool_SOURCES = $(gobex_sources) $(btio_sources) \
 						tools/obex-client-tool.c
 tools_obex_client_tool_LDADD = lib/libbluetooth-internal.la \
-			       src/libshared-glib.la $(GLIB_LIBS) -lreadline
+			       src/libshared-glib.la $(GLIB_LIBS) -lreadline -lncurses
 
 tools_obex_server_tool_SOURCES = $(gobex_sources) $(btio_sources) \
 						tools/obex-server-tool.c
@@ -518,16 +518,16 @@ tools_bluetooth_player_SOURCES = tools/b
 				client/player.c
 tools_bluetooth_player_LDADD = gdbus/libgdbus-internal.la \
 				src/libshared-glib.la \
-				$(GLIB_LIBS) $(DBUS_LIBS) -lreadline
+				$(GLIB_LIBS) $(DBUS_LIBS) -lreadline -lncurses
 
 tools_obexctl_SOURCES = tools/obexctl.c
 tools_obexctl_LDADD = gdbus/libgdbus-internal.la src/libshared-glib.la \
-			$(GLIB_LIBS) $(DBUS_LIBS) -lreadline
+			$(GLIB_LIBS) $(DBUS_LIBS) -lreadline -lncurses
 
 tools_btmgmt_SOURCES = tools/btmgmt.c src/uuid-helper.c client/display.c \
 			client/mgmt.c
 tools_btmgmt_LDADD = lib/libbluetooth-internal.la src/libshared-mainloop.la \
-				-lreadline
+				-lreadline -lncurses
 if DEPRECATED
 noinst_PROGRAMS += attrib/gatttool
 
@@ -537,7 +537,7 @@ attrib_gatttool_SOURCES = attrib/gatttoo
 				attrib/utils.c src/log.c client/display.c \
 				client/display.h
 attrib_gatttool_LDADD = lib/libbluetooth-internal.la \
-			src/libshared-glib.la $(GLIB_LIBS) -lreadline
+			src/libshared-glib.la $(GLIB_LIBS) -lreadline -lncurses
 
 endif
 endif
@@ -583,5 +583,5 @@ tools/btpclient.$(OBJEXT): src/libshared
 
 tools_btpclientctl_SOURCES = tools/btpclientctl.c client/display.c
 tools_btpclientctl_LDADD = src/libshared-mainloop.la src/libshared-glib.la \
-				lib/libbluetooth-internal.la -lreadline
+				lib/libbluetooth-internal.la -lreadline -lncurses
 endif