2015-02-11 32 views
0

我安装了mingw gcc,g ++编译器。我下载了2.4.10的opencv源代码。然后我用下面的命令编译源:OpenCV mingw-make32 Makefile:12:***多个目标模式。停止

cmake -G "MinGW Makefiles" -D CMAKE_CXX_COMPILER=mingw32-g++.exe -D CMAKE_MAKE_PROGRAM=mingw32-make.exe .. 

mingw32-make 

mingw32-make install 

然后,我添加的lib到我的Windows路径。我用下面的Makefile编译代码,但我得到一个错误(使用在cmd窗口):

CC = gcc 
CFLAGS = -g -Wall 

SRCS = main.cpp input_main.cpp image_manuplation.cpp track_object.cpp 
PROG = main.exe 

OPENCV = -I"C:\Users\Username\Documents\opencv\sources\release\install\include" -I. -L"C:\Users\Username\Documents\opencv\sources\release\install\x86\mingw\lib" -lopencv_calib3d2410 -lopencv_contrib2410 -lopencv_core2410 -lopencv_features2d2410 --lopencv_flann2410 -lopencv_gpu2410 -lopencv_highgui2410 -lopencv_imgproc2410 -lopencv_legacy2410 -lopencv_ml2410 -lopepncv_nonfree2410 -lopencv_objdetect2410 -lopencv_ocl2410 -lopencv_photo2410 -lopencv_stitching2410 -lopencv_superres2410 -lopencv_ts2410 -lopencv_video2410 -lopencv_videostab2410 

all : $(PROG) 

$(PROG) : $(SRCS) 
    $(CC) $(CFLAGS) -o $(PROG) $(SRCS) $(OPENCV) 

clean: 
    @del $(PROG) 

我得到以下错误:

Makefile:12: *** multiple target patterns. Stop. 

会有人知道如何解决这个错误吗?我在Ubuntu上做了类似的事情,它工作。 谢谢

+0

在$(CC)$(CFLAGS)'或一些空格的开头是否有标签?我打赌你有一个标签。 – 2015-02-11 20:10:32

回答

1

第12行是配方行。我相信你还没有开始制作TAB角色。 Make需要一个真正的TAB,而不仅仅是空格。确保您的编辑器能够插入TAB字符,并且在保存时不会“帮助”将其转换为空格。

+0

嗨MadScientist,谢谢你的回答。我太累了,忘了我已经设置了我的vim,在添加标签的地方插入空格。 – SUB 2015-02-11 21:16:58