diff --git a/CMakeLists.txt b/CMakeLists.txt
index 4a2bdc01a769310ac9279678750440fa3600d263..c27294c5539158cefb6d2abca8c71edf676cc0b1 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -55,6 +55,8 @@ find_package(Qt6 REQUIRED COMPONENTS Core Gui Widgets)
 
 ## Installation settings.
 
+include(GNUInstallDirs)
+
 configure_file("qcr.pc.in" "qcr.pc" @ONLY)
 install(
     FILES "${CMAKE_CURRENT_BINARY_DIR}/qcr.pc"
diff --git a/QCR/CMakeLists.txt b/QCR/CMakeLists.txt
index 8a669e06718f7ba4047d16960ea02f531fc6a28b..d697957b7ac8990044dadb970450c80945d9f033 100644
--- a/QCR/CMakeLists.txt
+++ b/QCR/CMakeLists.txt
@@ -52,10 +52,10 @@ set_target_properties(
 install(
     TARGETS ${lib}
     EXPORT QCRTargets
-    LIBRARY DESTINATION lib
-    RUNTIME DESTINATION lib
-    ARCHIVE DESTINATION lib
-    )
+    RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+    LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+    ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+    COMPONENT Libraries)
 
 set(include_dest include/QCR)
 file(MAKE_DIRECTORY ${include_dest})