eMake 项目使用教程
emake你见过的最简单的 GCC/CLANG 项目构建工具,定义式构建,比命令式更简单项目地址:https://gitcode.com/gh_mirrors/em/emake
项目介绍
eMake 是一个简单易用的构建工具,旨在解决传统 Makefile 编写复杂、头文件依赖管理困难以及多核编译不便的问题。eMake 通过定义式构建工具的方式,简化了构建流程,支持多种编程语言和编译器,适用于 Windows、Linux、Mac OS X 等多种操作系统。
项目快速启动
安装 eMake
Linux / Mac OS X
wget http://skywind3000.github.io/emake/emake.py
sudo python2 emake.py -i
Windows
- 下载
emake.py
放到你的 MinGW 根目录下。 - 添加到 PATH 环境变量。
- 同级目录新建一个
emake.cmd
文件,内容如下:
@echo off
d:\dev\python27\python.exe d:\dev\mingw\emake.py %*
修改对应路径即可。
使用 eMake
假设你有一个简单的 C 项目,包含 main.c
和 utils.c
两个文件。
// main.c
#include <stdio.h>
#include "utils.h"
int main() {
printf("Hello World\n");
utils_func();
return 0;
}
// utils.c
#include "utils.h"
#include <stdio.h>
void utils_func() {
printf("This is a utils function\n");
}
// utils.h
#ifndef UTILS_H
#define UTILS_H
void utils_func();
#endif
使用 eMake 进行编译:
emake main.c utils.c
应用案例和最佳实践
多核编译
eMake 支持多核编译,可以显著加速项目构建。使用 -j
参数指定并行编译的核数:
emake -j4 main.c utils.c
交叉编译
eMake 支持交叉编译,可以构建 iOS、Android 等项目。例如,构建 Android NDK 项目:
emake --platform=android main.c utils.c
嵌入式配置
eMake 支持将工程配置信息嵌入到源代码的注释中,简化工程文件的编写。例如:
// main.c
#include <stdio.h>
#include "utils.h"
// mode: exe
// src: utils.c
int main() {
printf("Hello World\n");
utils_func();
return 0;
}
使用 eMake 进行编译:
emake main.c
典型生态项目
eMake 可以与多种编程语言和工具链配合使用,以下是一些典型生态项目:
C/C++ 项目
eMake 支持 GCC、Clang 等编译器,适用于各种 C/C++ 项目。
Android NDK 项目
eMake 支持 Android NDK 的交叉编译,可以轻松构建 Android 应用。
iOS 项目
eMake 支持 iOS 项目的构建,适用于开发 iOS 应用。
通过以上内容,您可以快速上手 eMake 项目,并了解其在不同场景下的应用和最佳实践。
emake你见过的最简单的 GCC/CLANG 项目构建工具,定义式构建,比命令式更简单项目地址:https://gitcode.com/gh_mirrors/em/emake