**
最近工作中開始使用 cmake 來編譯 qt 工程,記錄一下某個模組需要新增依賴和鏈結庫的方法。大概有兩種,一種是使用qt5(命名空間)下的某個包來新增,另一種是macro(巨集) 的方式。下面是乙個官方生成的cmakelists.txt:
cmake_minimum_required
(version 3.5
)project
(tremble languages cxx)
set(cmake_include_current_dir on)
set(cmake_autouic on)
set(cmake_automoc on)
set(cmake_autorcc on)
set(cmake_cxx_standard 11
)set
(cmake_cxx_standard_required on)
# qtcreator supports the following variables for android, which are identical to qmake android variables.
# check for more information.
# they need to be set before the find_package(qt5 ...) call.
#if(android)
# set(android_package_source_dir "$/android")
# if (android_abi strequal "armeabi-v7a")
# set(android_extra_libs
# $
/path/to/libcrypto.so
# $
/path/to/libssl.so)
# endif()
#endif()
find_package
(qt5 components widgets required)
if(android)
add_library
(tremble shared
main.cpp
widget.cpp
widget.h
widget.ui
)else()
add_executable
(tremble
main.cpp
widget.cpp
widget.h
widget.ui
)endif()
target_link_libraries
(tremble private qt5::widgets)
如果我們要新增乙個qtcpsocket的標頭檔案,這時候就必須新增相應的包和鏈結庫,檢視幫助文件可知我們需要新增乙個network的模組,使用qmake就簡單的copy上去
完事,但使用cmake需要稍微改動一下的,如下:
即在幫助文件找到某個標頭檔案需要新增的某塊,將該單詞首字元大寫,如果有可能兩個單詞的組合詞,則需要相應首字元大寫,例如quickwidgets對應quickwidgets、新增鏈結庫qt5::quickwidgets,再進行新增就歐克。
Qt之ini配置檔案
ini檔案由節 鍵 值組成。直接上ini檔案分析 如下為某個ini檔案的內容 plc ip 127.0.0.1 port 502 port open 2222把中括號 包含的部分稱為節,所以 plc 為第乙個節 port 為第二個節 每個節由鍵和值組成 可以是多個 所以 ip 為 plc 的第乙個鍵...
QT 配置檔案操作
include qsettings setting config.ini qsettings iniformat 判斷是否存在配置檔案,不存在則新建config.ini 判斷是否存在這樣的鍵值對hostname,port,username,passwordif setting.contains ho...
qt 讀寫配置檔案 ini
ini 檔案是 initialization file 的縮寫,即初始化檔案。除了windows 現在很多其他作業系統下面的應用軟體也有.ini 檔案,用來配置應用軟體以實現不同使用者的要求。一般不用直接編輯這些 ini 檔案,應用程式的圖形介面即可操作以實現相同的功能。它可以用來存放軟體資訊,登錄...