Limine
什么是 Limine?
Limine(发音示例请见这里) 是一种现代、先进、便携的多协议引导加载程序和引导管理器,还作为Limine 引导协议的参考实现。
捐赠
如果您想支持我 (@mintsuki) 在 Limine 上的工作,欢迎通过 Liberapay 向我捐赠:
欢迎捐赠,但绝对不是强制的!
Limine 的引导菜单
支持的架构
- IA-32 (32 位 x86)
- x86-64
- aarch64 (arm64)
- riscv64
- loongarch64
支持的引导协议
- Linux
- Limine
- 多重引导 1
- 多重引导 2
- 链式加载
支持的分区方案
- MBR
- GPT
- 未分区的媒体
支持的文件系统
- FAT12/16/32
- ISO9660 (CDs/DVDs)
- ext2/3/4(注意:这是实验性的,不受支持,需要维护者!)
如果您的文件系统不在此列,请先阅读哲学,特别是在提交相关问题或拉取请求之前。
最低系统要求
对于 32 位 x86 系统,仅确保从 Pentium Pro(i686)级别的 CPU 开始支持。
支持所有 x86-64、aarch64、riscv64 和 loongarch64(UEFI)系统。
打包状态
自 7.x 版本以来,所有 Limine 发布都使用语义版本控制进行命名。
二进制发布
为了方便,针对点版本发布提供了二进制文件。这些二进制文件在此仓库的 -binary
分支和标签中分发
(参见分支和
标签)。
例如,要克隆 8.x
分支的最新二进制发布,可以执行:
git clone https://github.com/limine-bootloader/limine.git --branch=v8.x-binary --depth=1
或,要克隆特定的二进制点版本发布(例如 8.0.5
):
git clone https://github.com/limine-bootloader/limine.git --branch=v8.0.5-binary --depth=1
为了重建主机实用程序如 limine
,只需在二进制发布目录中运行 make
。
提供了 Windows 的主机实用程序二进制文件。
构建引导加载程序
如果克隆的是二进制发布版本,则以下步骤不是必需的。如果是,请跳至 “安装 Limine 二进制文件”。
先决条件
为了构建 Limine,必须安装以下程序:
通用 UNIX 工具(也称为 coreutils
),
GNU make
,grep
,sed
,find
,awk
,gzip
,nasm
,mtools
(可选,必要时用于构建 limine-uefi-cd.bin
)。
此外,还必须安装 gcc
或 llvm/clang
及相应的 binutils。
配置
如果使用发布的 tarball(推荐,请参见 https://github.com/limine-bootloader/limine/releases),
直接运行 ./configure
。
如果从仓库检出,请先运行 ./bootstrap
以下载必要的依赖项并生成配置脚本(需要 GNU autoconf
)。
./configure
接受参数和环境变量;有关更多信息,请运行 ./configure --help
。
./configure
默认不构建任何 Limine 端口。请务必阅读 ./configure --help
的输出并启用任何或所有端口!
Limine 支持树内和树外构建。只需从您希望执行构建的目录中运行 configure
脚本。以下 make
命令应该在构建目录中运行。
构建 Limine
要构建 Limine,运行:
make # (或在适用时使用 gmake)
安装 Limine
此步骤将 Limine 文件安装到指定前缀(默认为 /usr/local
,请参见
./configure --help
或从二进制发布中安装时的 PREFIX
变量)的 share
,include
和
bin
目录。
要安装 Limine,运行:
make install # (或在适用时使用 gmake)
使用
请参阅 USAGE.md。
致谢
Limine 使用了经过精简的 tinf 版本进行早期 GZIP 解压缩。
Limine 依赖于 stb_image 在运行时进行 GZIP 解压缩和图像加载。
Limine 使用了 libfdt 的修补版本(可以在 Linux 源代码树中找到)来操作 FDT。
Discord 服务器
如果您需要支持、信息或只是想和我们闲聊,可以加入我们的Discord 服务器。