当前位置:首页>python>SCons 一款基于 Python 的自动化构建工具

SCons 一款基于 Python 的自动化构建工具

  • 2026-10-21 13:28:42
SCons 一款基于 Python 的自动化构建工具

大家好,我是阿尔法!

说到构建工具,我们比较熟悉的是 Make、CMake 等,而 SCons 是一款开源的、由 Python 实现的自动化构建工具,开发者可以直接利用 Python 的强大功能和丰富库来管理复杂的构建逻辑,让构建过程变得更加高效。

相比于 Make、CMake,SCons 基于 Python 驱动,一步构建,逻辑灵活,过程简单,具备自动依赖分析等,可实现真正的跨平台。

安装 SCons

  • 实验环境:Ubuntu 24.04

  • SCons 依赖 Python,Ubuntu 24.04 默认安装了 Python 3.12,满足安装使用 SCons 的环境要求,故直接安装 SCons 即可:

  • 打开终端,输入 SCons 安装命令:
sudo apt install scons
  • 可以通过查看程序版本的方式来验证 SCons 是否安装成功:

创建测试项目

  • 创建一个简单的测试项目,项目结构如下:
scons/├── inc/│   └── helloworld.h├── src/│   ├── helloworld.c│   └── main.c└── SConstruct
  • 该测试项目仅仅为实现一个打印 hello world 的功能,相关源文件内容如下:
// helloworld.hvoidhelloworld(void);// helloworld.c#include<stdio.h>voidhelloworld(void){printf("hello world! \r\n");}// main.c#include"helloworld.h"intmain(void){    helloworld();return0;}
  • 编写一个简单的 SConstruct 脚本,该脚本在 Scons 构建中用来配置编译属性等,文件内容如下:
# 创建构建环境env = Environment()# 设置编译选项env.Append(CCFLAGS=["-g", "-Wall"])# 指定头文件路径env.Append(CPPPATH=["inc"])# 定义源文件列表src_files = ["src/helloworld.c", "src/main.c"]# 构建可执行文件program = env.Program(target="test", source=src_files)# 设置默认构建目标Default(program)

构建测试

  • 输入 scons 即可构建可执行程序:
  • 输入 scons -c 用来清除编译文件:
  • 通过并行构建方式可加快构建速度,如使用 4 个并行任务,输入 scons -j4:

未完待续…

更多内容

  • CSDN 博客:@Hello阿尔法
  • 哔哩哔哩:@Hello阿尔法
  • 知乎:@Hello阿尔法

The End

扫一扫加我好友!

欢迎随时滴滴我哦~

还有技术交流群等你来

爱电子的发烧友都来这儿

我点赞、我分享、我推荐

欢 迎 留 言!

最新文章

随机文章