window Cmake开发环境搭建

简介: window Cmake开发环境搭建

背景

最近的项目需要从linux转战至Windows。因为之前的项目都是在linux环境下开发的,代码也是通过CMAKE编译。攻欲善其事,必先利其器。首先要考虑的是如何在Windows环境下使用cmake编译代码。

另外一个就是IDE的选择了,相比于动辄 好几个G的Visual Studio来说,vscode 的安装以及多种功能强大的插件,所以还是还是选择它(只是因为习惯了。。。)。

现将过程记录如下,有需要的小伙伴可以参考。

cmake下载

CMake下载地址,这里我们选择 win-x86,下载完双击打开(注意:1.安装的时候选择中间的 for all user;2. 勾选add into path 加入环境变量)。

进入cmd终端,输入 cmake --verison 出现版本号即安装成功。默认安装路径:C:\Program Files\CMake\bin

MinGW-w64安装

MinGW,是Minimalist GNU for Windows的缩写。它是一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许你在GNU/Linux和Windows平台生成本地的Windows程序而不需要第三方C运行时库。——来自百度百科

因为 MinGW-w64 可以编译生成 64位 或 32位 可执行程序,而 MinGW 只能编译生成32位可执行程序,现在已经很少用了。

MinGW-w64下载地址,进去后往下拉,当前最新版本是GCC-8.1.0,下载后解压,添加环境变量:系统->高级系统设置->环境变量->系统环境变量->新建 将自己解压后的路径添加进去即可,注意路径尽可能不要有中文。

进入cmd终端,输入 cmake --verison 出现版本号即安装成功,如果没有检查环境变量与自己解压的位置。

vscode插件安装

c++ 、 CMake、CMake Tools

代码测试

目录结构:

hello.h

#ifndef __HELLO_H__
#define __HELLO_H__
#define HELLO  "hello, world!"
#endif // __HELLO_H__  

main.cpp

#include <iostream>
#include "../include/hello.h"
using namespace std;
int main(void) 
{
    cout << "Hello, world!" << endl;
    cout << HELLO << endl;
    return 0;
}

CMakeLists.txt

#CMake 最低版本号要求
cmake_minimum_required(VERSION 3.0.0)
#指定工程名
project(main VERSION 0.1.0)
#指定C++ 标准
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED True)
#指定头文件所在的路径
include_directories(${PROJECT_SOURCE_DIR}/include)
#在 ${PROJECT_SOURCE_DIR}/src 路径下搜索.cpp源文件
aux_source_directory(${PROJECT_SOURCE_DIR}/src ALL_SRCS)
#查找当前目录下的所有源文件
#并将名称保存到 DIR_SRCS 变量
aux_source_directory(. DIR_SRCS)
#生成可执行文件 main.exe
add_executable(main ${ALL_SRCS})

在test目录下,

mkdir build
cd build
cmake -G "MinGW Makefiles" ../     # 生成Makefile文件
mingw32-make 

想要使用 make 也能编译。需要找到将bin目录下的mingw32-make.exe 复制一份 重新命名为make即可

相关文章
|
JSON 开发工具 C++
Windows下用CMake编译JsonCpp及配置(适合新手)
Windows下用CMake编译JsonCpp及配置(适合新手)
688 0
|
4月前
CMake自动打包--Qt项目
CMake自动打包--Qt项目
65 0
|
7月前
|
Ubuntu 编译器 Linux
Ubuntu下Qt编程,从QT的安装到编写notepad
Ubuntu下Qt编程,从QT的安装到编写notepad
|
7月前
|
编译器 Linux 开发者
【cmake 交叉编译配置设置】CMAKE_TOOLCHAIN_FILE:跨平台编译的秘密武器
【cmake 交叉编译配置设置】CMAKE_TOOLCHAIN_FILE:跨平台编译的秘密武器
782 0
|
编译器 Linux C++
QT的cmake项目工程配置
QT的cmake项目工程配置
|
C++ Windows
windows vscode 配置cmake 编译c/c++ 基础
1. 下载基础包; 2. 配置vscode; 3. cmake 基础
623 0
CMake教程9:cocos2d-x的CMake逻辑分析
CMake教程9:cocos2d-x的CMake逻辑分析
248 0
|
编解码 Unix Linux
FFmpeg开发笔记(三):ffmpeg介绍、windows编译以及开发环境搭建
FFmpeg开发笔记(三):ffmpeg介绍、windows编译以及开发环境搭建
FFmpeg开发笔记(三):ffmpeg介绍、windows编译以及开发环境搭建
|
Ubuntu Unix Linux
Qt+MPlayer音乐播放器开发笔记(一):ubuntu上编译MPlayer以及Demo演示
Qt+MPlayer音乐播放器开发笔记(一):ubuntu上编译MPlayer以及Demo演示
|
Java Android开发 C++
【CMake】CMake 引入 ( Android Studio 创建 Native C++ 工程 | C/C++ 源码编译过程 | Makefile 工具 | CMake 引入 )(一)
【CMake】CMake 引入 ( Android Studio 创建 Native C++ 工程 | C/C++ 源码编译过程 | Makefile 工具 | CMake 引入 )(一)
344 0
【CMake】CMake 引入 ( Android Studio 创建 Native C++ 工程 | C/C++ 源码编译过程 | Makefile 工具 | CMake 引入 )(一)

热门文章

最新文章