找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4|回复: 0
打印 上一主题 下一主题
收起左侧

一个跨平台通用的Makefile文件

[复制链接]
跳转到指定楼层
楼主
ID:338597 发表于 2025-9-18 19:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一、背景
一个可直接用于企业开发使用的项目

项目在github的路径    : github/Yezcgithub/makefile
项目在gitee的路径      : https://gitee.com/yezc/makefile
项目在gitcode的路径  : gitcode/Yeccc/makefile

二、功能
1. 支持跨平台
2. 支持可配置交叉编译
3. 支持可配置只编译C语言文件或C\C++文件混合编译
4. 支持可配置生成目标文件有可执行程序、动态库、静态库以及同时生成动态和静态库
5. 支持可配置生成 release、debug 以及同时生成 release 和 debug 版本
6. 支持可配置生成的目标文件及生成的中间文件的保存位置
7. 支持生成预处理文件和生成汇编文件命令
8. 支持在脚本中配置参数

三、优点
1. 简洁,核心只有一个Makefile文件
2. 跨平台,它可以自动识别所在平台,不需要配置就可以直接使用
   - 在Linux中直接拷贝Makefile文件到工程中就可以直接使用
   - 在Windows中需要busybox的支持,你可以在 "./tools/windows_tools" 中找到它,也可以在busybox官网中下载最新版本 frippery org/busybox/ , 在Windows使用Makefile该文件时,在拷贝Makefile文件的同时把 tools 文件夹一起拷到你的工程中即可
3. 配置方便,在Makefile文件中你只要关心带有前缀 "MF_CONFIGURE_" 的变量,并且增加了大量的说明及示例,这样能非常方便的对每个工程个性化管理的需求
4. 结合脚本使用,你可以不用修改Makefile文件,在脚本中直接配置你的个性化需求,可以在工程中查看 build.sh 脚本文件(Linux使用的) 和  build.bat 脚本文件(Windows使用的)
5. 健壮性,在Makefile文件中增加了很多的校验,它能增加在执行make时不容易出错,能够提前告知你配置的问题设置
6. 便于学习,如果近期你想了解或学习Makefile文件的知识,该项目是一个非常好的学习资料。在该项目中使用到了大部分的Makefile知识点,并且拥有大量的注释说明。在 "./doc" 文件夹中保存了make.pdf文件,这个也是你学习之路的不可或缺的的资料文件。当然也可以到make官网上下载最新的文档 gnu org/software/make/
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表