https://blog.csdn.net/ipfpm/article/details/81132144

【ubuntu】Ubuntu中Android SDK下载跟配置 android24的版本

(1)  安装ADNORID SDk环境

https://developer.android.com/studio

1.1 安装JAVA环境

https://cloud.tencent.com/developer/article/1162527

https://www.howtoing.com/how-to-install-java-with-apt-on-ubuntu-18-04

OpenJDK 8

Java 8是目前的长期支持版本,虽然公共维护在2019年1月结束,但仍然得到广泛支持。要安装OpenJDK 8,请执行以下命令:

sudo apt install openjdk-8-jdk

验证这是与安装

java -version

也可以只安装JRE,你可以通过执行sudo apt install openjdk-8-jre 。

OpenJDK 10/11

Ubuntu的存储库包含一个安装Java 10或11的软件包。在2018年9月之前,该软件包将安装OpenJDK 10.一旦Java 11发布,该软件包将安装Java 11。

要安装OpenJDK 10/11,请执行以下命令:

sudo apt install openjdk-11-jdk

要仅安装JRE,请使用以下命令:

sudo apt install openjdk-11-jre

接下来,让我们看看如何安装Oracle的官方JDK和JRE。

1.2 配置JAVA_HOME

设置JAVA_HOME环境变量

许多使用Java编写的程序使用JAVA_HOME环境变量来确定Java安装位置。

要设置此环境变量,请首先确定Java的安装位置。使用update-alternatives命令:

$ sudo update-alternatives --config java

此命令显示Java的每个安装及其安装路径:

There are 3 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                            Priority   Status
------------------------------------------------------------
* 0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1101 auto mode
1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1101 manual mode
2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode
3 /usr/lib/jvm/java-8-oracle/jre/bin/java 1081 manual mode Press <enter> to keep the current choice[*], or type selection number:

在这种情况下,安装路径如下:

  1. OpenJDK 11位于 /usr/lib/jvm/java-11-openjdk-amd64/bin/java.
  2. OpenJDK 8位于/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
  3. Oracle Java 8位于/usr/lib/jvm/java-8-oracle/jre/bin/java

从您想要的安装中复制路径。然后使用nano或您喜欢的文本编辑器打开/etc/environment

$ sudo nano /etc/environment

在此文件的末尾,添加以下行,确保使用您自己复制的路径替换突出显示的路径:

/etc/environment

JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64/bin/java"

修改此文件将为系统上的所有用户设置JAVA_HOME路径。

保存文件并退出编辑器。

现在重新加载此文件:

$ source /etc/environment

验证是否已设置环境变量:

$ echo $JAVA_HOME

您将看到刚刚设置的路径:

/usr/lib/jvm/java-11-openjdk-amd64/bin/java

其他用户需要执行命令source /etc/environment或注销并重新登录才能应用此设置。

1.3 下载

https://blog.csdn.net/opengl_es/article/details/80184519

解压后,出现 tools 目录,将其放入一个空的 SDK 待安装目录下,开始安装。

二、列出可安装组件包

使用快捷键 CTRL + ALT + T 打开 Console 控制端,进入上面解压出来的 tools 目录下的 bin 目录,找到 sdkmanager ,

执行如下命令

./sdkmanager --list ( ../android list sdk  已过时)

三、安装组件包

接下来,选择上面的 PATH 列内容进行安装,命令如下:

$ ./sdkmanager "system-images;android-27;google_apis;x86"

./sdkmanager  "双引号中是上面的path"

./sdkmanager "build-tools;28.0.0"
./sdkmanager "ndk-bundle"
./sdkmanager "ndk;20.0.5594570"
./sdkmanager "platforms;android-28"
./sdkmanager "sources;android-28"
./sdkmanager "system-images;android-28;google_apis;x86_64"

2 编译opencv以及opencv_contrib

https://www.cnblogs.com/klchang/p/7563494.html

本文以编译opencv 3.3.0 和 opencv_contrib 3.3.0为例,系统为 Linux x64 (Fedora 21),具体步骤如下:

1. 下载 Source code zip 压缩包

从下面网址,选择 opencv 3.3.0 Source code 下载 
https://github.com/opencv/opencv/releases

