国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

VSCode配置C++開發(fā)環(huán)境:OpenCV

這篇具有很好參考價(jià)值的文章主要介紹了VSCode配置C++開發(fā)環(huán)境:OpenCV。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。


最近在做深度學(xué)習(xí)的C++部署相關(guān)工作,于是寫下這篇文檔記錄環(huán)境配置的過程。環(huán)境配置是一項(xiàng)非常繁瑣的工作,無論從大學(xué)做相關(guān)作業(yè)還是到工作上。做這項(xiàng)工作需要技術(shù)的同時(shí),還需要點(diǎn)運(yùn)氣。當(dāng)然遇到無法解決的玄學(xué)問題,最終只有一個(gè)辦法:重啟設(shè)備。

本篇文章以環(huán)境為設(shè)置分為兩個(gè)環(huán)境進(jìn)行部署,一個(gè)是Linux和Win10部署的部分。Linux部分部署時(shí)因?yàn)闊o論是端側(cè)部署應(yīng)用還是服務(wù)端部署應(yīng)用都會涉及到Linux。而Windows部署則是為了方便我在自己筆記本上進(jìn)行學(xué)習(xí)練習(xí)才記錄下來的。那么現(xiàn)在就開始我們的環(huán)境配置部署之路。

無論是Linux還是Win10環(huán)境,先寫一個(gè)測試的?hello world代碼:

#include<iostream>
using namespace std;
int main(){
    cout<<"hello world"<<endl;
}

Linux

我的Linux版本是:Linux ubuntu 5.15.0-56-generic #62-Ubuntu SMP Tue Nov 22 19:54:14 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux。通過Win10設(shè)備上的VSCode連接到服務(wù)器上的。要配置C++環(huán)境,那么要先把vscode上的C++擴(kuò)展安裝好,如下圖所示:
VSCode配置C++開發(fā)環(huán)境:OpenCV
在配置好vscode的環(huán)境后,需要在當(dāng)前項(xiàng)目的.vscode文件夾下配置task.json、launch.jsonc_cpp_properties.json文件,其中task.json用于編譯器配置,launch.json用于調(diào)試器設(shè)置,c_cpp_properties.json用于編譯器路徑和IntelliSense設(shè)置。

編譯

新建task.json文件,該文件是告訴vscode如何編譯程序,大概用途是使用g++編譯器編譯源文件為可執(zhí)行文件。task內(nèi)容如下:

{
    "version": "2.0.0",
    "tasks": [
      {
        "type": "shell",
        "label": "g++ build active file",
        "command": "/usr/bin/g++",
        "args": ["-g", "${file}", "-o", "${fileDirname}/${fileBasenameNoExtension}"],
        "options": {
          "cwd": "/usr/bin"
        },
        "problemMatcher": ["$gcc"],
        "group": {
          "kind": "build",
          "isDefault": true
        }
      }
    ]
}

command 變量指定了那個(gè)編譯器會被使用,這里就是 /usr/bin 目錄下的 g++ 編譯器;args 這個(gè)參數(shù)列表給出了我們需要傳遞給g++編譯器的命令參數(shù),需要符合g++命令行的參數(shù)順序,${file} 代表目前編輯器打開的文件,${fileDirname} 代表當(dāng)前活躍文件的目錄,${fileBasenameNoExtension} 為生成的文件名,與被編譯的文件名相同。label 變量的值為終端任務(wù)中名字,你可以任意修改;group 變量中的 "isDefault":true 代表了當(dāng)按下Ctrl+Shift+B時(shí),會對當(dāng)前活躍的文件進(jìn)行編譯,僅僅是為了方便。關(guān)于更多的變量定義可以參考:Variables Reference

VS Code打開tmp.cpp 源文件,并處于編輯界面,按下 Ctrl+Shift+B鍵 (或者在 主菜單->終端->運(yùn)行生成任務(wù) ),tasks.json 就會被執(zhí)行。
VSCode配置C++開發(fā)環(huán)境:OpenCV
運(yùn)行該文件,輸出hello world。
VSCode配置C++開發(fā)環(huán)境:OpenCV
要注意:要讓tmp.cpp(即你要編譯的文件)處于活躍狀態(tài)。

