touchmm 发表于 2013-2-1 09:56:05

命令行下面使用MAKEFILE方式编译OPENCV程序

集成环境的编译直观,而且可以利用VC的环境,可以方便的调试,编辑。但是在某些场合下,特别是对于习惯于LINUX环境下的读者而已,使用makefile,或许更加亲切。
VC实际上提供了使用makefile的接口,即在DOS窗口下,调用命令 nmake。首先编辑合适的makefile 配置文件,下面是一个配置例子:


CXX=cl

CXXFLAGS = /nologo /ML /D"_MBCS" /I"..\..\cxcore\include" /I"..\..\cv\include" \

/I"..\..\cvaux\include" /I"..\..\ml\include" /I"..\..\otherlibs\highgui"

LINKFLAGS = /link "/libpath:..\..\lib" cxcored.lib cvd.lib cvauxd.lib mld.lib highguid.lib



SAMPLES = imadjust.exe histeq.exe hello.exe



all: $(SAMPLES)

.c.exe:

@$(CXX) $(CXXFLAGS) $< $(LINKFLAGS)

.cpp.exe:

@$(CXX) $(CXXFLAGS) $< $(LINKFLAGS)



其次,编写代码程序,假设我们已经编写好,并且存在当前的目录下,那么在DOS窗口中,键入如下命令:
> nmake –f makefile


则程序编译完成,在当前目录下生成相应的EXE运行文件。使用makefile的一个好处是可以批量进行编译,例如上面的makefile 就可以同时编译生成三个运行文件,而且环境变量设置好以后,可以继续使用。
页: [1]
查看完整版本: 命令行下面使用MAKEFILE方式编译OPENCV程序