HarmonyOS 鸿蒙Next 交叉编译第三方so库失败

发布于 1周前 作者 songsunli 最后一次编辑是 5天前 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 交叉编译第三方so库失败

编译第三方库mupdf

github地址:https://github.com/ArtifexSoftware/mupdf

正常make 编译是没有问题的。

参考鸿蒙文档:Make构建工程配置HarmonyOS编译工具链

参考:https://gitee.com/openharmony-sig/tpc_c_cplusplus/blob/master/lycium/doc/ohos_use_sdk/OHOS_SDK-Usage.md

按照以上文档内容 ,设置鸿蒙ohos sdk 环境变量后

export OHOS_SDK=/opt/hmtool/ohos-sdk/linux
export AS=${OHOS_SDK}/native/llvm/bin/llvm-as
export CC="${OHOS_SDK}/native/llvm/bin/clang  --target=aarch64-linux-ohos"
export CXX="${OHOS_SDK}/native/llvm/bin/clang++  --target=aarch64-linux-ohos"
export LD=${OHOS_SDK}/native/llvm/bin/ld.lld
export STRIP=${OHOS_SDK}/native/llvm/bin/llvm-strip
export RANLIB=${OHOS_SDK}/native/llvm/bin/llvm-ranlib
export OBJDUMP=${OHOS_SDK}/native/llvm/bin/llvm-objdump
export OBJCOPY=${OHOS_SDK}/native/llvm/bin/llvm-objcopy
export NM=${OHOS_SDK}/native/llvm/bin/llvm-nm
export AR=${OHOS_SDK}/native/llvm/bin/llvm-ar
export CFLAGS="-fPIC -D__MUSL__=1"
export CXXFLAGS="-fPIC -D__MUSL__=1" 

执行make 命令,报错:

    OBJCOPY build/release/resources/fonts/urw/Dingbats.cff.o
ld.lld: error: target emulation unknown: -m or at least one .o file required
make: *** [Makefile:153:build/release/resources/fonts/urw/Dingbats.cff.o] 错误 1 

该如何解决?


更多关于HarmonyOS 鸿蒙Next 交叉编译第三方so库失败的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

有配置Configure的配置不, 比如:

./Configure linux-aarch64 --prefix=/home/ohos/openHarmony/openssl_instrall

更多关于HarmonyOS 鸿蒙Next 交叉编译第三方so库失败的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next环境中交叉编译第三方so库失败,通常可能由以下几个原因引起:

  1. 工具链不匹配:确保使用的交叉编译工具链与鸿蒙系统的目标架构一致。例如,如果目标设备是ARM架构,需要使用适配ARM架构的交叉编译工具链。

  2. 构建脚本问题:检查Makefile或CMakeLists.txt等构建脚本,确保编译选项、链接选项以及目标架构设置正确。

  3. 依赖库缺失:第三方so库可能依赖其他库文件,确保这些依赖库已正确安装,并且在交叉编译时能够正确链接。

  4. ABI不兼容:确认第三方so库的ABI(应用程序二进制接口)与鸿蒙系统的ABI兼容。如果不兼容,可能需要重新编译或寻找兼容版本的库。

  5. 环境变量设置:检查环境变量设置,如PATH、LD_LIBRARY_PATH等,确保交叉编译工具链和依赖库路径正确设置。

  6. 权限问题:确保在编译过程中具有足够的权限访问和写入相关文件。

如果以上检查均无误,但问题依旧存在,可能是特定于您项目或环境的复杂问题。此时,建议直接联系官网客服获取更专业的帮助。官网地址是:https://www.itying.com/category-93-b0.html

回到顶部