鸿蒙引入 OpenSSL 库和 Poco 库(编译、调用)

[复制链接]
发表于 2026-2-11 13:02:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
一、前期预备

      
  • 从 openHarmony SDK 官方发布渠道下载 SDK。
    我下载的版本是 version-Master_Version-OpenHarmony_4.1.6.5_dev-20240127_020213-ohos-sdk-full.tar.gz
    解压 SDK,得到 ohos_sdk 目次。可以看到 Linux 和 windows 两个平台的 SDK 目次,我们进入 Linux 目次。
  1. ohos@ubuntu20:~/tools/OH_SDK$ cd ohos-sdk
  2. ohos@ubuntu20:~/tools/OH_SDK/ohos-sdk$ ls
  3. linux  windows
  4. ohos@ubuntu20:~/tools/OH_SDK/ohos-sdk$ cd linux/
  5. ohos@ubuntu20:~/tools/OH_SDK/ohos-sdk/linux$ ls
  6. ets-linux-x64-4.0.1.2-Canary1.zip  native-linux-x64-4.0.1.2-Canary1.zip     toolchains-linux-x64-4.0.1.2-Canary1.zip
  7. js-linux-x64-4.0.1.2-Canary1.zip   previewer-linux-x64-4.0.1.2-Canary1.zip
复制代码
      
  • 解压 Linux 环境下的 OHOS SDK 工具包,得到对应工具目次。由于我们是 c/c++ 库的编译,我们只须要关注 native 目次,将其解压即可。
二、利用 ohos-sdk 编译 OpenSSL 库

      
  • 下载 openssl 官方源码,我利用的版本是3.0.12。
    设置须要的编译工具链环境变量。这里设置的是 ohos64bit 库的编译工具链,假如须要编译 ohos32bit 库请设置为 32bit 编译工具链。
  1. ohos@ubuntu20:~/openHarmony/openssl$ export OHOS_SDK=/home/ohos/tools/OH_SDK/ohos-sdk/linux #这里根据自己的SDK解压目录设置
  2. ohos@ubuntu20:~/openHarmony/openssl$ export AS=${OHOS_SDK}/native/llvm/bin/llvm-as
  3. ohos@ubuntu20:~/openHarmony/openssl$ export CC="${OHOS_SDK}/native/llvm/bin/clang  --target=aarch64-linux-ohos"
  4. ohos@ubuntu20:~/openHarmony/openssl$ export CXX="${OHOS_SDK}/native/llvm/bin/clang++  --target=aarch64-linux-ohos"
  5. ohos@ubuntu20:~/openHarmony/openssl$ export LD=${OHOS_SDK}/native/llvm/bin/ld.lld
  6. ohos@ubuntu20:~/openHarmony/openssl$ export STRIP=${OHOS_SDK}/native/llvm/bin/llvm-strip
  7. ohos@ubuntu20:~/openHarmony/openssl$ export RANLIB=${OHOS_SDK}/native/llvm/bin/llvm-ranlib
  8. ohos@ubuntu20:~/openHarmony/openssl$ export OBJDUMP=${OHOS_SDK}/native/llvm/bin/llvm-objdump
  9. ohos@ubuntu20:~/openHarmony/openssl$ export OBJCOPY=${OHOS_SDK}/native/llvm/bin/llvm-objcopy
  10. ohos@ubuntu20:~/openHarmony/openssl$ export NM=${OHOS_SDK}/native/llvm/bin/llvm-nm
  11. ohos@ubuntu20:~/openHarmony/openssl$ export AR=${OHOS_SDK}/native/llvm/bin/llvm-ar
  12. ohos@ubuntu20:~/openHarmony/openssl$ export CFLAGS="-fPIC -D__MUSL__=1"
  13. ohos@ubuntu20:~/openHarmony/openssl$ export CXXFLAGS="-fPIC -D__MUSL__=1"
复制代码
      
  • 实行 Configure 构建脚本。
  1. ohos@ubuntu20:~/openHarmony/openssl$ ./Configure linux-aarch64 --prefix=/home/ohos/openHarmony/openssl_install
  2.                 # 在需要选择系统的时候由于configure不识别ohos,因此我们需要使用Linux aarch64等价系统和cpu架构 为了方便打包,需要指定安装目录
  3. Configuring OpenSSL version 1.1.1t (0x1010114fL) for linux-aarch64
  4. Using os-specific seed configuration
  5. Creating configdata.pm
  6. Creating Makefile
  7. **********************************************************************
  8. ***                                                                ***
  9. ***   OpenSSL has been successfully configured                     ***
  10. ***                                                                ***
  11. ***   If you encounter a problem while building, please open an    ***
  12. ***   issue on GitHub <https://githu
复制代码
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表