最近在調(diào)試車牌識(shí)別EasyPR,直接使用Vim編寫也是可以矿咕,但是對于很多習(xí)慣用IDE編寫程序的碼農(nóng)來講丐怯,Qt是linux下編程的一個(gè)好工具,本文其實(shí)是結(jié)合Ogre Wiki的Qt Tutorials[1]和網(wǎng)上的相關(guān)blog[2-4]來做個(gè)小結(jié)泌类。
一 、打開項(xiàng)目
-
按以下順序打開項(xiàng)目:
【Qt Creator】→【File 】→【Open File or Project..】(或者快捷鍵Ctrl+O)底燎,打開對應(yīng)的“CMakeLists.txt”文件,如圖所示:
打開“CMakeLists.txt” 選擇編譯路徑
按照1.后會(huì)彈出以下窗口刃榨,就是選擇編譯生成的路徑,由于EasyPR的編譯腳本如下所示:
#!/usr/bin/env bash
rm -rf build
mkdir build
cd build
cmake ..
make
所以我就沒有使用Qt Creator給出的默認(rèn)路徑双仍。
/home/robot/workspace/EasyPR-build
而是改成:
/home/robot/workspace/EasyPR/build
對于其他CMakeList.txt項(xiàng)目的導(dǎo)入枢希,也根據(jù)需求配置路徑,免得后面出現(xiàn)問題朱沃。
-
運(yùn)行CMake
對于EasyPR項(xiàng)目苞轿,直接點(diǎn)擊【Run CMake】即可完成編譯茅诱,如下圖所示:
Run CMake EasyPR
CSDN的一個(gè)博主deng_sai指出[2]:
此處可能點(diǎn)擊Run CMake后Qt Creator 沒反應(yīng)“嶙洌可能是Qt Creator的CMake的執(zhí)行命令的路徑?jīng)]指定瑟俭。
按序點(diǎn)擊:Projects->Manage Kits...->Build & Run -> CMake(可以指定為cmake,也可直接指定cmake-gui契邀。不過假如首先指定的是cmake-gui摆寄,run cmake后可能無法顯示導(dǎo)入的工程文件,需要再次指定為cmake后再一次run cmake)
點(diǎn)擊【Finish】
項(xiàng)目的文件結(jié)構(gòu)已經(jīng)顯示在Qt Creator中了:
- 修改項(xiàng)目名
可以通過修改“CMakeLists.txt”中的
project(easypr)
來修改Qt Creator中顯示的項(xiàng)目名坯门,如改為:
project(EasyPR)
保存后右鍵點(diǎn)擊項(xiàng)目easypr [master]后點(diǎn)擊【Run CMake】椭迎,再執(zhí)行步驟3. 的【Run CMake】,然后【Finish】返回到Qt Creator的主界面田盈。
PS:完成以上步驟1-3后畜号,項(xiàng)目已經(jīng)編譯完成,會(huì)有可執(zhí)行文件在CMakeList.txt中指定的路徑中了允瞧,如下:
# MESSAGE(${CMAKE_BINARY_DIR}/../)
SET_TARGET_PROPERTIES(${EXECUTABLE_NAME} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/../")
所以就是在“build”所在的目錄中简软。
可能有的項(xiàng)目會(huì)沒有編譯,所以[1]中建議進(jìn)入導(dǎo)入后的項(xiàng)目所在目錄后再終端執(zhí)行:
make && make install
對于我們編程來說述暂,我建議只執(zhí)行make
指令痹升。
二、配置項(xiàng)目的執(zhí)行環(huán)境
完成上述步驟后畦韭,已經(jīng)生成了項(xiàng)目的可執(zhí)行文件疼蛾,實(shí)際上已經(jīng)可實(shí)行綠色箭頭的【Run】,但是在首次運(yùn)行中艺配,會(huì)因?yàn)樵赒t中沒有配置好執(zhí)行的路徑察郁,可能會(huì)運(yùn)行出錯(cuò),需要執(zhí)行如下操作转唉,
打開Qt Creator主界面左邊的【Project】后皮钠,選擇【Build & Run】選項(xiàng)卡,可以修改“Run”下的“Arguments”和“Working directory”赠法,并在“Run in Terminal”后打鉤麦轰,如EasyPR項(xiàng)目,我作出如下修改:
三砖织、小結(jié)
到此為止款侵,已經(jīng)能在Qt中運(yùn)行可執(zhí)行文件了。但是Qt本身對中文的支持并不完美侧纯,現(xiàn)在對我項(xiàng)目影響不大新锈,暫時(shí)忽略。歡迎大神們補(bǔ)充茂蚓。
【參考文獻(xiàn)】
[1] Setting Up An Application With QtCreator - Linux
[2] Qt Creator 根據(jù)已有的CMakeList.txt創(chuàng)建CMake工程
[3] 用 cmake 構(gòu)建Qt工程(對比qmake進(jìn)行學(xué)習(xí))
[4] 學(xué)習(xí)用CMake來編寫Qt程序
[5] qmake 教程
[6] cmake 添加頭文件目錄壕鹉,鏈接動(dòng)態(tài)剃幌、靜態(tài)庫
[7] CMAKE的使用
[8] CmakeList的編寫和參數(shù)詳解
[9] ROS編程中如何配置CMakelists.txt來調(diào)用外部的動(dòng)態(tài)鏈接庫(.so文件)
[10] CMake常見指令總結(jié)聋涨,修改的更加容易理解