Qt Creator支持中文,啟動(dòng)速度比Eclipse、Netbeans更快,界面也更美觀,跟輸入法Fcitx協(xié)作良好(光標(biāo)跟隨)。
你既可以把Qt Creator當(dāng)代碼編輯器作為vim輔助,好處在于Qt Creator能夠自動(dòng)parse項(xiàng)目,形成友好快速的智能提示,而且你也同樣可以使用Qt Creator里面的gdb前端(上圖)和valgrind前端(高清大圖) 對(duì)項(xiàng)目進(jìn)行調(diào)試和內(nèi)存分析,不過(guò)Makefile就要自己寫(xiě)或者用autotools生成了,這對(duì)于使用vim進(jìn)行編程的同學(xué)來(lái)說(shuō),應(yīng)該是輕車(chē)熟路的。差點(diǎn)忘了,連續(xù)按兩次Alt+V快捷鍵即可進(jìn)入VIM編輯模式(FakeVim),這應(yīng)該很能吸引vim用戶(hù)。當(dāng)然,Qt Creator默認(rèn)支持主流版本控制系統(tǒng)git/hg/svn等。
你也可以把Qt Creator當(dāng)作IDE,這時(shí)可以作為Eclipse CDT、 Netbeans for C++這些重量級(jí)IDE的一個(gè)輕量替代品。你可以直接在Qt Creator的向?qū)Ю镄陆ㄒ粋€(gè)非Qt使用CMake自動(dòng)構(gòu)建的項(xiàng)目,這意味著你不用自己寫(xiě)Makefile,你只要在Qt Creator里“執(zhí)行CMake”就能自動(dòng)生成。當(dāng)然,你也可以導(dǎo)入一個(gè)make構(gòu)建的項(xiàng)目到Qt Creator里編譯調(diào)試,比如Nginx。
1、安裝Qt Creator和基礎(chǔ)構(gòu)建環(huán)境(以Ubuntu為例):
安裝基礎(chǔ)系統(tǒng)構(gòu)建工具包:
代碼如下:
sudo apt-get -y install build-essential cmake valgrind
下載最新版二進(jìn)制Qt Creator(建議使用基于Qt4構(gòu)建的2.8系列的Qt Creator,能更好地兼容Fcitx輸入法):
不進(jìn)行GUI編程,不需要安裝Qt SDK,也就沒(méi)有qmake和相關(guān)Qt開(kāi)發(fā)庫(kù),只用下載那個(gè)60M的Qt Creator就好了,比如我下的是:
代碼如下:
qt-creator-linux-x86_64-opensource-2.8.1.run
下載后給予執(zhí)行權(quán)限,運(yùn)行選擇安裝目錄安裝即可,可以安裝在自己的家目錄。
項(xiàng)目配置默認(rèn)存放位置~/.config/QtProject
可以通過(guò)參數(shù)-settingspath自定義配置文件存放位置,比如:
代碼如下:
/home/eechen/qtcreator-2.8.1/bin/qtcreator -settingspath /home/eechen/qtcreator-2.8.1
注意:如果你用的是基于Qt5構(gòu)建的Qt Creator 3系列,其默認(rèn)集成了iBus輸入法插件,而對(duì)于Fcitx插件,則需要手動(dòng)安裝包fcitx-frontend-qt5, 然后復(fù)制libfcitxplatforminputcontextplugin.so到Qt Creator 3的 bin/plugins/platforminputcontexts 目錄,比如: sudo apt-get install fcitx-frontend-qt5
ln -s /usr/lib/`arch`-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so /png/dev/qtcreator-3.2.1/bin/plugins/platforminputcontexts/
重啟QtCreator,就可以正常使用Fcitx輸入法了.
2、把自動(dòng)完成快捷鍵"Ctrl+空格"改為"Alt+/"或者"Shift+Return"(Return表示Enter鍵)
工具-選項(xiàng)-環(huán)境-鍵盤(pán): 鍵盤(pán)快捷鍵輸入"Ctrl+空格",在鍵位順序中點(diǎn)擊x刪除原來(lái)的"Ctrl+空格",輸入新的"Alt+/",確定退出.
3、在Qt Creator中使用make構(gòu)建,運(yùn)行,調(diào)試通用C/C++項(xiàng)目
文件-新建文件或項(xiàng)目-導(dǎo)入項(xiàng)目-導(dǎo)入現(xiàn)有項(xiàng)目
這樣導(dǎo)入的項(xiàng)目用的是make構(gòu)建,需要自己寫(xiě)好Makefile文件后才能構(gòu)建,支持自動(dòng)完成,支持調(diào)試和內(nèi)存分析.
4、在Qt Creator中使用cmake構(gòu)建,運(yùn)行,調(diào)試通用C/C++項(xiàng)目
文件-新建文件或項(xiàng)目-非Qt項(xiàng)目:新建一個(gè)CMake項(xiàng)目
在"執(zhí)行CMake"這一步的參數(shù)中填入-DCMAKE_BUILD_TYPE=Debug
這樣才可以在Qt Creator中調(diào)試程序,-DCMAKE_BUILD_TYPE的值可以設(shè)為Debug或者Release或者RelWithDebInfo.
cmake可以自動(dòng)生成Makefile方便用make構(gòu)建項(xiàng)目,但使用cmake構(gòu)建項(xiàng)目也必須要會(huì)編寫(xiě)CMakeLists.txt文件.
Qt Creator支持使用qmake,make,cmake構(gòu)建項(xiàng)目,但不能直接往cmake項(xiàng)目里添加文件,Qt Creator對(duì)CMake的支持還有待改進(jìn).
臨時(shí)的做法是,切換到文件管理器來(lái)添加文件,然后右擊項(xiàng)目"執(zhí)行CMake"使parsing(語(yǔ)法解析)生效,并載入文件到在項(xiàng)目.
5、Qt Creator會(huì)自動(dòng)識(shí)別系統(tǒng)中安裝的gcc、g++、gdb、make、cmake、valgrind,也可以自己到菜單"工具"->"選項(xiàng)"里進(jìn)行一些自定義配置.
配置vim外部編輯器:
工具->選項(xiàng)->環(huán)境->外部工具->使用vi進(jìn)行編輯
把xterm改為konsole或者gnome-terminal
參數(shù)改為-e vim "%{CurrentDocument:FilePath}"
配置終端:
工具->選項(xiàng)->環(huán)境->概要
KDE環(huán)境默認(rèn)為
代碼如下:
/usr/bin/konsole -e
如果要用gnome-terminal,則設(shè)為/usr/bin/gnome-terminal -x
設(shè)置在終端運(yùn)行程序:
項(xiàng)目(側(cè)邊欄)-運(yùn)行-勾選"在終端中運(yùn)行"
調(diào)試(gdb)時(shí)出現(xiàn)"ptrace operation not permitted"問(wèn)題解決辦法:
臨時(shí)設(shè)置:
代碼如下:
sudo sysctl kernel.yama.ptrace_scope=0
永久設(shè)置: 編輯/etc/sysctl.d/10-ptrace.conf改為kernel.yama.ptrace_scope = 0
系統(tǒng)默認(rèn)設(shè)為1的目的是為了安全,防止用戶(hù)程序(比如這里的gdb)訪問(wèn)其他進(jìn)程(比如這里的konsole,gnome-terminal)內(nèi)存的數(shù)據(jù).