从下面网址,选择下载与 opencv 3.3.0 对应的 opencv_contrib 3.3.0 
https://github.com/opencv/opencv_contrib/releases

注意:opencv和opencv_contrib 版本必须保持一致,否则可能会出现编译错误。

2. 下载 build-opencv-for-android 开源代码

$ cd /mnt/work
$ git clone https://github.com/tzutalin/build-opencv-for-android.git
$ cd build-opencv-for-android

3. 解压源码包并重命名

将opencv-3.3.0.zip 和 opencv_contrib-3.3.0.zip 都解压到下载的build-opencv-for-android 开源代码 所在目录 /mnt/work/build-opencv-for-android 。

$ unzip opencv-3.3.0.zip -d /mnt/work/build-opencv-for-android
$ unzip opencv_contrib-3.3.0.zip -d /mnt/work/build-opencv-for-android
$ cd /mnt/work/build-opencv-for-android
$ mv opencv-3.3.0 opencv
$ mv opencv_contrib-3.3.0 opencv_contrib

4. 修改 build-opencv-for-android 开源代码中 build-android-opencv.sh

修改内容如下:

修改 第 6 行代码:

declare -a ANDROID_ABI_LIST=("x86" "x86_64" "armeabi" "arm64-v8a" "armeabi-v7a" "mips" "mips64")

declare -a ANDROID_ABI_LIST=("armeabi-v7a")

3 错误

opencv_contrib/modules/xfeatures2d/src/boostdesc.cpp:653:20: fatal error: 'boostdesc_bgm.i' file not found

下载这些文件

xfeatures2d/boostdesc: Download failed: 7;"Couldn't connect to server"

下载 对应的文件

放到

build-opencv-for-android\opencv_contrib\modules\xfeatures2d\cmake

build-opencv-for-android\opencv_contrib\modules\xfeatures2d\src

5. 执行脚本 build-android-opencv.sh

$ ./build-android-opencv.sh /mnt/work/android/android-sdk-linux/ndk-bundle

注:build-android-opencv.sh脚本的通用的执行命令格式为“./build-android-opencv.sh [NDK_ROOT]”,其中,参数NDK_ROOT是可选的,表示Android Native Development Kit (NDK) 顶层目录,如果没有提供,则会试图寻找环境变量 ANDROID_NDK。

6 在Android中使用

在mk文件中加入

# OpenCV
OPENCV_CAMERA_MODULES:=on
OPENCV_INSTALL_MODULES:=on
OPENCV_LIB_TYPE:=STATIC
#include D:/project\Android\OpenCV-2.4.10-android-sdk\sdk\native\jni\OpenCV.mk
#include /software/OpenCV-android-sdk/sdk/native/jni/OpenCV.mk #without opencv_contrib
include /software/build-opencv-for-android/android_opencv/opencv/sdk/native/jni/OpenCV.mk #with opencv_contrib

7 问题2

terminate called after throwing an instance of 'cv::Exception'
what(): OpenCV(3.4.3-dev) /home/zhourui/Software/opencv_contrib/modules/xfeatures2d/src/sift.cpp:1205: error: (-213:The function/feature is not implemented) This algorithm is patented and is excluded in this configuration; Set OPENCV_ENABLE_NONFREE CMake option and rebuild the library in function 'create'

https://zhuanlan.zhihu.com/p/48854990

cmake -DOPENCV_EXTRA_MODULES_PATH=<opencv_contrib>/modules -DOPENCV_ENABLE_NONFREE=ON

