diff --git a/CMake/CMakeLists_root.txt b/CMake/CMakeLists_root.txt
index e7232fa4aa5931c2eed1d7eb80c9b9bd0768f10f..3ea58e86b30cff9e7eda75ad8cdbef3ad83eeab5 100644
--- a/CMake/CMakeLists_root.txt
+++ b/CMake/CMakeLists_root.txt
@@ -70,12 +70,15 @@ find_package(LibXml2 REQUIRED)
 find_package(cppunit REQUIRED)
 find_package(tclap REQUIRED)
 find_package(readline REQUIRED)
-find_package(Qt5Widgets)
-find_package(Qt5Xml)
-find_package(Threads)
-find_package(Graphviz)
-find_package(Qt5 REQUIRED COMPONENTS Core Widgets Xml)
-find_package(jsoncpp REQUIRED)
+
+if(NOT ALIB_NOGUI)
+    find_package(Qt5Widgets)
+    find_package(Qt5Xml)
+    find_package(Threads)
+    find_package(Graphviz)
+    find_package(Qt5 REQUIRED COMPONENTS Core Widgets Xml)
+    find_package(jsoncpp REQUIRED)
+endif()
 
 
 # Cpp version
@@ -89,6 +92,12 @@ set(ALIB_MODULES_EXE
         {alib_modules_exe}
         )
 
+if (ALIB_NOGUI)
+    list (REMOVE_ITEM ALIB_MODULES_LIB "alib2gui")
+    list (REMOVE_ITEM ALIB_MODULES_EXE "agui2")
+endif ()
+
+
 ##################
 # Register modules
 foreach (module ${{ALIB_MODULES_LIB}} ${{ALIB_MODULES_EXE}})