在ubuntu中编译opencv程序

时间:2013-01-24 17:15:42

标签: ubuntu opencv compilation makefile

我在ubuntu 12.04上安装了opencv 2.4.2。我想知道如何在ubuntu中编译用c ++编写的opencv程序?另外,使用'make file'有什么好处?我怎么编译使用make-file?

2 个答案:

答案 0 :(得分:3)

makefile是一种编译项目的简单方法,无需每次都指定编译和链接指令。它以以下格式构建为一系列规则:

target:dependencies
[tab] rule

其中规则必须以制表符为前缀。

例如,如果你有一个由2个源文件组成的项目,main.cpp和functions.cpp都使用opencv代码,你的makefile可能包含这样的内容:

executable: main.o functions.o
g++ -o executable `pkg-config --libs opencv` main.o functions.o

main.o: 
g++ `pkg-config --cflags opencv` -c main.cpp 

functions.o:
g++ `pkg-config --cflags opencv` -c functions.cpp

其中main.cpp只是你的main函数,你可以在其中多次调用functions.cpp中定义的函数。指令pkg-config --cflags/libs opencv使用名为pkg-config的实用程序,它自动生成构建所需的编译器和链接器标志,路径和库。你当然可以在makefile中手动指定这些,如果你使用的库不支持pkg-config,但是如opencv那样,使用它是有意义的。

要使用makefile进行编译,只需导航到保存源代码的目录,将makefile保存为“Makefile”并使用命令make进行构建。

答案 1 :(得分:0)

这是一般性提示:

您可以使用eclipse IDE加速开发。

这篇文章解释了如何轻松完成这项工作:

http://codewithgeeks.blogspot.in/2013/10/installing-opencv-ubuntu-1204-eclipse.html

http://codewithgeeks.blogspot.in/2013/10/installing-opencv-ubuntu-1204-eclipse_10.html