Ubuntu 上编译opencv_contrib模块for Android的更多相关文章

  1. 【转】Ubuntu 上编译Android出现cannot find -lstdc++解决办法

    [转]Ubuntu 上编译Android出现cannot find -lstdc++解决办法 在Ubuntu 12.04 x86_64机器上编译Android出现下面错误,是因为找不到32bit的li ...

  2. 在ubuntu上编译chrome

    在ubuntu上编译chrome 在ubuntu上编译chrome 红心地瓜 1.获取代码 1)下载tarball,http://chromium-browser-source.commondatas ...

  3. Android5.0 Gallery2上编译Gallery模块出错

    Android5.0 Gallery2上编译Gallery模块出错 时间:2015-05-05 19:32:57      阅读:105      评论:0      收藏:0      [点我收藏+ ...

  4. (原)ubuntu上编译PANet/Detectron.pytorch时-std=c99的错误

    转载请注明出处: https://www.cnblogs.com/darkknightzh/p/10494787.html 在ubuntu上编译PANet/Detectron.pytorch时,总提示 ...

  5. Qt+MPlayer音乐播放器开发笔记(一):ubuntu上编译MPlayer以及Demo演示

    前言   在ubuntu上实现MPlayer播放器播放音乐.   Demo                Mplayer   MPlayer是一款开源多媒体播放器,以GNU通用公共许可证发布.此款软件 ...

  6. .NET跨平台:在Linux Ubuntu上编译coreclr/corefx/dnx(20150617)

    编译时间:北京2015年6月17日上午 操作系统:Ubuntu 14.04.2 LTS Mono版本:Mono JIT compiler version 4.3.0 (master/3445ac5 T ...

  7. Ubuntu+NDK编译openssl(为了Android上使用libcurl且支持HTTPS协议)

    为了Android上使用libcurl且支持HTTPS协议,需要依赖openssl,因此先来了解一下如何编译OpenSSL1.编译ARM下的共享库(默认的)我使用的是guardianproject的o ...

  8. 在Linux Ubuntu上编译DNX

    DNX是.NET Execution Environment,前身是XRE,XRE的前身是KRuntime,项目网址:https://github.com/aspnet/DNX . 签出DNX的代码: ...

  9. 在64位Ubuntu上编译32位程序常见错误

    问       题1: 找不到头文件 asm/errno.h 解决办法 : [/usr/lib/gcc$ ]sudo ln -s x86_64-linux-gnu/asm asm 问题2:找不到gcc ...

随机推荐

  1. 【Swagger2】解决swagger文档地址请求404的问题

    一.出现的问题背景 某个项目,本地启动后,访问swagger文档地址可以访问到, http://localhost:8203/doc.html.但是部署到开发环境就访问不到,报404资源找不到的问题 ...

  2. centos7 升级最新版内核 并安装 bcc-tools

    centos7 升级最新版内核 升级系统 [root@jikeshijian ~]# yum update -y 安装 ELRepo [root@jikeshijian ~]# rpm --impor ...

  3. Docker容器的简单使用

    1. docker的使用 1> 创建容器 创建并启动容器: docker run -it -name 容器名 镜像: 版本  /bin/sh(bash) 创建并不启动容器:docker crea ...

  4. python正则表达式(2)--编译正则表达式re.compile

    编译正则表达式-- re.compile 使用re的一般步骤是先将正则表达式的字符串形 式编译为pattern实例,然后使用pattern实例处理文本并获取匹配结果(一个Match实例(值为True) ...

  5. 使用idea创建项目如何忽略iml文件

    在图中圈出的输入栏中输入“*.iml;”,点下OK就可以了,如图进入idea项目窗口,如图 点下file,进入file菜单窗口,如图 点下settings,进入到settings窗口,如图 在输入框f ...

  6. cmds在线重定义增加列

    --输出信息采用缩排或换行格式化 EXEC DBMS_METADATA.set_transform_param(DBMS_METADATA.session_transform, 'PRETTY', T ...

  7. wordpress调用指定tag的文章

    前面的文章wordpress调用指定分类文章如何实现有网友回复要如何调用指定tag的文章,原理是类似的,有两种方法,随ytkah一起来看看 1.第一种 <?php $args=array( 't ...

  8. css绘制各种图形,三角形,长方形,梯形

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAA8cAAADVCAIAAAD1mxUAAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWX ...

  9. UI系统的三个主要关系

    1.UI的结构.组织和组件.布局.渲染效率:(系统内置的组件有哪些?) 2.UI与事件的关系: 3.UI与数据的关系:

  10. 使用cookie登录网盘账号

    ①使用Chrome浏览器登录百度网盘网页版 https://pan.baidu.com/ ②查看当前使用的cookie ③获取BDUSS 注意是全选复制,不要直接复制,会不全的. ④获取STOKEN ...