android - 如何在 Android(NDK) 中使用 CPR 库?
问题描述
我正在尝试在 android中使用心肺复苏术。这是我src/main/cpp
的目录结构:
cpr/
native-lib.cpp
CMakeLists.txt
注意:cpr/目录是通过运行这个命令生成的git clone --recurse-submodules https://github.com/whoshuu/cpr.git
这是目录中的CMakeLists.txt
内容src/main/cpp
:
cmake_minimum_required(VERSION 3.4.1)
add_library(
native-lib
SHARED
native-lib.cpp
)
find_library(
log-lib
log
)
add_subdirectory(cpr)
target_link_libraries(
native-lib
cpr
${log-lib}
)
但是当我构建和运行代码时出现这个错误:
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)
解决方案
您可以先看看这个stack-overflow
答案:访问参考 -查找 open-ssl。
如果您使用的是 Linux-OS - 这很有效!您可以open-ssl
通过终端安装:
sudo apt-get install libssl-dev
否则,您必须解决如下:您必须在 中打开CMakeCache.txt
文件source-directory
,找到该行:
- OPENSSL_INCLUDE_DIR:PATH=OPENSSL_INCLUDE_DIR-NOTFOUND
访问参考:find-open-ssl,然后将其更改为 source-directory 中的 openssl 位置,如下所示:
- OPENSSL_INCLUDE_DIR:PATH=/usr/local/opt/openssl/include
如需进一步了解详情:请访问参考资料-open -ssl-during-cmake
推荐阅读
- ruby-on-rails - 与 Rails 6 和 minitest 并行运行测试时,文件操作相关测试失败
- laravel - 如何将数组传递给 Laravel Route 参数
- postgresql - 加权随机选择
- python - 熊猫 read_xml 缺少数据
- c++ - 如何使用 tm struct 查找上个月的开始?
- matlab - 强制matlab不要暂停警告
- android - 点击时使轮播卡全屏
- java - 无法使用带有球衣 2 的文件执行 multipart/form-data 请求。错误 400
- ruby-on-rails - Bullet::Notification::UnoptimizedQueryError on rails 规范
- command-line - 在awk中使用多个字段分隔符重命名多个文件