HarmonyOS 鸿蒙Next curl编译问题求帮助

发布于 1周前 作者 caililin 来自 鸿蒙OS

HarmonyOS 鸿蒙Next curl编译问题求帮助 按照此教程编译curl: https://gitee.com/openharmony/build/blob/master/docs/how-to-use-the-ndk-tools.md

问题:

CMake Error at /usr/local/Cellar/cmake/3.25.2/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:230 (message):

Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the

system variable OPENSSL_ROOT_DIR (missing: OPENSSL_CRYPTO_LIBRARY

OPENSSL_INCLUDE_DIR)

Call Stack (most recent call first):

/usr/local/Cellar/cmake/3.25.2/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE)

/usr/local/Cellar/cmake/3.25.2/share/cmake/Modules/FindOpenSSL.cmake:613 (find_package_handle_standard_args)

/CMakeLists.txt:476 (find_package)

openssl确定配置正确。

cmake不加这个选项能正常编译:-DCMAKE_TOOLCHAIN_FILE=/home/openharmony/ndk/ohos-sdk/linux/native/build/cmake/ohos.toolchain.cmake

加了就提示找不到openssl。请问这个问题要怎么解决?


更多关于HarmonyOS 鸿蒙Next curl编译问题求帮助的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

6 回复

这个问题通过在线提单进一步解决:https://developer.huawei.com/consumer/cn/support/feedback/#/,感谢您的反馈和支持

更多关于HarmonyOS 鸿蒙Next curl编译问题求帮助的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


使用vcpkg编译curl

请问楼主如何将libcurl.so引入项目的,我尝试了不带openssl的libcurl.so可以正常引入,我编译出来的openssl库文件引入项目也正常,但是编译出来的libcurl.so依赖openssl时,引入项目代用任意native方法程序就直接崩了,这是我CMakeList中引入的方式

target_include_directories(entry PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/openssl/${OHOS_ARCH}/include)
target_link_libraries(entry PUBLIC ${CMAKE_SOURCE_DIR}/../../../libs/${OHOS_ARCH}/libcrypto.so)
target_link_libraries(entry PUBLIC ${CMAKE_SOURCE_DIR}/../../../libs/${OHOS_ARCH}/libssl.so)

target_include_directories(entry PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/curl/${OHOS_ARCH}/include)
target_link_libraries(entry PUBLIC ${CMAKE_SOURCE_DIR}/../../../libs/${OHOS_ARCH}/libcurl.so)

请问楼主解决没?

openssl需要鸿蒙ndk编译的版本,

针对HarmonyOS(鸿蒙)Next curl编译问题,以下提供直接相关的解决方案概述:

在HarmonyOS环境中编译curl时,首先确保已正确配置HarmonyOS的SDK及NDK环境。curl的编译依赖于特定的编译器和库文件,这些在HarmonyOS中可能与传统的Linux或Android环境有所不同。

  1. 下载并解压curl源码:从curl官方网站或可信的开源仓库下载最新版本的curl源码,并解压到指定目录。

  2. 修改配置文件:进入curl源码目录,根据HarmonyOS的编译要求,可能需要修改configure脚本或相关Makefile文件,确保编译选项与HarmonyOS环境兼容。

  3. 编译curl:在修改完配置文件后,运行./configure命令进行配置检查,随后执行make命令进行编译。如遇特定错误,需根据错误信息调整编译选项或依赖库。

  4. 解决依赖问题:若编译过程中提示缺少依赖库,需根据HarmonyOS的包管理工具(如hb等)安装相应依赖。

  5. 验证编译结果:编译完成后,使用make test(如果可用)验证curl的功能是否完整。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部