PCL-1.9.1 for Android ndk21编译

PCL-1.9.1 for Android ndk21编译

说明

之所以记录下自己编译android版的pcl过程,主要原因是:

  1. 按照https://github.com/bashbug/pcl-for-android说明,无法完成编译,报错原因多方面,主要原因是conan的公共仓库https://conan.bintray.com已经失效,部分依赖的下载地址失效
  2. 我需要基于R21版NDK编译出来的PCL库,从而兼容其他使用了R21版的NDK模块;之前在windows下使用了别人编译好的1.8.0版本的pcl库,该版本的pcl库支持NDK16,不支持NDK21。
  3. 我的开发环境在windows下,因此,需要整理出可以在windows下使用PCL库的配置

故此,通过交叉编译,编译出基于r21版本NDK的1.9.1版本的pcl库,并在windows下使用Android studio成功编译使用pcl库的功能。

环境

操作系统:Ubantu18.04.6 LTS

Python:3.6.9

cmake:3.10.2

conan:1.44.1

GCC:8.4.0

git:2.17.1

创建虚拟环境

如果不想破坏当前的编译环境,可以使用venv创建一个虚拟环境:

mkdir pcl-1.9.1
cd pcl-1.9.1
python -m venv venv
source venv/bin/acticate

当然,也可以不创建虚拟环境,直接在当前环境下进行。虚拟环境的好处就是不会破坏当前的各项配置。

安装所需环境
sudo apt install cmake git make ninja python3-pip
sudo pip3 install conan

由于conan默认的仓库https://conan.bintray.com实效,因此,要确保conan使用的版本较新,并导入新的根证书,才可以正常使用conan仓库。

安装最新的根证书
conan config install https://github.com/conan-io/conanclientcert.git
设置conan仓库
conan remote add conan-center https://center.conan.io
conan remote list #查看设置是否成功
conan-center: https://center.conan.io [Verify SSL: True]#查询到的仓库地址
拉取项目
git clone https://github.com/bashbug/pcl-for-android.git
修改NDK版本
  1. 修改profile中的ndk版本

​ 修改conan-profile下面的文件,把[build-requires]下面的android-toolchain/r20@bashbug/stable修改为android-toolchain/r21@bashbug/stable即可。

  1. 修改android-toolchain中的ndk版本

​ 打开conanfiles/android-toolchain/conanfile.py,修改version = "r20"为version = “r21”

修改boost源码下载地址

打开conanfiles/boost/conanfile.py,修改source(self)方法的内容如下:

tools.get("https://boostorg.jfrog.io/artifactory/main/release/{}/source/{}.tar.gz".format(self.version, self.folder_name
  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值