fedora15 + OpenCv2.2 + eclipse

一  安装OpenCv

首先说明一点,我用的fedora15是64位系统。

方法一:网上很多方法都是手动下载openCv安装包,然后解压,然后Cmake,然后配置路径。这个方法应该是通用到,在Opencv中文论坛里也是这么说得。

这里写出在fedorar15下到安装opencv2.2步骤(本人采用下面一种方法,更为简单,但是对于视频处理好像不行,需要处理视频到朋友可以参考opencv中文论坛上上到另一个文章http://www.opencv.org.cn/forum/viewtopic.php?f=1&t=4670),以备需要到朋友查阅。

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

安装依赖包:(need rpmfusion)
<code bash>
yum-builddep opencv
yum install libv4l-devel ffmpeg-devel
</code>
解压Opencv2.2到某个目录,然后
<code bash>
cd ~/projects/opencv # the directory containing INSTALL, CMakeLists.txt etc.
</code>
此时要打patch,否则编译不能通过
patch download: [[http://ge.tt/6D5aI6o?c]]
<code bash>
# gcc4.6
patch -Np3 -i "../opencv_patch/gcc46.patch"
# kernel 2.6.38
patch -Np1 -i "../opencv_patch/v4l_2.6.38.patch"
# https://code.ros.org/trac/opencv/ticket/731
patch -Np0 -i "../opencv_patch/ptrcvcapture.patch"
</code>
打完patch后
<code bash>
mkdir release
cd release
cmake -D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D CMAKE_SKIP_RPATH=ON \
-D WITH_XINE=ON \
-D WITH_QT=ON \
-D WITH_UNICAP=OFF \
-D BUILD_EXAMPLES=ON \
-D BUILD_TESTS=OFF \
-D INSTALL_C_EXAMPLES=ON \
-D INSTALL_PYTHON_EXAMPLES=ON \
..
</code>
WITH_QT选项是让HighGUI采用QT后端,没太大用处,可以不用。

如果一切正常就可以进行下一步make了
<code>
make
sudo make install #安装,可以不选择安装
</code>
安装后进行环境配置:
<code bash>
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
sudo ldconfig
</code>
然后将两个export语句放入''.profile''中

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

方法二(推荐):

在终端中使用yum:

<code bash>
yum install opencv opencv-python opencv-devel opencv-devel-docs
</code>(安装成功后会有/usr/share/opencv/samples这个目录。我第一次安装提示成功了就没有这个,重新安装后才有)
修改 ''/usr/lib64/pkgconfig/opencv.pc'' 在Libs最后添加 "-lm"

进入 ''/usr/share/opencv/samples/c'' 目录,make ,成功!然后可以运行里面到程序。

或者进入cpp目录,g++ `pkg-config --cflags --libs opencv` drawing.cpp -o draw  然后运行./draw。如果提示没有头文件,root下ldconfig。

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


二  在ecplise下建立工程

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

引用别人到一个方法:http://www.cnblogs.com/yangyangcv/archive/2011/04/20/2022359.html

1)打开Eclipse,File->New->C++Project, 输入Project Name,比如 opencvTest,在Project Type里选 Executable下的Hello World C++ Project,一路Next下去直到Finish。 此时,Eclipse为我们创建了一个名为opencvTest.cpp的文件。

2)我们以opencv自带的drawing.cpp为例。 进入之前建立的opencv2_2_SRC,进入samples->cpp,打开drawing.cpp,将全部内容拷贝到opencvTest.cpp

3)与windows下使用VisualStudio类似,我们需要告诉项目include路径,lib路径以及相应的lib文件。在Eclipse左侧Project Explorer里找到刚才创建的opencvTest,在上面右击,选择Properties, C/C++ Build->Settings->GCC C++Compiler->Includes,添加路径/usr/local/include 注意:因为在drawing.cpp写的是#include<opencv2/core/core.hpp>,因此我们添加路径时只需添加到/usr/local/include这一层,而不需要到/usr/local/include/opencv2这一层。继续设置lib路径。在GCC C++Linker->Libraries里,下面的Library search path里添加/usr/local/lib 在上面的Libraries里添加opencv_cv  opencv_cxcore  opencv_highgui。注意:我们在/usr/local/lib下可以看到libopencv_highgui.so libopencv_cv.so  libopencv_cxcore.so等文件,但我们在Eclipse这里只要填opencv_cv opencv_cxcore  opencv_highgui就好了,不要前面的lib和后面的.so

4) 在项目opencvTest上右击,选择BuildProject,成功后Run As Local C/C++ Application,应该可以看到opencv画出来的美丽东西啦!

此外,我在网上搜索时,看到很多人说安装完opencv后,需要在/etc/ld.so.conf文件里加上一行/usr/local/lib,运行命令 sudo ldconfig之类的,但我自己试下来并不需要做这些,make install时系统应该把这些都做好了。

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

上面列出到方法中第三步较为繁琐,可以用这个简单点到方法:建立工程后,在project->c++ build->setting里面将c++ complier中的Miscellaneous中添加`pkg-config --cflags opencv`在c++link同一位置加上`pkg-config --libs opencv`,至此可成功编译运行。   这里到是反引号,在数字键1旁边那个。


总结一下:lib文件位置:32位系统:/usr/local/lib         64位系统:/usr/lib64

                    .h头文件:32位系统:/usr/local/include/    64位系统:/usr/include/opencv

如果还是不成功请大家使用find命令来找找,然后配置到eclipse里即可。

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

下面是我觉得比较有帮助到几个链接,感谢之!

http://www.2cto.com/os/201109/104671.html

http://www.cnblogs.com/yangyangcv/archive/2011/04/20/2022359.html




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章