资讯动态

Linux 交叉构建 OHOS x86_64/aarch64 工具链:仓颉 SDK 集成构建的前置指南

发布时间:2026/10/14 3:07:39 来源:尧图企业网站定制
文档教程构建工具【免费下载链接】cangjie_build仓颉SDK集成构建指导书。项目地址https://gitcode.com/Cangjie/cangjie_build点击查看免费下载本篇指南讲解如何在 Ubuntu 22.04 LTS 上从 OpenHarmonyOHOS源码出发交叉编译出ohos-x86_64与ohos-aarch64两套工具链——包括 musl libc、OpenSSL 以及由ohos-sdk产物组装而成的完整 sysroot 与 LLVM/Clang 工具链。这套工具链是仓颉CangjieSDK 中宿主平台无关的部分会被 Linux OHOS 构建指导、Linux - Windows(OHOS) 交叉构建指导、macOS OHOS 构建指导 三份流程分别打包进各自的完整 SDK。读完本文你将掌握从零构建 OHOS 交叉编译环境、产出可被仓颉编译器消费的sysroot与prebuilts/clang/ohos工具链的完整实操方案。1 工具链在仓颉 SDK 构建体系中的角色在开始动手之前先明确这套工具链在仓颉 SDK 集成构建中的位置这有助于理解后续每一步构建与拷贝动作的目的。仓颉 SDK 需要支持linux-ohos、windows-ohos、mac-ohos等目标产物它们分别面向 OHOS 的 x86_64模拟器与 aarch64鸿蒙 PC/手机芯片架构。由于仓颉编译器在交叉编译 OHOS 目标时需要 OHOS 平台的 C 运行时库、头文件和链接器因此必须预先构建一套宿主平台无关的 OHOS 工具链musl sysroot OpenSSL LLVM/Clang。依据 linux_ohos_toolchain.md 的说明本教程构建出的工具链将分别在Linux OHOS 构建指导构建linux-x64-ohos/linux-aarch64-ohosSDKLinux - Windows(OHOS) 交叉构建指导构建windows-x64-ohosSDKmacOS OHOS 构建指导构建mac-ohosSDK中被打包进各自完整的 SDK。这三份流程对工具链产物的消费方式高度一致均通过设置OHOS_ROOT环境变量指向工具链安装目录然后在编译仓颉编译器、运行时、标准库、STDX 扩展库时传入两个关键参数--target-toolchain ${OHOS_ROOT}/prebuilts/clang/ohos/linux-${ARCH}/llvm/bin指定交叉编译所用的 Clang 工具链--target-sysroot ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot指定 OHOS 目标的 sysroot含头文件与库文件。例如 linux_ohos.md 中编译编译器产物时即按此方式使用linux_ohos.md 中编译仓颉运行时则直接以--target-toolchain ${OHOS_ROOT}传入整个工具链根目录macos_ohos.md 与 linux_cross_windows_ohos.md 也都在环境准备阶段先完成本教程并设置export OHOS_ROOT/opt/buildtools/ohos_root;。因此本教程是整个 OHOS 相关仓颉 SDK 构建流程的前置依赖应在进入三大构建指导之前完成。2 环境准备2.1 系统要求项目要求说明操作系统Ubuntu 22.04 LTS示例其他版本可参考本文流程磁盘空间≥ 200GBOHOS 全量源码 多目标编译产物体积较大内存≥ 8GB物理内存 交换空间并行编译多个架构目标对内存敏感建议按需增大交换空间用户权限普通用户 sudo 权限安装系统工具、创建/opt/buildtools等目录芯片指令集x86_64本教程以 x86_64 宿主为例aarch64 宿主可参考对应流程对比说明单独构建仓颉 SDK 本体约需 ≥50GB 磁盘见 linux_ohos.md而本教程需要先拉取完整的 OHOS 源码仓库并执行多架构交叉编译因此磁盘要求提高到 ≥200GB。2.2 切换华为镜像源可选在国内网络环境下建议先将 apt 源切换为华为云镜像以加快依赖下载速度。命令会先备份原配置再通过sed将archive.ubuntu.com与security.ubuntu.com替换为mirrors.huaweicloud.com最后刷新索引# 1.备份配置文件 sudo cp -a /etc/apt/sources.list /etc/apt/sources.list.bak; # 2.修改sources.list文件将http://archive.ubuntu.com和http://security.ubuntu.com替换成http://mirrors.huaweicloud.com可以参考如下命令 sudo sed -i shttp://.*archive.ubuntu.comhttp://mirrors.huaweicloud.comg /etc/apt/sources.list; sudo sed -i shttp://.*security.ubuntu.comhttp://mirrors.huaweicloud.comg /etc/apt/sources.list; # 3.更新索引 sudo apt-get update;2.3 安装系统工具使用apt一次性安装编译 OHOS 所需的全部系统工具与开发库。注意命令中使用了--no-install-recommends以最小化非必要依赖sudo apt update sudo apt install -y --no-install-recommends \ openssh-server openssh-client openjdk-8-jdk vim wget curl bzip2 zip unzip sudo \ tar build-essential ninja-build zlib1g-dev libncurses5-dev libxml2-dev libedit-dev \ dos2unix libstdc6 binutils libc-dev libc-dev flex bison lld python3-requests \ unrar git git-lfs make openssl libssl-dev libffi-dev iputils-ping maven less \ libcurl4 expat gettext nfs-common libtool sqlite3 libcurl4-openssl-dev autoconf \ libxext-dev libxtst-dev libxt-dev libcups2-dev libfreetype6-dev libasound2-dev \ libfontconfig1-dev libxrender-dev libopenmpi-dev gdb lldb ccache rpm patch \ libtinfo5 cpio rpm2cpio libncurses5 strace net-tools python3-jinja2 python3-pexpect \ rapidjson-dev libelf-dev libdwarf-dev rsync sshpass ssh python3-markupsafe tar \ libgdbm-dev libnss3-dev libreadline-dev libbz2-dev libncurses-dev libtinfo-dev \ gnupg gperf libc6-dev-i386 x11proto-core-dev libx11-dev libgl1-mesa-dev libxml2-utils \ xsltproc bc ruby gcc-aarch64-linux-gnu libxcursor-dev libxrandr-dev libxinerama-dev \ gcc g clang libgmp-dev libmpfr-dev libmpc-dev;这些工具按用途大致可归为以下几类便于你按需排查缺失项构建系统build-essentialgcc/g/make、ninja-build、cmake相关依赖、autoconf、libtool、gperf、bison、flex、bc、ruby、python3-jinja2等——OHOS 的build.sh依赖 ninja 与 GN 体系版本控制与源码获取git、git-lfsOHOS 源码中含大文件、wget、curl、unrar、zip/unzip、tar编译工具链clang、lld、gcc-aarch64-linux-gnuaarch64 交叉汇编/链接工具、binutils、libc-dev、libc-dev加密与网络openssl、libssl-dev、libcurl4、libcurl4-openssl-dev、ssh/sshpass/openssh-client、nfs-common、net-tools、iputils-ping调试与性能gdb、lldb、strace、ccache编译缓存后续build.sh --ccache会用到图形与 UI 开发库libxext-dev、libxtst-dev、libxt-dev、libx11-dev、libxrender-dev、libxcursor-dev、libxrandr-dev、libxinerama-dev、libgl1-mesa-dev、libcups2-dev、libasound2-dev、libfontconfig1-dev、libfreetype6-dev其他工具openjdk-8-jdk、mavenOHOS 部分组件依赖 Java 构建、rpm/rpm2cpio/cpio、dos2unix处理换行符、xsltproc、gettext、rapidjson-dev、libelf-dev、libdwarf-dev、sqlite3、less、vim、gmp/mpfr/mpc开发库等。关于版本约束可对照 构建依赖工具 中的版本矩阵例如 LLVM 需15.0.4 且 16binutils2.38python3.7OpenSSL3构建 std/stdx 需要这些版本要求同时适用于 OHOS 工具链的交叉编译环节。3 创建工作区并下载 OHOS 源码3.1 创建工作区首先定义一个工作区目录示例中的/path/to/workspace需替换为你实际用于构建 OHOS 的工作目录。之所以额外创建source子目录是因为执行prebuilts_download.sh时会在工作区上层创建存放 OHOS 相关二进制的目录source目录专门用于存放 OHOS 源码export WORKSPACE/path/to/workspace mkdir -p $WORKSPACE; cd $WORKSPACE; # 在执行prebuilts_download.sh的时候会在上层创建存放ohos相关二进制目录这里创建一个source目录用于存放ohos源码 mkdir source;3.2 下载 repo 工具OHOS 源码采用repo多仓库管理。此处从 gitcode 获取repo-py3脚本赋可执行权限并通过华为云 PyPI 镜像安装requests依赖repo 脚本运行需要cd $WORKSPACE; curl https://raw.gitcode.com/gitcode-dev/repo/raw/main/repo-py3 -o repo; chmod ax repo; pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests;3.3 初始化 manifest 并同步源码进入source目录用repo init指定 OpenHarmony 的 manifest 仓库master分支随后repo sync同步全部子仓库cd ${WORKSPACE}/source; # 请在命令执行前配置git user.name和user.email # 如果有报python找不到错的话将#!/usr/bin/env python 改成 #!/usr/bin/env python3 ${WORKSPACE}/repo init -u https://gitcode.com/openharmony/manifest.git -b master --no-repo-verify; ${WORKSPACE}/repo sync -c;两个官方提示值得特别注意执行前务必配置git user.name和git user.email否则repo sync阶段可能因缺少身份信息报错若遇到python找不到的错误需将repo脚本首行的#!/usr/bin/env python改为#!/usr/bin/env python3适配仅安装了 Python 3 的环境。4 交叉编译 OHOS musl libcmusl 是 OHOS 目标的 C 标准库实现是 sysroot 的基础。为了一次性产出 arm64 与 x86_64 两个架构的 musl 共享库需要在third_party/musl/BUILD.gn文件末尾追加一个聚合构建目标all_musls。4.1 修改 BUILD.gn用vim打开third_party/musl/BUILD.gn在文件最后追加group(all_musls) { deps [ :soft_libc_musl_shared(//build/toolchain/ohos:ohos_clang_arm64), :soft_libc_musl_shared(//build/toolchain/ohos:ohos_clang_x86_64), ] }该group的deps含义如下:soft_libc_musl_shared是third_party/musl/BUILD.gn中定义的 musl 共享库目标(//build/toolchain/ohos:ohos_clang_arm64)与(//build/toolchain/ohos:ohos_clang_x86_64)是 GN 的 toolchain 覆盖写法分别指定使用 OHOS 的 arm64 与 x86_64 Clang 交叉工具链编译——这正是一次构建、双架构产出的关键机制。4.2 执行 musl 构建# 执行musl构建 cd ${WORKSPACE}/source; ./build/prebuilts_download.sh; ./build.sh --product-name rk3568 --build-target all_musls;命令说明./build/prebuilts_download.sh下载编译所需的预置二进制prebuilts首次执行会耗时较长并会在工作区上层生成存放 OHOS 相关二进制的目录这也解释了 3.1 节创建source子目录的原因./build.sh --product-name rk3568 --build-target all_musls--product-name rk3568指定以 rk3568 作为参考产品加载对应构建配置--build-target all_musls指定只构建刚刚新增的all_musls目标。5 交叉编译 OHOS OpenSSL仓颉标准库与 STDX 扩展库依赖 OpenSSL构建依赖要求 OpenSSL 3见 构建依赖工具因此需要为 OHOS 目标交叉编译 OpenSSL 的静态/共享库及其源码产物。5.1 修改 BUILD.gn在third_party/openssl/BUILD.gn末尾追加聚合目标all_sslgroup(all_ssl) { deps [ :libcrypto_static(//build/toolchain/ohos:ohos_clang_arm64), :libssl_static(//build/toolchain/ohos:ohos_clang_arm64), :libcrypto_shared(//build/toolchain/ohos:ohos_clang_arm64), :libssl_shared(//build/toolchain/ohos:ohos_clang_arm64), :ssl_source(//build/toolchain/ohos:ohos_clang_arm64), :libcrypto_static(//build/toolchain/ohos:ohos_clang_x86_64), :libssl_static(//build/toolchain/ohos:ohos_clang_x86_64), :libcrypto_shared(//build/toolchain/ohos:ohos_clang_x86_64), :libssl_shared(//build/toolchain/ohos:ohos_clang_x86_64), :ssl_source(//build/toolchain/ohos:ohos_clang_x86_64), ] }该group覆盖了 5 个 OpenSSL 子目标 × 2 个架构共 10 项依赖libcrypto_static/libssl_staticlibcrypto、libssl 静态库libcrypto_shared/libssl_sharedlibcrypto、libssl 共享库ssl_sourceOpenSSL 头文件等源码产物后续拷贝 sysroot 时会用到build_all_generated/include生成的头文件目录。5.2 执行 OpenSSL 构建# 执行构建 cd ${WORKSPACE}/source; ./build.sh --product-name rk3568 --build-target all_ssl;同样以 rk3568 产品配置驱动只构建all_ssl目标。6 构建 ohos-sdk 所需工具链在完成 musl 与 OpenSSL 的交叉编译后需要执行一次完整的产品级 SDK 构建以产出ohos-sdk的完整工具链LLVM/Clang、SDK native 组件等供后续拷贝使用cd ${WORKSPACE}/source; ./build.sh --product-name ohos-sdk --ccache;--product-name ohos-sdk以ohos-sdk为产品名构建 SDK 形态的完整输出--ccache启用 ccache 编译缓存前置步骤 2.3 中已安装ccache可显著加速重复构建。7 组装 sysroot 并拷贝工具链构建完成后需要把散落在各输出目录的 musl、OpenSSL、LLVM 运行库等产物集中拷贝到OHOS_ROOT指定的目录组装成完整的 sysroot 与 Clang 工具链。OHOS_ROOT是你用于保存 OHOS 工具链的路径。# OHOS_ROOT环境变量指定为您用于保存 ohos 工具链的路径 export OHOS_ROOT/opt/buildtools/ohos_root; cd ${WORKSPACE}/source;7.1 组装 musl sysroot第一步创建 sysroot 目录骨架并依次合并四路 muslusr产物——out/sdk/obj下的 SDK 中间产物、sdk-native/os-irrelevant下的宿主无关 sysroot、以及 rk3568 两个架构目标的 musl 产物mkdir -p ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot cp -r out/sdk/obj/third_party/musl/usr ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/ \ cp -r out/sdk/sdk-native/os-irrelevant/sysroot/usr ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/ \ cp -r out/rk3568/ohos_clang_arm64/obj/third_party/musl/usr ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/ \ cp -r out/rk3568/ohos_clang_x86_64/obj/third_party/musl/usr ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/ \7.2 拷贝 OpenSSL 头文件与库将两个架构的 OpenSSL 生成头文件分别放入 sysroot 对应架构的 include 目录再将third_party/openssl/include/openssl中的源码头文件含macros.h补齐到aarch64-linux-ohos与x86_64-linux-ohos两个架构目录同时拷贝两个架构thirdparty/openssl的编译产物库cp -r out/rk3568/ohos_clang_x86_64/obj/third_party/openssl/build_all_generated/include/openssl ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/include/x86_64-linux-ohos \ cp -r out/rk3568/ohos_clang_arm64/obj/third_party/openssl/build_all_generated/include/openssl ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/include/aarch64-linux-ohos \ cp -r third_party/openssl/include/openssl/macros.h ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/include/aarch64-linux-ohos/openssl/ \ cp -r third_party/openssl/include/openssl/* ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/include/aarch64-linux-ohos/openssl/ \ cp -r out/rk3568/ohos_clang_arm64/thirdparty/openssl/* ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/lib/aarch64-linux-ohos/ \ cp -r out/sdk/sdk-native/os-specific/ohos/llvm/lib/aarch64-linux-ohos/lib* ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/lib/aarch64-linux-ohos/ \ cp -r third_party/openssl/include/openssl/macros.h ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/include/x86_64-linux-ohos/openssl/ \ cp -r third_party/openssl/include/openssl/* ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/include/x86_64-linux-ohos/openssl/ \ cp -r out/rk3568/ohos_clang_x86_64/thirdparty/openssl/* ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/lib/x86_64-linux-ohos/ \ cp -r out/sdk/sdk-native/os-specific/ohos/llvm/lib/x86_64-linux-ohos/lib* ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/lib/x86_64-linux-ohos/ \7.3 拷贝通用 OpenSSL 头文件与其余架构库接着补齐通用 include 目录供所有架构共享的 openssl 头文件并拷贝 x86_64、aarch64 的thirdparty/openssl库以及arm-linux-ohos32 位 ARM架构的 OpenSSL 库cp -r out/sdk/obj/third_party/openssl/build_all_generated/include/openssl ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/include \ cp -r third_party/openssl/include/openssl/* ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/include/openssl/ \ cp -r out/rk3568/ohos_clang_x86_64/thirdparty/openssl/* ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/lib/x86_64-linux-ohos/ \ cp -r out/rk3568/ohos_clang_arm64/thirdparty/openssl/* ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/lib/aarch64-linux-ohos/ \ cp -r out/rk3568/ohos_clang_arm64/thirdparty/openssl/* ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/lib/arm-linux-ohos/ \7.4 拷贝 LLVM 运行库与 libc拷贝 Linux 宿主相关与 OHOS 宿主相关的 LLVM 运行库、Clang 15.0.4 内置的架构运行库以及预置 Clang 中针对 OHOS 目标的libc动态库cp -r out/sdk/sdk-native/os-specific/linux/llvm/lib/aarch64-linux-ohos/* ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/lib/aarch64-linux-ohos/ \ cp -r out/sdk/sdk-native/os-specific/linux/llvm/lib/x86_64-linux-ohos/* ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/lib/x86_64-linux-ohos/ \ cp -r out/sdk/sdk-native/os-specific/ohos/llvm/lib/clang/15.0.4/lib/aarch64-linux-ohos/* ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/lib/aarch64-linux-ohos/ \ cp -r out/sdk/sdk-native/os-specific/ohos/llvm/lib/clang/15.0.4/lib/x86_64-linux-ohos/* ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/lib/x86_64-linux-ohos/ \ cp -r prebuilts/clang/ohos/linux-x86_64/llvm/lib/x86_64-linux-ohos/libc.* ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/lib/x86_64-linux-ohos/ \ cp -r prebuilts/clang/ohos/linux-x86_64/llvm/lib/aarch64-linux-ohos/libc.* ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/lib/aarch64-linux-ohos/;至此${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot已组装为完整的 OHOS sysroot包含usr/include/{aarch64,x86_64}-linux-ohos头文件目录与usr/lib/{aarch64,x86_64,arm}-linux-ohos库目录。7.5 拷贝宿主平台相关的 Clang 工具链sysroot 组装完成后还需把与宿主平台相关的预置 Clang 工具链拷贝到OHOS_ROOT/prebuilts/clang/ohos。这一步必须根据实际构建宿主平台选择对应的目录三条命令互斥只执行匹配你平台的那一条mkdir -p ${OHOS_ROOT}/prebuilts/clang/ohos; # 如果 mac arm 平台拷贝如下 cp -r prebuilts/clang/ohos/darwin-aarch64 ${OHOS_ROOT}/prebuilts/clang/ohos; # 如果 mac x86_64平台拷贝如下 cp -r prebuilts/clang/ohos/darwin-x86_64 ${OHOS_ROOT}/prebuilts/clang/ohos; # 如果 linux 平台 拷贝如下 cp -r prebuilts/clang/ohos/linux-x86_64 ${OHOS_ROOT}/prebuilts/clang/ohos;说明虽然本教程以 UbuntuLinux为例执行但拷贝命令兼容 macOS 宿主——这正是宿主平台无关部分 宿主平台相关部分分工的体现7.1~7.4 组装的是与宿主无关的 sysroot7.5 拷贝的是与宿主相关的 Clang 二进制两者共同构成完整的 OHOS 工具链可支撑在 Linux 或 macOS 上完成后续仓颉 SDK 的 OHOS 交叉构建。8 产物如何被仓颉 SDK 构建使用工具链就绪后回到三大构建指导产物以两种形式被消费8.1 作为 sysroot 与 Clang 交叉工具链在编译仓颉编译器、标准库、STDX 时传入--target-toolchain与--target-sysroot见 linux_ohos.mdexport ARCHx86_64 # 或aarch64 python3 build.py build -t release \ --product libs \ --target ohos-x86_64 \ --target-toolchain ${OHOS_ROOT}/prebuilts/clang/ohos/linux-${ARCH}/llvm/bin \ --target-sysroot ${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot;linux_cross_windows_ohos.md 与 macos_ohos.md 的用法与此一致编译仓颉运行时则以整个OHOS_ROOT作为--target-toolchain传入见 linux_ohos.md。8.2 用于最终验证 OHOS 目标产物SDK 打包完成后可用如下命令验证 OHOS 目标的编译能力见 linux_ohos.mdecho main() { println(\Hello, Cangjie\) } hello.cj # 鸿蒙PC/手机 cjc hello.cj --targetaarch64-linux-ohos -B${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/lib/aarch64-linux-ohos -L${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/lib/aarch64-linux-ohos # 模拟器 cjc hello.cj --targetx86_64-linux-ohos -B${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/lib/x86_64-linux-ohos -L${OHOS_ROOT}/out/sdk/obj/third_party/musl/sysroot/usr/lib/x86_64-linux-ohos # 应打印 # Hello, Cangjie-B与-L分别指定 OHOS 目标的库搜索路径与链接路径均指向本教程组装出的 sysroot。若两个目标都能正确输出Hello, Cangjie即证明 OHOS 工具链构建成功。9 常见问题与注意事项python找不到将repo脚本首行#!/usr/bin/env python改为#!/usr/bin/env python3repo sync 报身份信息错误同步前务必配置git user.name与git user.email首次下载量大、耗时长prebuilts_download.sh与repo sync均需下载大量数据请保证稳定网络国内环境建议配合华为镜像使用磁盘空间不足完整 OHOS 源码 多架构编译产物占用大建议 ≥200GB可在编译前用df -h确认余量内存不足建议 ≥8GB物理内存 交换空间并行编译时可适当增加交换空间平台目录选错7.5 节三条cp命令互斥务必按宿主平台linux / darwin-aarch64 / darwin-x86_64选择若使用官方构建镜像OHOS_ROOT通常预设为/opt/buildtools/ohos/ohos_root见 linux_ohos.md请勿覆盖该预设路径芯片架构本教程以 x86_64 宿主为例aarch64 宿主请参照 构建依赖工具 与 Linux OHOS 构建指导 中对应架构的环境变量设置ARCH、SDK_NAME等。完成本教程后OHOS_ROOT下即具备完整的out/sdk/obj/third_party/musl/sysroot与prebuilts/clang/ohos工具链可无缝进入 Linux OHOS 构建指导、Linux - Windows(OHOS) 交叉构建指导 或 macOS OHOS 构建指导 继续仓颉 SDK 的集成构建。赞分享文档教程构建工具【免费下载链接】cangjie_build仓颉SDK集成构建指导书。项目地址https://gitcode.com/Cangjie/cangjie_build点击查看免费下载相关推荐cangjie_build 实践指南:从零构建 ohos-x86_64/ohos-aarch64 OHOS 工具链cangjie_build 实践指南:从零构建 ohos x86_64/ohos aarch64 OHOS 工具链 本文为 Cangjie SDK 集成构建指导文档教程构建工具Linux 交叉构建 ohos-aarch64 仓颉 SDK环境搭建、全组件编译与打包完整指南Linux 交叉构建 ohos aarch64 仓颉 SDK环境搭建、全组件编译与打包完整指南 本文基于 Cangjie SDK 集成构建指导书cangji文档教程构建工具scrcpy 安卓投屏完整教程免 Root5 分钟用键鼠控制手机scrcpy 安卓投屏完整教程免 Root5 分钟用键鼠控制手机 scrcpy 是一款免费开源的工具专门解决安卓手机投屏到电脑这件事把手机屏幕实时镜像到音视频上一篇SRS 中的 MPEG-DASH 直播实践兼容性陷阱、MPD 模式演进与工程取舍下一篇SerenityOS GMLGUI Markup Language完全指南从语法、编译集成到自定义控件创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