VS2010 + Cmake + Qt4.8 简单的环境搭建实例。

来源:互联网 发布:谢安视觉知乎 编辑:程序博客网 时间:2024/06/07 12:16

很多人都用的Qt Creator进行开发, creator 确实很方便, 但调试起来,还是没有vs快捷。 


cmake 实用于较为大型的项目的开始, 而且与vs组合, 更是功能强大, 加上比creator方便的调试优势,还是很不错的一个选择。 


由于近一两年接触的几个项目, 都是用vs2010 + qt4.8 + cmake 进行的框架搭建, 所以总结了一些方法, 也感受到了, 它大型项目中,所起的巨大作用。 它能够把项目源码和编译的内容模块, 全部分开, 使结构很清晰。


下面讲一讲最简单的Qt4.8 + vs2010 + cmake环境的搭建。 一个最简单的实例:


1. 安装cmake。 在网上可以找到cmake安装包进行下载, 并安装。


2.vs 2010 的安装。 


3.QT4.8 源码的编译。 最后,还需要添加环境变量。 


4.在一个目录下面放最简单的五个文件,比如我用的例子 CMakeLists.txt  cmakeqtvs.cpp  cmakeqtvs.h  cmakeqtvs.ui   main.cpp

CMakeLists.txt这个是必须的,而名字也必须一样。 

我这里面的内容为:

cmake_minimum_required (VERSION 2.6 FATAL_ERROR) 


project      (cmake_qt_vs_test)
find_package (Qt4 REQUIRED)


set (in ${PROJECT_SOURCE_DIR})


include_directories (${in})


set  (project_SOURCES main.cpp cmakeqtvs.cpp)
set  (project_HEADERS cmakeqtvs.h)
set  (project_FORMS   cmakeqtvs.ui)


QT4_WRAP_CPP (project_HEADERS_MOC   ${project_HEADERS})
QT4_WRAP_UI  (project_FORMS_HEADERS ${project_FORMS})


INCLUDE         (${QT_USE_FILE})
ADD_DEFINITIONS (${QT_DEFINITIONS})


ADD_EXECUTABLE  (cmake_qt_vs_test ${project_SOURCES}
                                ${project_FORMS_HEADERS}
                                ${project_HEADERS_MOC})


TARGET_LINK_LIBRARIES (cmake_qt_vs_test ${QT_LIBRARIES})

上面的脚本为一个环境配置, 包括cmake最小版本, QT库的添加, sourc, header, forms文件的存放。


cmakeqtvs.cpp  cmakeqtvs.h  cmakeqtvs.ui   main.cpp 由于是测试, 这几个文件可以自己手动写, 也可以直接通过creator生成, 

再拷贝过来。 值得一值的是, 原来cmakeqtvs.cpp中的头文件, 是#include "ui_cmakeqtvs.h"  现在要改成你现在cmake之后所选路径,我这里是#include "build/ui_cmakeqtvs.h"


我这里的目录结构为:



其中build是在后面生成的, 而且build是在CmakeQtVs这个目录下面, 这样#include "build/ui_cmakeqtvs.h" 包含这个头文件之后,才能找到。 在没有打开cmake之前, 是不需要建build目录的。


5.打开cmake



最上面那两个选择输入框, 第一个是选择源码所在位置, 第二个选择是项目构建所在位置。 我这里把构建,放在源码目录下面,再建 了一个build目录, 也为了头文件好找到后面自动生成的ui_cmakeqtvs.h文件。


配好路径之后, 再分别单击Configure  和 Generate , 只要没有报红色的错识提示就算环境搭建正确。


打开自动生成 的build文件下面的,cmake_qt_vs_test.sln , 进行生新生成后,会有下面些文件:




然后, 如果编译调试没有出现问题, 那么一个简单的cmake + vs2010 + qt4.8的编译环境算是搭建起来了。 







0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 平安保险交20年怎么办 u盘里东西乱码了怎么办 手机指环支架松了怎么办 运动完放屁很臭怎么办 腾讯柒个我要会员怎么办 海风吹的变黑了怎么办 冻豆角炖不烂糊怎么办 腿被热水烫了怎么办 肉和冰箱冻住了怎么办 解冻的肉臭了怎么办 临时用电电缆线破皮怎么办 阳台按自来水墙面脱落怎么办 墙被暖气熏黑了怎么办 下水管比地砖低怎么办 马桶下水管短了怎么办 下水管比马桶低怎么办? 寻常疣液氮冷冻后该怎么办 寻常疣冷冻后起水泡胀痛怎么办 冷冻后大水泡痒怎么办 19岁的宫颈糜烂怎么办 发面酸了没有碱怎么办 面发时间长酸了怎么办 丽珠兰打完红肿怎么办 美的冰柜冷藏室结冰怎么办 胃下午和晚上痛怎么办 二胡弓毛粗拉外弦触到里弦怎么办 电视成黑白的了怎么办 城市居民无钱入社保医保怎么办 老婆说离婚又找不到怎么办 爱一个人太累了怎么办 车凹陷漏底漆了怎么办 燕子窝掉下来了怎么办 文科没考上一本怎么办 学校午休小学孩子吵闹怎么办 老鼠死在空调里怎么办 公务员老公四十岁想辞职怎么办 打胎5次又怀孕怎么办 墙纸颜色太淡了怎么办 皮子腺囊肿有点疼痛怎么办 地板颜色选浅了怎么办 地板买的太暗了怎么办