Atom利用gcc-make-run插件編譯opencv工程

0、起什么標題呢?(就叫寫在前面的話吧)

Atom插件的安裝參照這篇文章,opencv的配置參考這篇文章(不使用CodeBlocks的話,解壓后只需要添加相應的環境變量即可)。

之前就是想設置Atom能夠編譯opencv工程,Atom的gcc-make-run插件是利用MinGW的gcc/g++編譯C/C++代碼,要添加其對opencv的支持,實際上只需要在編譯時進行相關庫文件的鏈接即可。對codeBlocks配置opencv后,我寫了一個簡單的圖片顯示代碼進行測試,編譯時發現Build log下有編譯鏈接庫的命令,然后就是根據這個改了一下gcc-make-run的設置,能夠正確編譯opencv代碼并運行。

CodeBlocks編譯opencv代碼

1、設置

打開Atom,按下快捷鍵Ctrl+Shift+P,輸入install package,點擊第一個進入設置管理。

設置

找到安裝的gcc-make-run插件,點擊設置對插件編譯選項進行設置

gcc-make-run
參數 作用
-Wall 表示允許gcc提供可用的警告信息
-g 表示在編譯時產生調試信息
-Idir 此處為包含opencv頭文件所在目錄
-Ldir 指定opencv鏈接庫的路徑

在Complier Flags里面添加的編譯選項是opencv頭文件的鏈接路徑,Link Libraries添加的為鏈接庫的路徑。實際設置時,要根據自己opencv所在路徑進行相應修改,例如在我的電腦上,opencv路徑為E:\OpenCv_Code\CodeBlocks1601\opencv3,那么我的配置如下:

1.1.Compiler Flags添加如下:

-Wall -fexceptions -g -IE:\OpenCv_Code\CodeBlocks1601\opencv3\build\include -IE:\OpenCv_Code\CodeBlocks1601\opencv3\build\include\opencv -IE:\OpenCv_Code\CodeBlocks1601\opencv3\build\include\opencv2

1.2.Link Libraries添加如下:

-LE:\OpenCv_Code\CodeBlocks1601\opencv3\build\x86\mingw\lib E:\OpenCv_Code\CodeBlocks1601\opencv3\build\x86\mingw\lib\libopencv_calib3d310.dll.a E:\OpenCv_Code\CodeBlocks1601\opencv3\build\x86\mingw\lib\libopencv_core310.dll.a E:\OpenCv_Code\CodeBlocks1601\opencv3\build\x86\mingw\lib\libopencv_features2d310.dll.a E:\OpenCv_Code\CodeBlocks1601\opencv3\build\x86\mingw\lib\libopencv_flann310.dll.a E:\OpenCv_Code\CodeBlocks1601\opencv3\build\x86\mingw\lib\libopencv_highgui310.dll.a E:\OpenCv_Code\CodeBlocks1601\opencv3\build\x86\mingw\lib\libopencv_imgcodecs310.dll.a E:\OpenCv_Code\CodeBlocks1601\opencv3\build\x86\mingw\lib\libopencv_imgproc310.dll.a E:\OpenCv_Code\CodeBlocks1601\opencv3\build\x86\mingw\lib\libopencv_ml310.dll.a E:\OpenCv_Code\CodeBlocks1601\opencv3\build\x86\mingw\lib\libopencv_objdetect310.dll.a E:\OpenCv_Code\CodeBlocks1601\opencv3\build\x86\mingw\lib\libopencv_photo310.dll.a E:\OpenCv_Code\CodeBlocks1601\opencv3\build\x86\mingw\lib\libopencv_shape310.dll.a E:\OpenCv_Code\CodeBlocks1601\opencv3\build\x86\mingw\lib\libopencv_stitching310.dll.a E:\OpenCv_Code\CodeBlocks1601\opencv3\build\x86\mingw\lib\libopencv_superres310.dll.a E:\OpenCv_Code\CodeBlocks1601\opencv3\build\x86\mingw\lib\libopencv_ts310.a E:\OpenCv_Code\CodeBlocks1601\opencv3\build\x86\mingw\lib\libopencv_video310.dll.a E:\OpenCv_Code\CodeBlocks1601\opencv3\build\x86\mingw\lib\libopencv_videoio310.dll.a E:\OpenCv_Code\CodeBlocks1601\opencv3\build\x86\mingw\lib\libopencv_videostab310.dll.a
設置

2、代碼測試

隨意新建一個目錄,在目錄里新建一個cpp文檔并拷貝一個test.jpg圖片到該目錄,使用Atom打開,輸入如下代碼,按F6編譯執行:

#include <iostream>
#include <opencv2\core\core.hpp>
#include <opencv2\highgui\highgui.hpp>
#include <opencv2\imgproc\imgproc.hpp>

using namespace std;
using namespace cv;

int main()
{
    cout << "Hello world!" << endl;
    Mat img = imread("test.jpg");
    imshow("test", img);
    cvtColor(img, img, CV_RGB2GRAY);
    imshow("gray", img);
    waitKey(0);
    return 0;
}
測試結果
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容