新闻详情

新闻详情

首页 / 资讯中心 / 详情

SJX Make,纯C实现的智能make程序,无需makefile脚本,全自动,适合c项目

发布时间:2026/9/27 9:56:31来源:尧图网络
SJX Make,纯C实现的智能make程序,无需makefile脚本,全自动,适合c项目
之前发布的纯c单h文件make系统 https://github.com/shajunxing/sjx-make/blob/main/make.h.md ,依旧需要在项目源文件每次变更后调整编译脚本太麻烦。于是我一怒之下用400行代码完成了“一次编写处处运行”自动分析头文件依赖关系自动增量、并行编译。约定项目目录结构是这样的项目名 -- src所有源代码头文件都平铺在src里不再分子目录当然也可以有子目录但我比较懒自己的项目都很简单。执行smake会编译所有c文件然后把所有不带main函数的合并为库文件默认名字同项目名。所有带main函数的各自单独生成同名可执行程序。编译后的目录如下项目名 -- bin 所有可执行程序和库文件 -- src -- tmp 中间过程产生的其它文件比如目标文件编译支持调试和发布模式支持动态也就是生成动态库.dll .so和静态链接支持windows和posix兼容系统。想玩的可以在 https://github.com/shajunxing/sjx-make/releases 下载 windows 可执行程序。命令行参数如下C:\smake --help Usage: smake [clean|debug|release|mono|static|dynamic|-h|--help] clean cleanup generated binaries debug with debug symbols release no debug symbols, optimize for speed mono generate monolithic .exe static static build, link with dynamic crt dynamic seperate to .dll .exe, link with dynamic crt Default is: release static -h, --help show help More options can be set in makefile, see examples.同时也支持简单的配置文件为了方便编辑器语法高亮也取名为makefile格式如下# 开头的是注释行# Configuration file for SJX Smart Make System. # Values shown below are default values. # Build mode, d is with debug symbols, r is no debug symbols and optimize for speed # buildr # Linking model, m is all static, s static project and dynamic crt, d is all dynamic # linkages # Pattern to match main function # main_patint main( # Lib and dll name, default is project folder name # lib_name # Extra options for linker # ex_opts_windows # ex_opts_posix # GetUserNameA requires advapi32.lib ex_opts_windowsuser32.lib gdi32.lib imm32.lib advapi32.lib winmm.lib # suppress fucking stupid readline warnings Using xxx in statically linked applications requires at runtime the shared libraries ... ex_opts_posix-lm -lreadline -lncurses -ltinfo -Wl,--no-warnings
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

WordPress启用主题哪家强?3步避坑指南+代码实战 2026/9/27 10:56:26

WordPress启用主题哪家强?3步避坑指南+代码实战

WordPress启用主题哪家强?3步避坑指南+代码实战 备案流程一头雾水,导致网站上线延期?别急,今天咱们不聊虚的,直接切入WordPress启用主题的硬核细节。很多新手在挑选建站服务商时,问得最多的一句话就是“WordPress启用主题…

阅读更多 →
一个云主机怎么挂两个网站速查手册:小白避坑指南 2026/9/27 10:56:19

一个云主机怎么挂两个网站速查手册:小白避坑指南

一个云主机怎么挂两个网站速查手册:小白避坑指南 自己不会代码想做网站,最怕的就是搞懂服务器配置后,发现资源不够用或者怕配错了把站搞崩。很多人以为一台云主机只能跑一个站,其实只要会配置…

阅读更多 →
Agilent 53150A频率计:高精度时间测量与Allan方差实战指南 2026/9/27 10:56:06

Agilent 53150A频率计:高精度时间测量与Allan方差实战指南

1. 这台“老伙计”不是摆设:Agilent 53150A 频率计的真实定位与不可替代性你可能在实验室角落见过它——深灰色金属机箱,前面板布满密密麻麻的BNC接口、LED指示灯和一块略带泛黄的LCD屏。它不像新买的示波器那样有炫酷的触摸界面,也不像频谱仪…

阅读更多 →
新手向的 OpCore-Simplify 实操指南:把 OpenCore EFI 制作从两天压缩到半小时 2026/9/27 10:56:00

新手向的 OpCore-Simplify 实操指南:把 OpenCore EFI 制作从两天压缩到半小时

新手向的 OpCore-Simplify 实操指南:把 OpenCore EFI 制作从两天压缩到半小时 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify OpCore-Simp…

阅读更多 →
告别论文焦虑!汇写论文AI智能写作一站搞定 2026/9/27 10:56:00

告别论文焦虑!汇写论文AI智能写作一站搞定

每年毕业季,"论文"两个字就像一块沉甸甸的石头,压在无数专科、本科、硕士乃至博士学子的心头。选题没有方向、文献查不全、框架搭不起来、写出来的重复率居高不下、AIGC率一查就超标……一环卡住,步步被动。如今,这一切…

阅读更多 →
pixi 全局清单(Global Manifest)完全指南:pixi-global.toml 的结构、位置与全部配置项 2026/9/27 10:55:54

pixi 全局清单(Global Manifest)完全指南:pixi-global.toml 的结构、位置与全部配置项

开发工具CLI包管理器任务调度 【免费下载链接】pixi Powerful system-level package manager for Linux, macOS and Windows written in Rust – building on top of the Conda ecosystem. 项目地址: https://gitcode.com/gh_mirrors/pi/pixi 点击查看 免费下载 pi…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