用gcc编译opencv程序
opencv是一个开源的视觉库,有很多视觉开发常用方法,这里介绍下如何用gcc编译含有opencv函数的程序。
我的opencv库放在e:/opencv文件夹下。我在d:/test目录下有一个facetest.cpp源程序。现在要通过gcc将它编译链接。
那么可以用如下的命令:
g++ -B e:/opencv/build -L e:/opencv/build/x86/mingw/bin -L e:/opencv/build/x86/mingw/lib -lopencv_core231 -lopencv_imgproc231 -lopencv_calib3d231 -lopencv_video231 -lopencv_features2d231 -lopencv_ml231 -lopencv_highgui231 -lopencv_objdetect231 -lopencv_contrib231 -lopencv_legacy231 -lopencv_flann231 -lopencv_gpu231 -lopencv_ffmpeg facedetect.cpp -o facetest.exe
-B e:/opencv/build将此目录添加到gcc搜索目录(搜索头文件)。
-L e:/opencv/build/x86/mingw/bin -L e:/opencv/build/x86/mingw/lib将此两个文件夹添加到库搜索目录。(搜索静态库或动态库)
-lopencv_core231 -lopencv_imgproc231 -lopencv_calib3d231 -lopencv_video231 -lopencv_features2d231 -lopencv_ml231 -lopencv_highgui231 -lopencv_objdetect231 -lopencv_contrib231 -lopencv_legacy231 -lopencv_flann231 -lopencv_gpu231 -lopencv_ffmpeg这一堆的选项将opencv各个模块的库文件链接到源程序。(如果觉得这样浪费空间,可以在查看依赖后决定链接哪些模块)
最后就得到了一个挺大的可执行程序。
补充:综合编程 , 其他综合 ,