# wiki **Repository Path**: open-loongarch/wiki ## Basic Information - **Project Name**: wiki - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: ohos-v4.1 - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2024-09-14 - **Last Updated**: 2026-02-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # open-loongarch 开源鸿蒙项目 ## 1. 实物图 以下是目前支持板卡的实物图 ### 1.1 2K0300蜂鸟板 ![2K0300蜂鸟板](./imgs/fn.png) ### 1.2 2K0300先锋派 ![2K0300蜂鸟板](./imgs/xf.png) ### 1.3 2K1000星云板 ![2K1000星云板](./imgs/ls2k1000_dp.png) ## 2. 下载代码 ### 2.1. 安装软件依赖 支持 ubuntu 18.04 和 ubuntu 22.04。 安装软件依赖参考命令: ```shell sudo apt update ``` ```shell sudo apt-get install binutils binutils-dev git git-lfs gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib gcc-arm-none-eabi x11proto-core-dev libx11-dev lib32z1-dev ccache libxml2-utils xsltproc unzip m4 bc gnutls-bin python3-pip ruby genext2fs device-tree-compiler make libffi-dev e2fsprogs pkg-config perl openssl libssl-dev libelf-dev libdwarf-dev u-boot-tools mtd-utils cpio doxygen liblz4-tool openjdk-8-jre gcc g++ texinfo dosfstools mtools default-jre default-jdk libncurses5 apt-utils wget scons tar rsync git-core libxml2-dev lib32z-dev grsync xxd libglib2.0-dev libpixman-1-dev kmod jfsutils reiserfsprogs xfsprogs squashfs-tools git-lfs pigz ``` 安装完之后,/usr/bin/mkimage 大概率被刷新,然后再去编译内核就会说不支持 Loongarch 。 此时需要安装新的`mkimage` 从`https://gitee.com/open-loongarch/u-boot` 下载源码,进行编译,编译成功后在 `tools` 目录下会生成`mkimage`,将其复制到`/usr/bin`目录即可。 `u-boot`编译方法参考[2K0300快速使用指南](https://gitee.com/open-loongarch/docs-2k0300/tree/master/2K0300%E8%9C%82%E9%B8%9F%E6%9D%BF/quick_start.md#三u-boot-编译)中【三、u-boot编译】部分。 ### 2.2. 下载代码 **建议在一个空文件夹内,然后文件夹内再创建一个空文件夹,假设名为 oh41。(名字随意)** 该 oh41 文件夹就是项目代码文件夹,下载的代码都放到这里面。 下面是参考代码,在 oh41 文件夹内运行。 ```shell repo init -u git@gitee.com:open-loongarch/manifest.git -b ohos-v4.1 -m ls2k300-dev_v4.1.xml --no-repo-verify -v repo sync -c repo forall -c 'git lfs pull' ./build/prebuilts_download.sh ``` manifest 仓目前里面有 ls2k300-dev_v4.1.xml 和 ls2k1000-dev_v4.1.xml 文件。 目前这两份文件的**内容是一致的**,所以使用哪一份文件都是下载同样的东西。都支持2k1000、2k300的编译。 ### 2.3. 代码添加 gcc 工具链和打补丁 在代码项目目录下打开终端,执行下面的参考命令: ```shell cd device/soc/loongson/ ./setup_toolchain.sh ./patch.sh cd - ``` ## 3. 编译步骤 ### 3.1. 声明交叉编译工具链 在代码项目目录下打开终端,执行下面的参考命令: ```shell source ./set_env.sh ``` 除非该终端窗口关闭了,否则无需多次声明。 ### 3.2. 编译 目前支持的 ls2k300 蜂鸟板、ls2k300 先锋派和ls2k1000 星云板。 | 板卡 | 编译名称 | | - | - | | ls2k300 蜂鸟板 | ls2k300_mini_dp_linux | | ls2k300 先锋派 | ls2k300_vanguard_pi_linux | | ls2k1000 星云板 | ls2k1000_dp_linux | 假设编译 ls2k300 先锋派的系统。参考命令如下: ```shell ./build.sh --product-name ls2k300_vanguard_pi_linux --ccache --no-prebuilt-sdk ``` 假设编译 ls2k1000 星云板的系统。参考命令如下: ```shell ./build.sh --product-name ls2k1000_dp_linux --ccache --no-prebuilt-sdk ``` 可见把对应的 --product-name 替换成板卡的编译名称即可。 编译成功的信息输出 ```log [OHOS INFO] ccache_dir = /home/loongson/.ccache, ccache_exec = /usr/bin/ccache [OHOS INFO] -------------------------------------------- [OHOS INFO] ccache summary: [OHOS INFO] ccache version: 3.4.1 [OHOS INFO] cache hit (direct): 0 [OHOS INFO] cache hit (preprocessed): 0 [OHOS INFO] cache miss: 0 [OHOS INFO] hit rate: 0.00% [OHOS INFO] miss rate: 0.00% [OHOS INFO] Cache size (GB): [OHOS INFO] --------------------------------------------- [OHOS INFO] c targets overlap rate statistics [OHOS INFO] subsystem files NO. percentage builds NO. percentage overlap rate [OHOS INFO] ability 80 1.9% 80 1.9% 1.00 [OHOS INFO] applications 32 0.7% 32 0.7% 1.00 [OHOS INFO] arkui 1026 23.9% 1026 23.9% 1.00 [OHOS INFO] bundlemanager 38 0.9% 38 0.9% 1.00 [OHOS INFO] commonlibrary 9 0.2% 9 0.2% 1.00 [OHOS INFO] communication 337 7.9% 337 7.9% 1.00 [OHOS INFO] developtools 9 0.2% 9 0.2% 1.00 [OHOS INFO] distributeddatamgr 2 0.0% 2 0.0% 1.00 [OHOS INFO] distributedhardware 54 1.3% 54 1.3% 1.00 [OHOS INFO] global 17 0.4% 17 0.4% 1.00 [OHOS INFO] graphic 42 1.0% 42 1.0% 1.00 [OHOS INFO] hdf 75 1.8% 75 1.8% 1.00 [OHOS INFO] hiviewdfx 12 0.3% 12 0.3% 1.00 [OHOS INFO] multimedia 21 0.5% 21 0.5% 1.00 [OHOS INFO] powermgr 25 0.6% 25 0.6% 1.00 [OHOS INFO] security 334 7.8% 334 7.8% 1.00 [OHOS INFO] startup 131 3.1% 131 3.1% 1.00 [OHOS INFO] systemabilitymgr 25 0.6% 25 0.6% 1.00 [OHOS INFO] test 35 0.8% 35 0.8% 1.00 [OHOS INFO] thirdparty 1934 45.1% 1934 45.1% 1.00 [OHOS INFO] updater 4 0.1% 4 0.1% 1.00 [OHOS INFO] window 21 0.5% 21 0.5% 1.00 [OHOS INFO] xts 35 0.8% 35 0.8% 1.00 [OHOS INFO] [OHOS INFO] c overall build overlap rate: 1.00 [OHOS INFO] [OHOS INFO] [OHOS INFO] ls2k1000_dp_linux build success [OHOS INFO] Cost time: 0:06:37 =====build successful===== 2025-05-22 11:54:35 ``` ## 4. 烧录 编译结束后,在 out 文件夹里对应的文件夹内就能找到对应的镜像。 以 ls2k1000_dp_linux 为例,前往 out/ls2k1000_dp/ls2k1000_dp_linux 文件夹下。 能看到 rootfs.tar.gz、uImage、rootfs.img 文件,按用户手册那样烧录即可。 如果想二次定制可基于 rootfs.tar.gz 开展。 如果想清空编译产出,直接删除 out 文件夹即可。