本帖最后由 lemonboard 于 2024-9-25 23:22 编辑
# 《Cmake构建实战》第一章之本地环境搭建
作为一名嵌入式工程师,已经工作多年。开始几年仅做MCU的项目开发,从8位AVR单片机到现在火的不要不要的STM32,我都是使用商用的编译器来做主编译器,如Keil,IAR。对于编译过程,我也仅仅是点点鼠标,或者按一下“F7”快捷键。
情况变化是在最近的项目,涉及到了嵌入式Linux应用程序开发,要使用GCC与Makefile来实现编译。由于水平有限,仅仅使用公司前辈编写好的makefile文件来完成项目,虽然几次努力试图掌握makefile的语法,但终觉不得其法,未得其精髓。一翻探究与调研,决定放弃makefile的深入学习,转而学习CMake,毕竟CMake的语法与编写行数要显著少于makefile。我觉得这也算是跟上技术潮流吧!正好遇上咱们论坛发起CMake的学习活动,故一边看书学习,一边练习分享!欢迎大家批评指正,共同学习进步!
我在阅读完成第一章后,与作者遇到的学习困难点不约而同。所以,我也首先搭建我的实验环境,为后面动手操作提供基础,也只有动手操作后才印象深嘛——“纸上得来终觉浅,绝知此事要躬行。”
我使用windows 10专业版,VScode编辑器,GCC与CMake等工具。具体版本如下图所示:
我们先编写一个简单的文件做测试,即使用命令行的方式通过GCC来编译一个hello.c的源文件的应用程序。
```c
#include
#include
int main(int argc, char const *argv[])
{
printf("hello eeworld\r\n");
return 0;
}
```
然后运行命令。
```shell
gcc hello.c -o hello.exe
```
开发测试的硬件环境我们搭建完成,接下来,我们就尝试使用gcc来编译我们的项目工程了。
对于单个文件的简单程序来说,直接使用命令行的方式肯定是足够的。但对于常见的应用程序,肯定不止1个文件这么少。这时肯定就需要编写编译规则了。
我们继续阅读第二章,《《Cmake构建实战》第一章之入门CMake》,欢迎大家锁定EEWORLD,关注我。
# Hint:
1. 在安装完成MinGW后,需要手动修改MinGW-make.exe为make.exe
2. 添加gcc的bin文件夹到系统path