繁体   English   中英

在ARM上安装OpenCV 2.4.9

[英]Install OpenCV 2.4.9 on ARM

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

我有一个带Linux Debian的BeagleBone Black,我正在尝试使用 sh脚本安装OpenCV,但它很重(运行超过一天)。

我使用手册在Ubuntu x86上交叉编译OpenCV,运行正常,但现在我不知道确切需要复制哪些文件到ARM上以运行可执行C ++ OpenCv文件,有人可以帮助我吗?

如果要使用gnueabi在Ubuntu x86上进行全部编译,是否需要在ARM上安装OpenCV依赖项(例如build-essential,cmake,python ...)? 我想知道在BeagleBone Black上运行可执行的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!"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM