【发布时间】:2019-02-10 14:12:34
【问题描述】:
我目前正在尝试在 mac 上为我的 C++“Hello World 项目”设置一个“自动构建过程”,该项目使用 Cmake 和 Visual Studio 代码。
我当前在终端中构建或使用 vscode 的 tasks.json 的工作流程如下,我发现它们非常乏味。
- cmake ...(在 build 文件夹中生成 cmake 和 make 文件)
- make(在 build 文件夹中创建应用程序的可执行文件)
- ./{应用程序的可执行文件}
因此,我研究了以下内容
- vs 代码的预启动任务
- cmake 的 add_custom_commands
- 自定义 bash 脚本
- python 脚本
但是我对上面的尝试有点迷茫,需要一些帮助。我的最终目标是通过在 vscode 中按 F5 或在终端中调用自定义 ./{command} 来自动构建和运行更新的代码。
【问题讨论】:
-
您的项目的布局是否发生了很大变化?文件被添加和删除?依赖改变?如果没有,在再次运行 make 之前没有理由运行 cmake。
-
我们正在使用一个 makefile,如果目标构建目录不存在,则调用 cmake,然后调用 make 来实际编译/链接。然后你只需要输入
make。 -
布局不会有太大变化,但文件可以添加和删除几次。
-
你知道你可以在终端中将多个命令串在一起吗?
cmd1 && cmd2 && cmd3。甚至会出现这样的情况,即如果较早的命令失败,则后面的命令将不会运行。然后您可以使用向上箭头键从命令历史记录中调用此命令,两次击键将完成您的整个构建。 -
您是否安装了 CMake 工具扩展?它确实使构建变得更加容易。
标签: c++ macos makefile cmake automation