貌似有个CMake教程上说过“不要使用CMake编译Qt”,原因是Qt有自己的QMake,用CMake会费时费力,不过为了能把所有工程采用同样的编译方式,还是尝试了一下,的确很麻烦。
首先需要下载Qt SDK,因为打算用VS2010编译,所以下载了everywhere的4.7b2版本(注意:4.6.3不支持2010,强编会出错,4.7b2静态编译也会有同样的问题,估计正式版会有改善吧)
编译整体还是比较简单的
- 把VS目录下的vcvars32.bat复制到qt目录下
- 打开控制台,首先运行vcvars32.bat
- configure –platform win32-msvc2010
- nmake
- 等待N长时间编译完成,真的非常长时间
- 编译结果6G,保留bin,include,lib目录即可
4.7的编译有个缺点就是所有路径都是完整路径会写死,且不能选择编译结果的输出路径,所以要是打算多次编译一定要确定好目录,否则会很麻烦。
然后写一个简单的CMakeLists.txt文件:
#Project Name
PROJECT(BookStar)SET(QT_FOLDER D:/qt-4.7.0-b2)
# include directories
INCLUDE_DIRECTORIES(inc
${PROJECT_BINARY_DIR}
${QT_FOLDER}/include)# lib directories
LINK_DIRECTO