Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/138.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在臂上安装OpenCV 2.4.9_C++_Linux_Opencv_Cross Compiling_Beagleboneblack - Fatal编程技术网

C++ 在臂上安装OpenCV 2.4.9

C++ 在臂上安装OpenCV 2.4.9,c++,linux,opencv,cross-compiling,beagleboneblack,C++,Linux,Opencv,Cross Compiling,Beagleboneblack,在ARM上安装OpenCV的最佳方法是什么 我有一个带Linux Debian的BeagleBone Black,我正在尝试用sh脚本安装OpenCV,但它非常繁重(需要运行一天以上) 我在Ubuntu X86上使用手工编译OpenCV,运行正常,但现在我不知道我需要复制什么文件来运行可执行的C++ OpenCV文件,有人能帮助我吗? 如果使用gnueabi在我的Ubuntux86上编译所有内容,我需要在ARM上安装OpenCV依赖项(如build essential、cmake、python…

在ARM上安装OpenCV的最佳方法是什么

我有一个带Linux Debian的BeagleBone Black,我正在尝试用sh脚本安装OpenCV,但它非常繁重(需要运行一天以上)

我在Ubuntu X86上使用手工编译OpenCV,运行正常,但现在我不知道我需要复制什么文件来运行可执行的C++ OpenCV文件,有人能帮助我吗? 如果使用gnueabi在我的Ubuntux86上编译所有内容,我需要在ARM上安装OpenCV依赖项(如build essential、cmake、python…)?我想知道在我的BeagleBone Black上运行可执行C++ C++ OpenCV文件的更轻的方法。


非常感谢。

如果您只想运行OpenCV应用程序,那么您不需要开发工具(build essential、cmake、python、g++、…)

简短回答:您需要将所有OpenCV共享库(.so文件)复制到设备,以及OpenCV依赖的所有共享库

详细回答:运行应用程序可能不需要所有OpenCV共享库。一旦您编译了自己的OpenCV程序,您就可以使用
ldd
来确定它需要哪些OpenCV共享库,然后在每个库上再次使用
ldd
来确定它的依赖关系

可能会给您一些关于如何自动化此过程的想法:

#!/bin/bash 
# Author : Hemanth.HM
# Email : hemanth[dot]hm[at]gmail[dot]com
# License : GNU GPLv3
#

function useage()
{
    cat << EOU
Useage: bash $0 <path to the binary> <path to copy the dependencies>
EOU
exit 1
}

#Validate the inputs
[[ $# < 2 ]] && useage

#Check if the paths are vaild
[[ ! -e $1 ]] && echo "Not a vaild input $1" && exit 1 
[[ -d $2 ]] || echo "No such directory $2 creating..."&& mkdir -p "$2"

#Get the library dependencies
echo "Collecting the shared library dependencies for $1..."
deps=$(ldd $1 | awk 'BEGIN{ORS=" "}$1\
~/^\//{print $1}$3~/^\//{print $3}'\
 | sed 's/,$/\n/')
echo "Copying the dependencies to $2"

#Copy the deps
for dep in $deps
do
    echo "Copying $dep to $2"
    cp "$dep" "$2"
done

echo "Done!"
#/bin/bash
#作者:Hemanth.HM
#电子邮件:hemanth[dot]hm[at]gmail[dot]com
#许可证:GNU GPLv3
#
函数用法()
{
它提供了BB目标(内核,rootfs)和最新的OpenCV版本。