調(diào)試

調(diào)試文件主要使用launch.json文件,該文件配置VS Code下的GDB調(diào)試器。GDB調(diào)試器安裝命令:apt-get install build-essential gdb。
launch.json內(nèi)容:

{
    "configurations": [
        {
            "name": "(gdb) Launch",
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}/${fileBasenameNoExtension}",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description": "Set Disassembly Flavor to Intel",
                    "text": "-gdb-set disassembly-flavor intel",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "g++ build active file",
            "miDebuggerPath": "/usr/bin/gdb"
        }
    ],
    "version": "2.0.0"
}

其中,program變量指定你想要調(diào)試的文件,這里被設(shè)置為活躍文件夾${fileDirname}下的活躍文件${fileBasenameNoExtension},如果tmp.cpp處于活躍, 那么tmp會被調(diào)試。默認(rèn)情況下,C++ 擴(kuò)展不會添加斷點(diǎn)到源文件中,stopAtEntry默認(rèn)被設(shè)置為flase,如果設(shè)置為true的話,那么調(diào)試器會在main方法入口暫停。

配置OpenCV

如果你需要更多關(guān)于 C/C++ 擴(kuò)展的使用,你可以創(chuàng)建一個(gè)c_cpp_properties.json文件,這個(gè)可以讓你去改變一些設(shè)置,例如編譯器的路徑、C++ 標(biāo)準(zhǔn)等。你可以在 VS Code 中按下 Ctrl+Shift+P鍵,并在命令行中輸入C/C++,可以在下拉菜單中選擇C/C++配置,這樣在 .vscode文件夾下出現(xiàn)c_cpp_properties.json文件,同時(shí)在 VS Code 界面出現(xiàn)一個(gè)設(shè)置窗口,你可以按照你的需要在里面修改一些 C/C++ 的配置。

要配置opencv,當(dāng)然要先安裝好OpenCV,可參考該文章:筆記—Linux安裝OpenCV及VSCode的配置編譯和實(shí)踐出真知——Ubuntu 18.04 VSCODE配置OpenCV4.5運(yùn)行YOLO4模型。

新建c_cpp_properties.json文件,內(nèi)容如下:

{
    "configurations": [
        {
            "name": "Linux",
            "includePath": [
                "${workspaceFolder}/**",
                "/usr/include/opencv2"
            ],
            "defines": [],
            "compilerPath": "/usr/bin/gcc",
            "cStandard": "gnu17",
            "cppStandard": "gnu++17",
            "intelliSenseMode": "linux-gcc-x64"
        }
    ],
    "version": 4
}

主要是inclodePath要包含opencv頭文件的路徑。

修改task.json文件,因?yàn)樾枰尤雘pencv的動(dòng)態(tài)鏈接庫:

{
    "version": "2.0.0",
    "tasks": [
      {
        "type": "shell",
        "label": "g++ build active file",
        "command": "/usr/bin/g++",
        "args": [
          "-g", 
          "${file}", 
          "-o", 
          "${fileDirname}/${fileBasenameNoExtension}",
          "`pkg-config", "--cflags", "--libs", "opencv4`",       
          // "-I", "/usr/local/include",        
          // "-I", "/usr/local/include/opencv4",       
          // "-I", "/usr/local/include/opencv4/opencv2",       
          // "-L", "/usr/local/lib",        
          // "-l", "opencv_core",        
          // "-l", "opencv_imgproc",        
          // "-l", "opencv_imgcodecs",
          // "-l", "opencv_video",        
          // "-l", "opencv_ml",
          // "-l", "opencv_highgui",
          // "-l", "opencv_objdetect",
          // "-l", "opencv_flann",
          // "-l", "opencv_imgcodecs",
          // "-l", "opencv_photo",
          // "-l", "opencv_videoio"
        ],
        "options": {
          "cwd": "/usr/bin"
        },
        "problemMatcher": ["$gcc"],
        "group": {
          "kind": "build",
          "isDefault": true
        }
      }
    ]
}

