【失败的经验】在linux下编译opencv for android
cd /home/ahfu
#选择opencv 3.4.6版本来编译
wget https://github.com/opencv/opencv/archive/3.4.6.tar.gz
tar -zxvf opencv-3.4.6.tar.gz
wget https://codeload.github.com/opencv/opencv_contrib/tar.gz/3.4.6
tar -zxvf opencv_contrib-3.4.6.tar.gz
#下载ndk
wget https://dl.google.com/android/repository/android-ndk-r14b-linux-x86_64.zip
unzip android-ndk-r14b-linux-x86_64.zip
export PATH=$PATH:/home/ahfu/android-ndk-r14b
# 注意,我一开始使用了NDK版本 android-ndk-r19c-linux-x86_64.zip,结果一堆问题
#下载ANDROID SDK
wget https://dl.google.com/android/repository/tools_r25.2.5-linux.zip
unzip tools_r25.2.5-linux.zip
export PATH=$PATH:/home/ahfu/
# 注意,一开始我下载了android sdk版本 android-sdk_r24.4.1-linux.tgz,有问题
#下载编译工具ninja
wget https://github.com/ninja-build/ninja/releases/download/v1.9.0/ninja-linux.zip
unzip ninja-linux.zip
export PATH=$PATH:/home/ahfu/
#建立编译目录
cd opencv-3.4.6
mkdir build && cd build
#开始config
python build_sdk.py /home/ahfu/opencv-3.4.6/build /home/ahfu/opencv-3.4.6/ --ndk_path=/home/ahfu/android-ndk-r14b --extra_modules_path=/home/ahfu/opencv_contrib-3.4.6/modules --sdk_path=/home/ahfu
#因为我的编译机不能连接互联网,所以在下载文件的阶段报错
#没关系,手动完成配置
cd o4a #前面的配置脚本已经生成了这个目录
ccmake ../..
#关闭很多不需要的选项
#BUILD_opencv_features2d=OFF
#CMAKE_BUILD_TYPE=Release
#按c, 按g
#呼唤忍者来编译
ninja
#最后看见
#[850/850] Linking CXX static library lib/armeabi-v7a/libopencv_tracking.a
#编译成功
ls -l lib/armeabi-v7a/
#android下的各个库都编译成功了
#明天继续写个程序验证能不能在android下面跑起来
=============================
2019-06-22补充:
以上编译过程并未完成,看起来该生成的.a都生成了,但是对应的include文件没有生产。
这时候opencv的程序找不到正确编译的include文件夹的话,无法编译通过。
请看我的后面一篇。
【失败的经验】在linux下编译opencv for android的更多相关文章
- linux下编译opencv
1.安装cmake:sudo apt-get install cmake 2.下载opencv-2.4.10.zip,解压 3.编译opencv cd /home/opencv-2.4.10 mkdi ...
- Linux下编译VLC for Android源代码总结
转:http://blog.chinaunix.net/uid-26611383-id-3678766.html 由于项目需要,需要一个在android平台能够支持RTSP协议的播放器,由于之前没有a ...
- 在fedora25x86下编译opencv的Android版本的过程记录
准备材料: 1. 32位的Fedora25(不建议使用64位系统----64位系统下也是可以编译的,这里为了简单起见,考虑使用32位操作系统.事实上,本人在64位操作系统下也做了尝试,也完成了编译.) ...
- linux下编译qt5.6.0静态库——configure配置
linux下编译qt5.6.0静态库 linux下编译qt5.6.0静态库 configure生成makefile 安装选项 Configure选项 第三方库: 附加选项: QNX/Blackberr ...
- Linux下编译安装Apache Http Server
Linux下编译安装Apache Http Server [TOC] 1.下载httpd-2.4.12.tar.bz2 wget http://mirror.bit.edu.cn/apache/htt ...
- Linux 下编译、安装、配置 QT
转自Linux 下编译.安装.配置 QT 注意:编译安装耗时费力,且很容易出错,要不断调整编译参数,不推荐使用,否则这将会是一个纠结痛苦的过程. 打算做嵌入式图像处理,计划方案嵌入式Linux+Ope ...
- linux下编译qt5.6.0静态库——configure配置(超详细,有每一个模块的说明)(乌合之众)
linux下编译qt5.6.0静态库 linux下编译qt5.6.0静态库 configure生成makefile 安装选项 Configure选项 第三方库: 附加选项: QNX/Blackberr ...
- linux下编译wpa_supplicant …
linux下编译wpa_supplicant 收藏 前一段时间只在vs2005下编译成功过.经过近一段时间的琢磨,今天终于在linux下成功编译了wpa_supplicant. 挺简单的事情折腾了这么 ...
- linux下编译qt5.6.0静态库(使用./configure --help来看看都有哪些参数。超详细,有每一个模块的说明。如果改变了安装的目录,需要到安装目录下的bin目录下创建文件qt.conf)(乌合之众)good
linux下编译qt5.6.0静态库 linux下编译qt5.6.0静态库 configure生成makefile 安装选项 Configure选项 第三方库: 附加选项: QNX/Blackberr ...
随机推荐
- LuoguB2105 矩阵乘法 题解
Content 给定一个 \(n\times m\) 的矩阵 \(A\) 和一个 \(m\times k\) 的矩阵 \(B\),求两个矩阵相乘得到的矩阵. \(n\times m\) 的矩阵 \(A ...
- MVC三种分页方法
View部分: @using WebApplication1.Models;分页方法1引包 @*@using PagedList.Mvc; @using WebApplication1.Models; ...
- TURN协议(RFC5766详解)
如果一台主机处于NAT后面,那么在一定条件下两台主机无法之间进行通讯.在这种条件下,那么使用中继服务提供通讯是有必要的. 这个规范定义了一个名为TURN(使用中继穿越NAT)的协议,它允许一台主机使用 ...
- js 将二维数组转为一维数组
方法一 使用ES的最新语法:Array.prototype.flat(). flat([dept]),参数 dept 为数组的深度,默认为1,根据传入的深度将数组展开. 对于不确定深度的数组,可以传入 ...
- Vim使用简介
Vim操作 Vim真的很酷:D 编辑模式 正常模式:在文件中四处移动光标进行修改 插入模式:插入文本 替换模式:替换文本 可视化(一般,行,块)模式:选中文本块 命令模式:用于执行命令 在不同的操作模 ...
- typora 基本使用和漂亮的主题样式
以下是使用博客园的markdown的效果: typora 基本使用和漂亮的主题样式 一.typora 基本使用 ps:文字排版,使用markdown nice 可以一键复制到公众号.知乎:https: ...
- 【LeetCode】767. Reorganize String 解题报告(Python)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.me/ 题目地址:https://leetcode.com/problems/reorganiz ...
- python学习第一天:window安装python开发环境完整篇
我是跟着廖雪峰老师的的博客来一步一步来进行学习和实践后记录下来的,讲的非常地详细,推荐大家一起学习https://www.liaoxuefeng.com/wiki/0014316089557264a6 ...
- 【转】GitHub 的 Pull Request 和 GitLab 的 Merge Request 有区别吗?
在 GitHub 上混久了,经常听到 Pull Request,在 GitLab 上混久了,则经常 提起 Merge Request ,然而它们之间有不同吗?为什么要用两个不同的名称? 要追溯这两个名 ...
- McGan: Mean and Covariance Feature Matching GAN
目录 概 主要内容 Mean Matching IPM prime dual Covariance Feature Matching IPM prime dual 算法 代码 Mroueh Y, Se ...