IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> 用于创建CMake-MSVC工程的Python脚本 -> 正文阅读

[开发工具]用于创建CMake-MSVC工程的Python脚本


0. 前言

最近学习使用Google Test为自己的垃圾代码做测试,但Google Test支持CMake来构建工程,于是学了学CMake(见这篇文章CMake基础知识学习),顺便也想学学开源库的项目组织方式,发现也比较固定,基本上是几个文件夹各自放不同的内容。

笔者很懒,觉得既然组织方式比较固定,那或许可以搞一个脚本自动组织起来。

恰好最近学了点Python,于是就用Python写了个脚本来组织CMake工程,并默认添加了Google Test库用来测试,企图提高自己的代码水平👻。

笔者的项目环境一般是Win10+MSVC2017-x64


1. 环境准备

  1. Visual StudioMSVC编译器,如果采用Google Test的话,最好是都是2017及以上版本;

    笔者采用MSVC2015编译Google Test会出错;

  2. Python3,用来运行py脚本;下载地址Python 3
  3. Git,用来在Windows上运行编译用的sh脚本;下载地址Git
  4. CMake,下载地址CMake
  5. Google Test,用于测试代码,下载地址Google Test;如果采用MSVC2017-x64也可以使用文章末尾编译好的资源。

2. 使用

2.1 生成工程

笔者将脚本放在了E:/create_cmake_project.py路径下,Google Test库的头文件和编译好的lib文件位于E:/github_libs/GoogleTest/
在这里插入图片描述
在想要创建项目的目录下Shift+右键,选择在此处打开 PowerShell 窗口,输入指令,回车即可:

py E:\create_cmake_project.py Test

目前脚本支持2个参数,第一个是项目名称,第二个只支持no来禁止生成Test子项目。运行截图如下:
在这里插入图片描述
生成的目录如下:
在这里插入图片描述

2.2 编译工程

双击build.sh文件,将打开Git Bash开始执行cmake,其源码如下:

#!/bin/bash
mkdir -p build
cd build
rm -rf *
cmake -T v141 -A x64 ..

echo ""
i=3
while ((i>0))
do
	echo -ne "\rwaiting $i""s then exit..."
	sleep 1s
	((i=i-1))
done

执行效果如下图:
在这里插入图片描述
打开build目录下的sln文件,在ALL BUILD工程上右键->重新生成

在这里插入图片描述
将在项目的bin/Debug目录下生成main.exetest.exe,前者包含一个Hello World输出,后者包含一个基本Google Test测试用例,运行效果如下图:在这里插入图片描述


3. 脚本内容介绍

这部分内容很简单,主要给自己做笔记了:

3.1 sys包

  1. sys.exit():退出脚本;
  2. sys.argv:获取控制台传入参数,可以用len()函数获取数量;

3.2 os包

os包主要用到以下方法:

  1. os.path.exists(name):判断name路径是否存在,相对路径;
  2. os.mkdir(name):在当前控制台目录下创建name文件夹;
  3. os.chdir(name):进入相对目录,类似于cd指令;

3.3 shutil包

  1. shutil.copytree(srcdir, dstdir):复制目录;

资源链接:

  1. Python创建CMake工程目录的脚本
  2. Google Test 编译版本 - MSVC2017-x64

3.4 CMake资源

如果对其中一些CMake语法感兴趣,可以参考笔者这两篇文章:

  1. CMake基础知识学习
  2. CMake设置MSVC工程MT/MTd/MD/MDd

3.5 资源下载

资源如下,欢迎白嫖~ 万一有人点赞收藏关注呢👻

  1. 用于创建CMake工程的Python脚本
  2. Google Test库编译版本-MSVC2017-x64

如有错误欢迎指正,共同进步~

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2022-02-26 11:50:46  更:2022-02-26 11:51:42 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 7:28:50-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码