最終像上述的編譯調(diào)試運(yùn)行以下程序代碼即可:

#include <iostream>
#include <opencv2/opencv.hpp>

using namespace cv;
using namespace std;

int main(int argc,char** argv){

    std::cout<<"111"<< std::endl;
    cv::Mat src = cv::imread("./src/model_optimize.jpg");
    cv::resize(src,src,cv::Size(500,800));
    imwrite("./test.jpg", src);
    return 0;
}

Win10

要在Win10上調(diào)試C++程序,那么就要先安裝好MinGW并進(jìn)行配置。在這一步這里就不展開了。

編譯調(diào)試

編譯調(diào)試跟Linux原理差不多,將task.json以及launch.json里面的g++gdb路徑配置好即可,文件內(nèi)容如下:

task.json

{
    "version": "2.0.0",
    "tasks": [
      {
        "type": "shell",
        "label": "g++ build active file",
        "command": "C:/mingw64/bin/g++.exe",
        "args": [
          "-g", 
          "${file}", 
          "-o", 
          "${fileDirname}/${fileBasenameNoExtension}"    
          // "-I", "/usr/local/include",        
          // "-I", "/usr/local/include/opencv4",       
          // "-I", "/usr/local/include/opencv4/opencv2",       
          // "-L", "/usr/local/lib",        
          // "-l", "opencv_core",        
          // "-l", "opencv_imgproc",        
          // "-l", "opencv_imgcodecs",
          // "-l", "opencv_video",        
          // "-l", "opencv_ml",
          // "-l", "opencv_highgui",
          // "-l", "opencv_objdetect",
          // "-l", "opencv_flann",
          // "-l", "opencv_imgcodecs",
          // "-l", "opencv_photo",
          // "-l", "opencv_videoio"
        ],
        "options": {
          "cwd": "C:/mingw64/bin"
        },
        "problemMatcher": ["$gcc"],
        "group": {
          "kind": "build",
          "isDefault": true
        }
      }
    ]
}

launch.json文件如下:

{
    "configurations": [
        {
            "name": "(gdb) Launch",
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}/${fileBasenameNoExtension}",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description": "Set Disassembly Flavor to Intel",
                    "text": "-gdb-set disassembly-flavor intel",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "g++ build active file",
            "miDebuggerPath": "C:/mingw64/bin/gdb.exe"
        }
    ],
    "version": "2.0.0"
}

配置OpenCV

opencv版本:4.6.10。配置OpenCV的工作原理:對OpenCV的源碼進(jìn)行編譯,然后在VSCode上進(jìn)行配置。

(1)源碼編譯

編譯安裝的環(huán)境:

  • cmake version 3.9.0-rc3
  • mingw 5.3.0

設(shè)置好源碼路徑已經(jīng)生成路徑,點(diǎn)擊configure按鈕,注意:選擇生成MinGW Makefiules,選擇Specify native compilers,最后配置你的編譯器路徑。

VSCode配置C++開發(fā)環(huán)境:OpenCV
VSCode配置C++開發(fā)環(huán)境:OpenCV

點(diǎn)擊Generate按鈕。
VSCode配置C++開發(fā)環(huán)境:OpenCV
到設(shè)置的路徑,這里是:C:\opencv\build\x64\mingw下執(zhí)行:minGW32-make -j8
VSCode配置C++開發(fā)環(huán)境:OpenCV

執(zhí)行minGW32-make install

VSCode配置C++開發(fā)環(huán)境:OpenCV

最后在bin下生成結(jié)果,并將C:\opencv\build\x64\mingw\bin配置到環(huán)境路徑下。

