ubuntu下不使用管理员权限安装opencv

linux下正常安装opencv的步骤详见http://www.linuxidc.com/Linux/2013-06/86704.htm

因为不具有TH-2上的管理权限,没法在安装opencv的时候执行sudo make install这一步,也就是不能将相应的配置文件,库文件安装到对应的系统文件夹下。这就需要我们改动配置文件,使程序执行的时候可以找到配置文件和库文件真正所在的路径。

下面详解一下我的安装过程:

1.按照正常的途径安装,知道sudo make intall这一步。

2.根据对build文件夹下Makefile文件的查看,发现他会生成新文件夹apps,bin,lib,src等。

ubuntu下不使用管理员权限安装opencv_第1张图片
3. 而进去这些文件夹查看,发现这些文件夹下 发现里头都有makefile文件,于是我就逐一地在各个文件夹下执行make命令。
4.make完后,发现lib文件夹下已经有了各种动态链接库(其实我不太确认我在执行make之前这些动态链接库是否已经存在lib文件夹下了)
ubuntu下不使用管理员权限安装opencv_第2张图片
5.于是我尝试这些安装包中自带的样例文件(在sample/c文件夹下)

$icc `pkg-config --cflags opencv` -o mydelaunay delaunay.c `pkg-config --libs opencv`

报错

Package opencv was not found in the pkg-config search path.
Perhaps you should add the directory containing `opencv.pc'
to the PKG_CONFIG_PATH environment variable
No package 'opencv' found

根据对 http://stackoverflow.com/questions/15320267/package-opencv-was-not-found-in-the-pkg-config-search-path的参考,我自行写了一个opencv.pc文件,放在~/home/xxx/pkgconfig文件夹下(自己创建的文件夹),内容如下
prefix=~/home/xxx/OpenCV-2.1.0
exec_prefix=${prefix}
includedir=${prefix}/include
libdir=${exec_prefix}/build/lib

Name: opencv
Description: The opencv library
Version: 2.1.0
Cflags: -I${includedir}/opencv
Libs: -L${libdir} -lml -lcvaux -lhighgui -lcv -lcxcore
并在每次执行前,执行:
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:~/home/xxx/pkgconfig
6.此刻执行 $icc `pkg-config --cflags opencv` -o mydelaunay delaunay.c `pkg-config --libs opencv`就可以成功了。

遗憾:
虽然最终opencv安装成功了,但是由于版本太低,不能执行自己的代码。而且由于th-2中cmake的版本太低,导致不能安装高版本的opencv。另外cmake的源码安装需要管理员权限。目前没能找到合适的方法解决问题。
后来,执行程序只要能找到库文件的所在的路径即可。是不是我可以把别的电脑上安装成功的lib文件和include文件拷贝到th-2上,然后通过路径的设置,让程序找到这些库文件呢?当我尝试着这么做的时候,出现了交叉编译的问题(即在计算机A上编译成功的文件,给计算机B使用,出现文件格式不合适的问题)

你可能感兴趣的:(linux)