现在的位置: 首页 > 自动控制 > 工业·编程 > 正文

Windows上的C++轻量级IDE: QtCreator+CMake+MinGW(gcc4.8.1)

2014-09-16 06:36 工业·编程 ⁄ 共 1317字 ⁄ 字号 暂无评论

组合包含了g++4.8.1的mingw, Qt Creator可以做为优秀的轻量级IDE了。 而且, 还可以使用Qt,能量无限。 Qt本身在C++11的尝试上也走在了前列。

依赖软件包:

MinGW2

Qt Creator 2.7.1

CMake

MinGW比较难找,试了好几个发布包,这个最好。最新的gcc,完整的lib, 还带着gdb,而且,还有64位可以选择。

设置

1. CMake

2. 添加MinGW编译器, 以64位为例,注意ABI设置

3.添加一个Kit (编译的工具链?),可以选择gdb,我没有添加Qt。 这里也可以创建msvc的编译链

使用

创建一个新项目,Non-Qt Project --> Plain C++ Project(CMake Build).

项目使用cmake的CMakelists.txt, 让cmake生成目标编译器的makefile,进行编译.

默认g++没有打开c++11和debug的支持, 所以添加如下到CMakelists.txt

SET(CMAKE_CXX_FLAGS "-std=c++11 -g")

测试代码

#include <iostream>

#include <vector>

#include <iterator>

template<typename T>

void variableTemplates(const T & last)

{

std::cout << last << std::endl;

}

template<typename T, typename ...Args>

void variableTemplates(const T & firstArg, Args... args)

{

std::cout << firstArg << ' ';

variableTemplates(args...);

}

int main()

{

std::vector<double> floats{1.0, 2.0, 3.0, 4.0};

std::copy(std::begin(floats), std::end(floats), std::ostream_iterator<double>(std::cout, " "));

std::cout << std::endl;

for (auto f : floats)

{

std::cout << f * f << ' ';

}

std::cout << std::endl;

const char * str =

R"(test raw string

with multiline text

and escape characters \t \a \b)";

std::cout << str << std::endl;

variableTemplates<double, double, double>(2.1, 2.3, 2.4);

return 0;

}

输出

Starting P:\temp_project\testMinGW64-build\testMinGW64.exe...

1 2 3 4

1 4 9 16

test raw string

with multiline text

and escape characters \t \a \b

2.1 2.3 2.4

P:\temp_project\testMinGW64-build\testMinGW64.exe exited with code 0

作者:SalmonRun

给我留言

留言无头像?