# Kylin Compile Environment Builder **Repository Path**: kylinos-dev/kylin-compile-env-builder ## Basic Information - **Project Name**: Kylin Compile Environment Builder - **Description**: 以用户提供的 ISO 镜像为基础,搭建编译环境(可支持跨架构编译:仅 x86_64 与 arm64) - **Primary Language**: C++ - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2024-09-18 - **Last Updated**: 2025-10-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: Kylin, Qt ## README # 构建环境准备工具 ## 简介 `构建环境准备工具`全称`银河麒麟桌面系统构建环境准备工具`,可为用户提供临时构建环境准备,支持跨架构构建(目前仅支持`amd64`和`arm64`),支持跨版本构建,均可构建原生级兼容项目。 ## 功能列表 - [ ] 配置文件 - [ ] 更新`/etc/fuse.conf`配置 - [ ] 环境准备 - [ ] 挂载`ISO` - [ ] 挂载`squashfs` - [ ] 拷贝文件系统`rsync -a` - [ ] 更新`sources.list` - [ ] 启动容器 - [ ] 构建环境准备 - [ ] 构建环境安装 * `build-essential` * `cmake` * `dh-make` * `dh-cmake` * `qtbase5-dev` * `qtbase5-dev-tools` * `qttools5-dev` * `qttools5-dev-tools` - [ ] 源码包构建 - [ ] 自定义项目构建 ## 依赖 * `binfmt-support` * `qemu-user-static` * `systemd-container` * `fuse3` * `fuseiso` * `squashfuse` * `Qt5` ## 工作要点 1. 挂载指定的`ISO`文件(`fuseiso`)。 2. 挂载`iso/casper/filesystem.squashfs`文件(`squashfuse`)。 3. 拷贝文件系统到指定目录 (`rsync`)。 4. 按照规则,更新`/etc/apt/sources.list`(待定,可参考`/etc/os-release`)。 5. 启动容器系统: ```shell $ systemd-nspawn \ --bind=/etc/resolv.conf \ --bind=/etc/localtime \ --bind=/etc/hostname \ --bind=/etc/hosts \ --bind=[:/project] --directory= ``` ## 备注 * `fuse`挂载的文件系统默认情况下无法复制,修改`/etc/fuse.conf`,将`user_allow_other`取消注释或添加该项