mirror of
https://mirror.suhoan.cn/https://github.com/EasyTier/EasyTier.git
synced 2025-12-12 20:57:26 +08:00
66 lines
2.6 KiB
Markdown
66 lines
2.6 KiB
Markdown
# OpenHarmonyOS 项目构建说明
|
||
|
||
本项目需要 OpenHarmonyOS SDK 和多个基础库支持才能成功编译。请按照以下步骤准备构建环境。
|
||
如存在任何编译问题,请前往[Easytier for OHOS](https://github.com/FrankHan052176/EasyTier)
|
||
|
||
## 前置要求
|
||
|
||
### 1. 安装 OpenHarmonyOS SDK
|
||
|
||
**SDK 下载链接**:
|
||
[OpenHarmony 每日构建版本](https://ci.openharmony.cn/workbench/cicd/dailybuild/dailylist)
|
||
|
||
**版本要求**:
|
||
请选择版本号 **小于 OpenHarmony_5.1.0.58** 的 ohos-sdk-full 版本
|
||
|
||
下载后请解压到适当位置(如 `/usr/local/ohos-sdk`),并记下安装路径。
|
||
|
||
### 2. 编译依赖库
|
||
在编译本项目前,需要先自行编译以下四个基础库:
|
||
|
||
- glib
|
||
- libffi
|
||
- pcre2
|
||
- zlib
|
||
|
||
这些库需要使用 OpenHarmonyOS 的工具链进行交叉编译。
|
||
|
||
## 环境配置
|
||
|
||
### 1. 设置环境变量
|
||
创建并运行以下脚本设置环境变量(请根据您的实际 SDK 安装路径修改):
|
||
|
||
```bash
|
||
#!/bin/bash
|
||
# 请修改为您的实际 SDK 路径
|
||
export OHOS_SDK_PATH="/usr/local/ohos-sdk/linux"
|
||
export OHOS_TOOLCHAIN_DIR="${OHOS_SDK_PATH}/native/llvm"
|
||
export TARGET_ARCH="aarch64-linux-ohos"
|
||
export OHOS_SYSROOT="${OHOS_SDK_PATH}/native/sysroot"
|
||
export CC="${OHOS_TOOLCHAIN_DIR}/bin/aarch64-unknown-linux-ohos-clang"
|
||
export CXX="${OHOS_TOOLCHAIN_DIR}/bin/aarch64-unknown-linux-ohos-clang++"
|
||
export AS="${OHOS_TOOLCHAIN_DIR}/bin/llvm-as"
|
||
export AR="${OHOS_TOOLCHAIN_DIR}/bin/llvm-ar"
|
||
export LD="${OHOS_TOOLCHAIN_DIR}/bin/ld.lld"
|
||
export RANLIB="${OHOS_TOOLCHAIN_DIR}/bin/llvm-ranlib"
|
||
export STRIP="${OHOS_TOOLCHAIN_DIR}/bin/llvm-strip"
|
||
export OBJDUMP="${OHOS_TOOLCHAIN_DIR}/bin/llvm-objdump"
|
||
export OBJCOPY="${OHOS_TOOLCHAIN_DIR}/bin/llvm-objcopy"
|
||
export NM="${OHOS_TOOLCHAIN_DIR}/bin/llvm-nm"
|
||
export CFLAGS="-fPIC -D__MUSL__=1 -march=armv8-a --target=${TARGET_ARCH} -Wno-error --sysroot=${OHOS_SYSROOT} -I${OHOS_SYSROOT}/usr/include/${TARGET_ARCH}"
|
||
export CXXFLAGS="${CFLAGS}"
|
||
export LDFLAGS="--sysroot=${OHOS_SYSROOT} -L${OHOS_SYSROOT}/usr/lib/${TARGET_ARCH} -fuse-ld=${LD}"
|
||
export PKG_CONFIG_PATH="${OHOS_SYSROOT}/usr/lib/pkgconfig:${OHOS_SYSROOT}/usr/local/lib/pkgconfig"
|
||
export PKG_CONFIG_LIBDIR="${OHOS_SYSROOT}/usr/lib:${OHOS_SYSROOT}/usr/local/lib"
|
||
export PKG_CONFIG_SYSROOT_DIR="${OHOS_SYSROOT}"
|
||
export HOST_TRIPLET="${TARGET_ARCH}"
|
||
export BUILD_TRIPLET="$(dpkg-architecture -qDEB_BUILD_GNU_TYPE)"
|
||
export PATH="${OHOS_TOOLCHAIN_DIR}/bin:${PATH}"
|
||
|
||
echo "OpenHarmonyOS 环境变量已设置:"
|
||
echo "OHOS_SDK_PATH: ${OHOS_SDK_PATH}"
|
||
echo "OHOS_TOOLCHAIN_DIR: ${OHOS_TOOLCHAIN_DIR}"
|
||
echo "OHOS_SYSROOT: ${OHOS_SYSROOT}"
|
||
echo "PKG_CONFIG_PATH: ${PKG_CONFIG_PATH}"
|
||
echo "PATH: ${PATH}"
|