遇到的問題:

  1. 編譯生成報(bào)如圖下的錯(cuò),因?yàn)镺penCV版本太old了。最終更新至4.6.10。
    VSCode配置C++開發(fā)環(huán)境:OpenCV

解決方案:OpenCV + CLion在windows環(huán)境下使用CMake編譯, 出現(xiàn)Mutex相關(guān)的錯(cuò)誤的解決辦法文章來源地址http://www.zghlxwxcb.cn/news/detail-480301.html

  1. 出現(xiàn)“Unexpected GDB output from command “-exec-run”.”
    VSCode配置C++開發(fā)環(huán)境:OpenCV
    StackOverFlow上的解決方案:ERROR: Unable to start debugging. Unexpected GDB output from command “-exec-run”. Unable to find Mach task port for process-id 1401

參考

  1. 如何在 Linux 系統(tǒng)中的 VS Code 上配置 C/C++ 環(huán)境
  2. VSCode+Opencv(C++)+Win10
  3. VScode搭建OpenCV環(huán)境??????,推薦。
  4. OpenCV使用CMake和MinGW-w64的編譯安裝??????,推薦
  5. OpenCV-MinGW-Build:已經(jīng)編譯好的OpenCV庫

到了這里,關(guān)于VSCode配置C++開發(fā)環(huán)境:OpenCV的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • vscode配置opencv環(huán)境【完整版】

    vscode配置opencv環(huán)境【完整版】

    1.安裝MinGW 并配置環(huán)境變量path 在終端輸入gcc -v驗(yàn)證 2.安裝cmake 3.官方下載opencv源碼source 在cmake中編譯,新建D:opencv目錄 先執(zhí)行configure再執(zhí)行g(shù)enerate opencv目錄下終端輸入mingw32-make -j 8 完成后在輸入 mingw32-make install 至此編譯完成。 4.配置json文件 c_cpp_properties.json配置修改注釋掉的

    2024年02月12日
    瀏覽(23)
  • Linux安裝OpenCV并配置VSCode環(huán)境

    Linux安裝OpenCV并配置VSCode環(huán)境

    安裝環(huán)境 Ubuntu20.04 官方參考網(wǎng)址 OpenCV官網(wǎng):https://opencv.org/ 官方安裝文檔參考:https://docs.opencv.org/4.8.0/d7/d9f/tutorial_linux_install.html Opencv Core Modules : OpenCV的核心庫模塊是OpenCV的主要部分,包含了圖像處理和計(jì)算機(jī)視覺方面的核心功能。 opencv_contrib :OpenCV的附加庫,它包含了Ope

    2024年02月03日
    瀏覽(30)
  • VScode配置c++版本opencv(親測)

    VScode配置c++版本opencv(親測)

    (1)vscode官網(wǎng)下載 (2)opencv及其拓展庫源碼下載 本人下載的是455版本,注意opencv版本與opencv-contrib版本需一致 (3)MinGW下載 (4)cmake下載 (1)解壓縮四個(gè)安裝包,將mingw64的bin添加到環(huán)境變量 ?win+R打開cmd,輸入gcc --version,如圖所示表明安裝成功 ?(2)vscode編譯 運(yùn)行c-

    2024年02月04日
    瀏覽(15)
  • windows使用vscode配置c++ OpenCV

    windows使用vscode配置c++ OpenCV

    路徑自己配置都不是必須下載到C盤 1. Visual Studio Code下載官網(wǎng) Download Visual Studio Code - Mac, Linux, Windows 2. 已編譯好的OpenCV下載 版本按需求下載,我這里用的是3.4.1 OpenCV官網(wǎng)是OpenCV的源碼(未編譯不可直接使用) 3. MinGW-w64下載編譯器(GCC的windows版本) 1. MinGW-w64的bin目錄 例如: E:c

    2024年02月03日
    瀏覽(21)
  • VScode + opencv + c++ + win配置教程

    VScode + opencv + c++ + win配置教程

    準(zhǔn)備: 1、下載opencv 2、下載CMake 3、 3、下載MinGw 下載完解壓放到一個(gè)文件夾里面,便于環(huán)境管理,文件夾我重命名了,解壓出來文件名不一樣正常 環(huán)境變量配置 4、安裝vscode擴(kuò)展 5、新建main.cpp 6、新建task.json 7、新建launch.json 8、新建c_cpp_properties.json 9、運(yùn)行 快捷鍵F5

    2024年02月06日
    瀏覽(15)
  • VSCode 配置 C++ 環(huán)境

    VSCode 配置 C++ 環(huán)境

    VSCode(Visual Studio Code)是一款輕量級的代碼編輯器,擁有豐富的插件生態(tài)系統(tǒng),支持多種語言開發(fā)。在本文中,作者將介紹如何在 VSCode 中配置 C++ 環(huán)境,以便于開發(fā)和調(diào)試 C++ 代碼。 VSCode 具有以下優(yōu)勢: 輕量級:相比于其他 IDE,VSCode 占用的資源更少,啟動(dòng)更快。 插件豐富

    2024年02月09日
    瀏覽(17)
  • Linux安裝OpenCV (C++) 并配置vscode

    Linux安裝OpenCV (C++) 并配置vscode

    郁悶死了。。昨天重裝Ubuntu,重寫了一份巨詳細(xì)的Opencv安裝說明,結(jié)果網(wǎng)頁上打開了兩個(gè)編輯界面,我在一個(gè)界面保存了草稿但是沒有發(fā)布,退出瀏覽器的時(shí)候另一個(gè)界面問我是否保存更改,點(diǎn)了確定結(jié)果把我之前寫的所有東西全部覆蓋掉了。。。在線編輯沒有版本管理也太

    2024年02月07日
    瀏覽(13)
  • 【c++】VSCode配置 c++ 環(huán)境(重新制作)

    【c++】VSCode配置 c++ 環(huán)境(重新制作)

    上一篇帖子【c++】VSCode配置 c++ 環(huán)境(小白教程)_vscode配置c/c++環(huán)境_StudyWinter的博客-CSDN博客 大火,但是依舊有很多小伙伴反應(yīng)沒有配好環(huán)境,今天打算重新寫一個(gè)教程,希望對大家有幫助。 在CSDN上傳了我自己的MinGW,供大家下載,已經(jīng)配置好了,直接解壓配置環(huán)境變量即可

    2024年02月06日
    瀏覽(44)
  • windows10系統(tǒng)下安裝opencv4.7.0+VSCode+(C++)環(huán)境搭建

    windows10系統(tǒng)下安裝opencv4.7.0+VSCode+(C++)環(huán)境搭建

    windows10系統(tǒng)下安裝opencv4.7.0+VSCode+(C++)環(huán)境搭建 1.VScode最新版 2.Opencv:opencv-4.7.0、opencv_contrib-4.7.0(擴(kuò)展庫,可自選是否安裝) 3.MinGW-w64:選擇GCCWindows版本 4.c-make工具:最新版,應(yīng)選擇二進(jìn)制版本 注意 : (1)以上安裝包目錄文件中不應(yīng)包含空格空格和其他非法字符,否則后面會

    2023年04月10日
    瀏覽(25)
  • 【VSCode】mac系統(tǒng)利用VSCode配置C++環(huán)境

    【VSCode】mac系統(tǒng)利用VSCode配置C++環(huán)境

    本文主要提供給想要在mac電腦上編寫C++的童鞋,幫助你們有一個(gè)更好的編程環(huán)境; mac系統(tǒng)下的C++編程環(huán)境可以用蘋果官方的軟件Xcode,也很簡單,在app store里就可以下載,但是也有一個(gè)非常痛苦的問題,就是這個(gè)軟件實(shí)在是太大,256G內(nèi)存的直接可以勸退了,所以mac系統(tǒng)下建議

    2024年02月16日
    瀏覽(18)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包