cmake并没有想象中好用

CMake使用体验与跨平台工程需求

简单说,CMake可以自动生成各个平台的build(make)文件,从而达到编写一份build脚本就可以自动在各平台生成独自的工程文件。

这似乎听起来很好,但是实际使用中会有各种恶心的问题。导致有的时候我宁愿自己重新搭建工程文件也不想用cmake。

1、首先你要熟悉cmake才能知道为什么它没有成功的生成工程文件,单单一个xxx not found是无法帮助我们解决问题的。但是大多数时候我并不想学习cmake,我想要的仅仅是生成工程文件,然后运行。之后ide再报什么文件没有找到的话,我自己再修改和添加。我熟悉vs 也熟悉xcode,但是现在还要熟悉cmake。。。。。

2、紧接着上面一点,cmake的工程文件并不那么好生成。很多时候由于各种依赖,导致无法生成。如果作者心地善良的话,还会准备好depslibrary,否则的话,你就要自己一个一个去找。这起始并没有什么问题,但是我宁愿先给我生成工程文件,然后我对其进行删减,去掉不需要的东西,或者是我再一个一个添加依赖库。虽然这听起来跟先准备依赖库然后再生成工程差不多。但是实际操作中完全是两码事,因为我熟悉vs,我可以轻易的按照自己的喜好添加好对应文件(比如相对路径,比如我自己保留一份常用的第三方库依赖包)。如果用cmake,你必须把指定的文件放到指定的地方。(ps:虽然我知道这些强制依赖并不是cmake的问题,但是很多人滥用了这些强制检查,就使得cmake并不符合我的胃口)

3、cmake还有个功能是可以设置编译前和编译后运行脚本。这个原本很正常,但是实际使用中还是会有把你恶心到。比如xcode下面作者可以设定自动拷贝一些资源文件,但是这并不方便,也跟我的传统用法相矛盾,以至于我要重新添加下资源文件,并且要修改生成的包的位置。

说了这些鸡毛蒜皮但是确确实实把我恶心到的小事,然后再说说我心目中的可以方便使用的跨平台工程是什么样子的:

1、作者在哪个平台开发,提供哪个平台的工程文件,这样我们至少有一份保证正确的工程文件。(如果是vs的话,使用相对路径,避免本地文件依赖。)

2、代码本身足够清晰,把平台相关的东西集中到一起。这样即便没有提供xcode的工程文件,我也可以非常轻易的搭建好工程----简简单单的把文件拖进来,删除非mac平台的文件,添加好依赖。这里举个反例,freetype虽然功能强大到无以复加,但是代码实在是恶心,各种#include "xxx.c"的形式,而我们真正需要编译的文件隐藏在各种被包含的.c文件之中,如果要搭建一个xcode的工程,要从中一个一个把文件摘出来,我只想说,何必呢?

在 macOS 上安装 CMake 在 VSCode 中配置使用,可以按照以下步骤进行操作: ### 安装 CMake 1. 通过 Homebrew 安装 CMake 是最简便的方式。如果尚未安装 Homebrew,可以通过运行以下命令来安装: ```bash /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" ``` 然后使用 Homebrew 安装 CMake: ```bash brew install cmake ``` 2. 安装完成后,可以通过以下命令检查 CMake 是否安装成功: ```bash cmake --version ``` 如果输出了版本号,则说明 CMake 已经成功安装[^1]。 ### 在 VSCode 中配置 CMake 1. 打开 VSCode,安装 CMakeCMake Tools 扩展。这可以通过 VSCode 的扩展市场完成。 2. 创建一个新的项目文件夹在此文件夹中创建一个 `CMakeLists.txt` 文件。此文件用于定义 CMake 构建过程。 3. 在 VSCode 中打开终端,确保当前处于项目的根目录下。运行以下命令来配置 CMake 项目: ```bash cmake -S . -B build ``` 这条命令告诉 CMake 使用当前目录作为源代码目录,创建一个名为 `build` 的构建目录。 4. 构建项目: ```bash cmake --build build ``` ### 配置调试环境 1. 安装 CodeLLDB 扩展以支持调试功能。 2. 添加一个 LLDB 调试配置。在 VSCode 中,可以通过打开命令面板 (`Cmd+Shift+P`) 选择 "CMake: Configure" 来实现这一点。 3. 修改 `.vscode/launch.json` 文件内容,确保其包含正确的调试配置信息。例如: ```json { "version": "0.2.0", "configurations": [ { "type": "lldb", "request": "launch", "name": "Debug", "program": "${command:cmake.launchTargetPath}", "args": [], "cwd": "${command:cmake.launchTargetDirectory}" } ] } ``` 4. 在 CMake Debug 环境下选择调试目标按 F5 键开始调试。可以在调试控制台执行调试命令,也可以查看汇编视图[^3]。 以上步骤应该可以帮助你在 macOS 上安装 CMake 在 VSCode 中配置使用。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值