99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

VS Code C++ OpenCV 配置全解析:編輯器、編譯器與庫的底層原理與實(shí)戰(zhàn)

VS Code C++ OpenCV 配置全解析:編輯器、編譯器與庫的底層原理與實(shí)戰(zhàn) 先問一句你在 VS Code 里為 C 配置 OpenCV 的時(shí)候是不是已經(jīng)經(jīng)歷過這種循環(huán)——照著教程敲完配置紅波浪線還在換成另一個(gè)教程的配置編譯報(bào)錯(cuò)變了第三個(gè)教程終于不報(bào)錯(cuò)了程序運(yùn)行起來又提示找不到 DLL。說實(shí)話這個(gè)循環(huán)我見過太多次了A同學(xué)甚至為此折騰到凌晨一點(diǎn)。后來我發(fā)現(xiàn)問題不在于某個(gè)步驟沒抄對(duì)而在于大家都沒搞明白一件事VS Code、編譯器、OpenCV 這三樣?xùn)|西在電腦里其實(shí)是三個(gè)各自獨(dú)立的角色。這篇文章把底層邏輯和每個(gè)文件的作用徹底講清楚并且給出一套可以直接復(fù)現(xiàn)的配置方案保證你之后在任何平臺(tái)上配 OpenCV 都不再靠運(yùn)氣。1. 先把底層邏輯拆清楚VS Code 只是編輯器真正干活的是編譯器1.1 三件套的分工以及配置到底在配什么很多人第一次接觸 VS Code 寫 C下意識(shí)把它當(dāng)成一個(gè)裝了就能編譯的 IDE。這是最大的誤解。VS Code 本質(zhì)是文本編輯器它的本職工作是讓你能舒服地看代碼、改代碼它自己不吃.cpp文件更不會(huì)把#include opencv2/opencv.hpp變成可執(zhí)行文件。真正完成這個(gè)翻譯工作的是編譯器在 Windows 上最常見的就是 GCC/MinGW 或者 MSVC 的cl.exe。那 OpenCV 又是什么OpenCV 是一套預(yù)先編譯好的二進(jìn)制庫里面含有大量現(xiàn)成的圖像處理函數(shù)比如imread讀圖片、cvtColor轉(zhuǎn)色彩空間、imshow顯示窗口。這些函數(shù)不是頭文件里幾行聲明就能憑空變出來的它們的實(shí)現(xiàn)代碼已經(jīng)被編譯成了.dll或.libWindows 下或.so文件Linux 下。頭文件只是說明書庫文件才是零件。所以配置 VS Code C OpenCV這件事本質(zhì)上是在解決三個(gè)問題讓 VS Code 的 IntelliSense智能提示知道頭文件在哪里這樣代碼里不會(huì)畫紅波浪線鼠標(biāo)懸停能看到函數(shù)簽名。讓編譯器知道頭文件在哪里-I也知道庫文件在哪里-L并且明確要鏈接哪些庫-l這樣編譯鏈接才能通過。讓調(diào)試器知道可執(zhí)行文件在哪里這樣按 F5 才能跑起來。這三個(gè)問題分別對(duì)應(yīng) VS Code 工程里的四個(gè) JSON 文件c_cpp_properties.json、tasks.json、launch.json以及可選的settings.json。很多人配環(huán)境配到一半就放棄是因?yàn)榘堰@三個(gè)問題混在一起看出了問題根本沒法定位。用生活化的類比你收到一箱需要組裝的櫥柜VS Code 是工作臺(tái)編譯器是螺絲刀OpenCV 是已經(jīng)加工好的板材和五金件。配置環(huán)境的動(dòng)作就是先把板材放在哪個(gè)貨架、螺絲用幾號(hào)扳手寫清楚然后才開始組裝。缺任何一張說明后面都會(huì)卡殼。1.2 為什么庫版本匹配比路徑問題更容易讓人放棄路徑寫錯(cuò)這種問題報(bào)錯(cuò)信息通常很直白fatal error: opencv2/opencv.hpp: No such file or directory。你一看就知道是頭文件目錄沒對(duì)上改一下路徑就好。但更折磨人的一種情況是下面這樣undefined reference to cv::imread(std::string const, int) undefined reference to cv::cvtColor(...)報(bào)錯(cuò)信息里沒有找不到文件只有一堆undefined reference。很多新手這時(shí)候會(huì)懷疑自己代碼寫錯(cuò)了反復(fù)檢查源碼甚至把#include opencv2/opencv.hpp刪了重寫結(jié)果毫無變化。真正的原因往往只有一個(gè)編譯器用的工具鏈和 OpenCV 庫的二進(jìn)制格式不匹配。Windows 下這是一個(gè)經(jīng)典大坑。OpenCV 官方提供的 Windows 預(yù)編譯包默認(rèn)是用 MSVCVisual Studio 的編譯器構(gòu)建的庫文件是.lib格式依賴的運(yùn)行時(shí)是微軟的 VC Redistributable。如果你在 VS Code 里配的是 MinGW 的g兩者二進(jìn)制格式不兼容鏈接器就會(huì)拋出一大堆undefined reference。這是編譯器格式層面的問題跟你代碼沒關(guān)系也不是路徑能解決的。解決方案只有兩種方向要么讓編譯器去適應(yīng)庫換用 MSVC要么讓庫來適應(yīng)編譯器獲取一份 MinGW 構(gòu)建的 OpenCV。我下面推薦的方案正是后者因?yàn)樗?VS Code 這個(gè)輕量編輯器的組合最順部署簡(jiǎn)單也不用安裝幾個(gè) G 的 Visual Studio。2. 工具準(zhǔn)備用 MSYS2 一條龍搞定編譯器與 OpenCV2.1 先決定走哪條路MinGW 還是 MSVC在動(dòng)手下載任何東西之前先選路線。路線決定后面所有配置文件的寫法選錯(cuò)就是白折騰。路線 AMinGW MinGW 版 OpenCV本文主推工具鏈從 MSYS2 安裝一條命令裝完編譯器、調(diào)試器、OpenCV。庫格式和編譯器格式天然匹配基本不會(huì)出現(xiàn)undefined reference這類二進(jìn)制兼容問題。體積小完全本地化適合 VS Code 這種輕量工作流。路線 BMSVC 官方 OpenCV需要安裝 Visual Studio Build Tools 或者完整版 Visual Studio。能完美使用 OpenCV 官方預(yù)編譯包但不裝 VS 的話在 VS Code 里配置cl.exe環(huán)境會(huì)更繁瑣新手容易在中途迷失。建議 Windows 上追求快速復(fù)現(xiàn)的讀者走路線 A。至于那些從官網(wǎng)下載opencv-4.x.x-windows.exe然后配 MinGW 的教程不是不能看只是它們往往漏掉了官方包是 MSVC 構(gòu)建這個(gè)前提。你把官網(wǎng)包解壓后把build\x64\vc16\lib里的.lib文件硬塞給g鏈接失敗是必然的。2.2 MSYS2 安裝編譯器、調(diào)試器、OpenCV 包一次裝齊先去 MSYS2 官網(wǎng)下載安裝包默認(rèn)裝到C:\msys64。裝完之后打開開始菜單里的MSYS2 MINGW64注意是 MINGW64不是 MSYS2 那個(gè)黑窗口后者環(huán)境變量不同然后依次執(zhí)行pacman -Syu這個(gè)命令會(huì)更新系統(tǒng)核心包。如果中途提示讓你關(guān)閉窗口就按提示做關(guān)掉重開再執(zhí)行一次pacman -Syu完成更新。更新完繼續(xù)裝工具鏈pacman -S mingw-w64-x86_64-toolchain pacman -S mingw-w64-x86_64-opencv pacman -S mingw-w64-x86_64-gdbtoolchain會(huì)包含g、gcc、make等一系列基礎(chǔ)工具opencv包裝的是 MinGW 版 OpenCVgdb是調(diào)試器VS Code 調(diào)試離不開它。如果只想裝精簡(jiǎn)版可以只裝mingw-w64-x86_64-gcc和mingw-w64-x86_64-gdb但直接裝 toolchain 更省心。安裝完成后驗(yàn)證一下g --version pkg-config --modversion opencv4如果能看到 g 版本號(hào)和 OpenCV 版本號(hào)比如 4.6.0說明環(huán)境基本就緒。這里有個(gè)很實(shí)用的小技巧MSYS2 安裝的 OpenCV 自帶pkg-config配置你隨時(shí)可以用它查看編譯和鏈接參數(shù)pkg-config --cflags --libs opencv4它會(huì)輸出類似-I/mingw64/include/opencv4 -L/mingw64/lib -lopencv_world460的內(nèi)容。這一串參數(shù)就是后面配置 tasks.json 的標(biāo)準(zhǔn)答案比任何教程都準(zhǔn)確。2.3 認(rèn)識(shí)安裝后的目錄結(jié)構(gòu)后續(xù)所有路徑都從這里來MSYS2 里/mingw64是虛擬路徑在 Windows 資源管理器里它對(duì)應(yīng)C:\msys64\mingw64。裝完 OpenCV 后你需要記住三個(gè)位置內(nèi)容MSYS2 路徑Windows 路徑編譯器/mingw64/bin/g.exeC:\msys64\mingw64\bin\g.exeOpenCV 頭文件/mingw64/include/opencv4C:\msys64\mingw64\include\opencv4OpenCV 庫文件/mingw64/libC:\msys64\mingw64\lib頭文件目錄里有個(gè)細(xì)節(jié)真正的opencv.hpp位于include/opencv4/opencv2/opencv.hpp。也就是說編譯器搜索頭文件時(shí)要么寫-IC:\msys64\mingw64\include\opencv4然后代碼里#include opencv2/opencv.hpp要么直接寫-IC:\msys64\mingw64\include但代碼就要寫#include opencv4/opencv2/opencv.hpp。這個(gè)差異會(huì)導(dǎo)致同一個(gè)教程別人編譯通過你這邊 fatal error的局面。本文統(tǒng)一采用前一種寫法。還有一點(diǎn)順帶提醒如果把C:\msys64\mingw64\bin加進(jìn)系統(tǒng) PATH你就能在任意終端直接使用g和gdb。具體操作是系統(tǒng)設(shè)置 → 環(huán)境變量 → 編輯 Path → 新增C:\msys64\mingw64\bin。要不要加都行不加的話 VS Code 里用絕對(duì)路徑照樣能工作但是加了之后手動(dòng)排查問題會(huì)方便很多。3. 四個(gè) JSON 文件詳解從代碼提示到編譯再到調(diào)試3.1 工程骨架與 .vscode 文件夾的作用先在某個(gè)目錄建一個(gè)演示工程比如D:\Code\OpenCVDemo里面放一個(gè)main.cpp然后新建一個(gè)名為.vscode的文件夾。.vscode文件夾是 VS Code 做工程級(jí)配置的地方里面放四個(gè)文件OpenCVDemo/ ├── .vscode/ │ ├── c_cpp_properties.json │ ├── tasks.json │ ├── launch.json │ └── settings.json └── main.cpp這四個(gè)文件各管一攤事很多人喜歡從網(wǎng)上復(fù)制模板直接粘結(jié)果某個(gè) JSON 里的名字對(duì)不上F5 按下毫無反應(yīng)。下面逐個(gè)講清楚每個(gè)文件的職責(zé)和關(guān)鍵項(xiàng)。3.2 c_cpp_properties.json紅波浪線和智能提示的開關(guān)這個(gè)文件只影響編輯器層面的靜態(tài)分析也就是 IntelliSense。它不改動(dòng)編譯過程所以哪怕你把這個(gè)文件里的路徑寫錯(cuò)程序也能編譯只是編輯器里一堆紅波浪線。反過來如果這里寫對(duì)了但 tasks.json 沒配代碼不報(bào)紅卻編譯不過。兩種癥狀對(duì)應(yīng)兩種錯(cuò)誤排查時(shí)別搞混。我的c_cpp_properties.json配置如下{ configurations: [ { name: Win64, includePath: [ ${workspaceFolder}/**, C:/msys64/mingw64/include/opencv4 ], defines: [], compilerPath: C:/msys64/mingw64/bin/g.exe, cStandard: c17, cppStandard: c17, intelliSenseMode: windows-gcc-x64 } ], version: 4 }這里最重要的字段是includePath。${workspaceFolder}/**表示當(dāng)前工程目錄及子目錄這個(gè)保留項(xiàng)能保證你自己的頭文件能被識(shí)別C:/msys64/mingw64/include/opencv4是 OpenCV 頭文件的搜索路徑。注意是opencv4這一層不是include那一層否則代碼里#include opencv2/opencv.hpp會(huì)找不到文件。compilerPath必須和你實(shí)際使用的編譯器一致。intelliSenseMode設(shè)為windows-gcc-x64對(duì)應(yīng) MinGW 64 位環(huán)境。有人不裝 MinGW、用clang編譯器卻忘了改這個(gè)字段導(dǎo)致 IntelliSense 的宏定義判斷完全錯(cuò)誤這也是一個(gè)隱蔽問題??傊@里的每一項(xiàng)都要跟你的工具鏈對(duì)號(hào)入座。3.3 tasks.json-I、-L、-l 連在一起才是編譯成功的真相tasks.json 是配置編譯任務(wù)的。VS Code 本身不編譯但它可以替你在終端里調(diào)用編譯器執(zhí)行一串命令。這一節(jié)是整個(gè)配置的關(guān)鍵也是最容易出錯(cuò)的地方。{ version: 2.0.0, tasks: [ { label: build-opencv-demo, type: cppbuild, command: C:/msys64/mingw64/bin/g.exe, args: [ -g, ${workspaceFolder}/main.cpp, -I, C:/msys64/mingw64/include/opencv4, -L, C:/msys64/mingw64/lib, -lopencv_world460, -o, ${workspaceFolder}/main.exe ], group: { kind: build, isDefault: true }, problemMatcher: [] } ] }逐個(gè)拆開看-g表示生成調(diào)試信息沒有它launch.json 里的斷點(diǎn)基本無效。${workspaceFolder}/main.cpp是要編譯的源文件如果工程里有多個(gè)源文件就寫多個(gè)路徑或者換成${workspaceFolder}/*.cpp但這樣通配符在部分環(huán)境下可能展開失敗我習(xí)慣直接列出文件。然后是三個(gè)最重要的參數(shù)-I指定頭文件搜索目錄對(duì)應(yīng)include/opencv4。-L指定庫文件搜索目錄對(duì)應(yīng)lib。-l指定要鏈接的庫名-lopencv_world460連在一起是鏈接 opencv_world460 這個(gè)庫。關(guān)于庫名有一個(gè)必須理解的規(guī)則-l后面的名字不是文件名完整拼寫。比如文件叫l(wèi)ibopencv_world460.dll.a鏈接時(shí)要寫成-lopencv_world460編譯器會(huì)自己加上lib前綴和后綴去找。如果 OpenCV 不是 4.6.0就改成對(duì)應(yīng)版本號(hào)比如 4.5.5 就是-lopencv_world455。拿不準(zhǔn)的時(shí)候用前面說的pkg-config --libs opencv4查一下最可靠。還有一個(gè)鏈接順序問題。直覺上g main.cpp -I ... -L ... -lopencv_world460 -o main.exe這種寫法沒問題但如果不小心把-lopencv_world460寫在源文件前面某些情況下鏈接器會(huì)因?yàn)榉?hào)還沒有被引用而跳過庫最后仍然報(bào) undefined reference。MinGW 對(duì)順序的容忍度比 MSVC 高一些但養(yǎng)成源文件在前、庫在后的習(xí)慣總沒錯(cuò)。3.4 launch.json讓 F5 先編譯再調(diào)試launch.json 負(fù)責(zé)配置調(diào)試器。寫完代碼后按 F5VS Code 會(huì)做兩件事先運(yùn)行preLaunchTask指定的編譯任務(wù)然后啟動(dòng)調(diào)試器加載生成的 exe。我常用配置如下{ version: 0.2.0, configurations: [ { name: OpenCV Debug, type: cppdbg, request: launch, program: ${workspaceFolder}/main.exe, args: [], stopAtEntry: false, cwd: ${workspaceFolder}, environment: [], externalConsole: false, MIMode: gdb, miDebuggerPath: C:/msys64/mingw64/bin/gdb.exe, preLaunchTask: build-opencv-demo } ] }program必須和 tasks.json 里-o參數(shù)輸出的文件一致如果這邊是main.exe、那邊卻輸出成demo.exe調(diào)試器會(huì)提示找不到程序。miDebuggerPath是 GDB 的路徑如果你前面沒有單獨(dú)裝mingw-w64-x86_64-gdb這里就會(huì)卡在無法啟動(dòng)調(diào)試器。preLaunchTask的值必須和 tasks.json 里label完全一樣注意大小寫。externalConsole設(shè)為false表示在 VS Code 集成終端里運(yùn)行程序這樣你能同時(shí)看到調(diào)試輸出和 OpenCV 彈出的圖片窗口。如果你的程序需要控制臺(tái)輸入再改成true也不遲。每次 F5 都會(huì)先重新編譯這個(gè)設(shè)計(jì)很貼心能避免你改完代碼忘記構(gòu)建、調(diào)試的還是上一個(gè)版本。集成終端的輸出會(huì)顯示類似g ...的命令行如果編譯失敗終端里的錯(cuò)誤信息就是你排查的第一手材料。3.5 settings.json順手處理編碼問題settings.json 不是配置工程的必須項(xiàng)但它能解決一個(gè)非常惱人的問題中文亂碼。Windows 下 VS Code 默認(rèn)用 UTF-8 保存文件而 GDB 和終端經(jīng)常沿用系統(tǒng)代碼頁GBK調(diào)試窗口里打印中文注釋或字符串會(huì)變成錕斤拷。我的簡(jiǎn)單配置是{ files.encoding: utf8, editor.formatOnSave: true, C_Cpp.default.cppStandard: c17 }files.encoding把文件編碼統(tǒng)一為 UTF-8和編譯器、編輯器的默認(rèn)行為保持一致。editor.formatOnSave是個(gè)人習(xí)慣保存時(shí)自動(dòng)格式化代碼。C_Cpp.default.cppStandard指定默認(rèn) C 標(biāo)準(zhǔn)如果你要用 C17 的std::filesystem之類特性這里和 c_cpp_properties.json 里的cppStandard保持一致就行。如果你希望 VS Code 的集成終端默認(rèn)打開 MSYS2 的 MINGW64 環(huán)境可以在 settings.json 里配終端 profile但這屬于進(jìn)階玩法配置不當(dāng)反而會(huì)拖慢啟動(dòng)初期不建議折騰。4. 用一張圖驗(yàn)證配置典型報(bào)錯(cuò)與排查順序4.1 從讀取到灰度化一個(gè)最基礎(chǔ)的 OpenCV Demo配置全部寫完之后用一個(gè)最經(jīng)典的 OpenCV 程序驗(yàn)證整個(gè)鏈路。新建main.cpp貼入下面的代碼#include opencv2/opencv.hpp #include iostream int main() { cv::Mat src cv::imread(test.jpg); if (src.empty()) { std::cerr 無法讀取圖片請(qǐng)檢查路徑 std::endl; return -1; } cv::Mat gray; cv::cvtColor(src, gray, cv::COLOR_BGR2GRAY); cv::imshow(Source, src); cv::imshow(Gray, gray); cv::waitKey(0); return 0; }這段代碼做了四件事imread讀取當(dāng)前目錄下的test.jpgempty()判斷是否讀取成功cvtColor把 BGR 彩色圖轉(zhuǎn)成灰度圖imshow分別顯示原圖和灰度圖waitKey(0)讓窗口一直等待按鍵。在工程目錄放一張test.jpg然后按 F5。如果一切順利你會(huì)看到兩個(gè)窗口彈出按任意鍵程序退出。注意一點(diǎn)這里的test.jpg是相對(duì)路徑VS Code 的當(dāng)前工作目錄默認(rèn)是${workspaceFolder}所以圖片要放在main.cpp旁邊或者使用絕對(duì)路徑。圖片路徑含中文時(shí)imread容易失敗Windows 下建議一律用英文路徑這是很隱蔽但概率很高的坑。4.2 編譯過了卻啟動(dòng)失敗DLL 不翼而飛的真相編譯成功并不代表程序能跑。如果你是直接雙擊 exe或者點(diǎn)擊運(yùn)行按鈕后彈出由于找不到 libopencv_world460.dll無法繼續(xù)執(zhí)行代碼這就是經(jīng)典的運(yùn)行時(shí) DLL 找不到問題。原因很簡(jiǎn)單g鏈接時(shí)用的是-lopencv_world460生成的 exe 內(nèi)部記錄了需要加載libopencv_world460.dll。Windows 在啟動(dòng)程序時(shí)會(huì)按照程序所在目錄 → 系統(tǒng)目錄 → PATH 環(huán)境變量的順序查找 DLL。MSYS2 安裝的 OpenCV DLL 在C:\msys64\mingw64\bin目錄下如果你的 PATH 沒有加這個(gè)目錄程序自然找不到。兩種解決方法把C:\msys64\mingw64\bin加到系統(tǒng) PATH 環(huán)境變量一勞永逸。把libopencv_world460.dll這個(gè)文件從C:\msys64\mingw64\bin復(fù)制到main.exe所在目錄適合只想快速驗(yàn)證的臨時(shí)方案。我更推薦第一種。因?yàn)楹罄m(xù)你還會(huì)用到gdb.exe、g.exe把整個(gè)bin目錄加進(jìn) PATH 能同時(shí)解決編譯器命令、調(diào)試器和運(yùn)行時(shí) DLL 三件事。改完 PATH 記得重新打開 VS Code環(huán)境變量才會(huì)重新加載。4.3 常見報(bào)錯(cuò)排查速查表下面把配置 OpenCV 過程中最常見的幾類報(bào)錯(cuò)整理成一張速查表對(duì)癥下藥即可。報(bào)錯(cuò)現(xiàn)象直接原因排查與解決fatal error: opencv2/opencv.hpp: No such file編譯器或 IntelliSense 找不到頭文件檢查 tasks.json 的-I路徑和 c_cpp_properties.json 的 includePath 是否指向include/opencv4undefined reference to cv::imread(...)庫鏈接失敗或庫與編譯器格式不匹配檢查-L、-l是否寫對(duì)確認(rèn) OpenCV 是 MinGW 版而非官網(wǎng) MSVC 版提示找不到libopencv_world460.dll運(yùn)行時(shí) PATH 缺少 DLL 目錄把C:\msys64\mingw64\bin加入系統(tǒng) PATH或把 DLL 拷貝到 exe 旁邊launch: program ... does not existtasks.json 輸出的 exe 和 launch.json 的 program 不一致對(duì)比兩邊路徑確保-o和program指向同一文件調(diào)試器啟動(dòng)后立即報(bào)miDebuggerPath錯(cuò)誤GDB 沒裝或路徑不對(duì)確認(rèn)C:\msys64\mingw64\bin\gdb.exe存在必要時(shí)重新pacman -S mingw-w64-x86_64-gdb終端輸出中文亂碼文件編碼與終端代碼頁不一致settings.json 設(shè)files.encoding: utf8終端執(zhí)行chcp 65001這些報(bào)錯(cuò)里前兩個(gè)占了九成。如果你遇到的是undefined reference除了檢查參數(shù)之外還要回到 1.2 節(jié)那個(gè)本質(zhì)問題你的編譯器工具鏈必須和庫的構(gòu)建工具鏈匹配。這一點(diǎn)反復(fù)強(qiáng)調(diào)因?yàn)樗_實(shí)是最容易被忽略、也最耗時(shí)的。4.4 圖片讀不出來路徑里的隱形雷區(qū)Demo 編譯運(yùn)行都正常但程序輸出無法讀取圖片——這個(gè)問題看起來簡(jiǎn)單實(shí)際上一旦觸發(fā)中文路徑陷阱就會(huì)變成百度搜不到答案的疑難雜癥。cv::imread在 Windows 上底層使用fopen對(duì) UTF-8 編碼的中文路徑支持很差。如果你的工程目錄里有中文比如D:\代碼\OpenCVDemo\test.jpg即使文件真實(shí)存在imread也可能返回空矩陣。解決方式是讓整個(gè)工程路徑保持純英文包括圖片文件名、文件夾名、甚至用戶名目錄某些情況下用戶名為中文會(huì)波及臨時(shí)目錄。第二個(gè)常見原因是圖片和程序不在同一目錄。有些人把圖片放在桌面然后把imread(C:\\Users\\...\\Desktop\\test.jpg)寫成imread(Desktop/test.jpg)以為是相對(duì)路徑實(shí)際上工作目錄根本不是桌面。建議在代碼里用絕對(duì)路徑或者把圖片放進(jìn)工程目錄再配合cwd設(shè)置來避免這種混亂。5. 進(jìn)階當(dāng)項(xiàng)目越來越大tasks.json 會(huì)撐不住5.1 什么時(shí)候應(yīng)該切到 CMaketasks.json 手寫g命令在單個(gè)文件的小項(xiàng)目里很順手但一旦項(xiàng)目變成多文件、引入多個(gè)第三方庫、或者需要有條件的宏定義它就很難維護(hù)了。舉個(gè)例子你有main.cpp、utils.cpp、camera.cpp三個(gè)文件tasks.json 里就得寫三個(gè)源文件路徑每新增一個(gè)文件就要改一次配置。如果還要鏈接 Eigen、OpenCV、Boost 等多個(gè)庫args會(huì)膨脹到幾乎沒人愿意看。這時(shí)候應(yīng)該切換到 CMake。CMake 是一個(gè)跨平臺(tái)構(gòu)建系統(tǒng)它不直接編譯而是生成編譯規(guī)則的描述文件。先安裝 VS Code 的 CMake Tools 擴(kuò)展然后創(chuàng)建一個(gè)CMakeLists.txtcmake_minimum_required(VERSION 3.10) project(OpenCVDemo) set(CMAKE_CXX_STANDARD 17) find_package(OpenCV REQUIRED) add_executable(demo main.cpp utils.cpp) target_link_libraries(demo ${OpenCV_LIBS})find_package(OpenCV REQUIRED)會(huì)自動(dòng)定位系統(tǒng)里安裝的 OpenCV${OpenCV_LIBS}是 CMake 解析出來的鏈接庫列表target_link_libraries負(fù)責(zé)把庫掛到目標(biāo)可執(zhí)行文件上。這樣你再也不用關(guān)心-L、-l的具體寫法CMake 全部替你搞定。CMake 需要依賴cmake命令在 MSYS2 里執(zhí)行pacman -S mingw-w64-x86_64-cmake即可。裝完后在 VS Code 里按CtrlShiftP輸入CMake: Configure然后CMake: Build編譯輸出會(huì)出現(xiàn)在底部面板。這個(gè)工作流更接近真實(shí)項(xiàng)目的標(biāo)準(zhǔn)做法也更容易遷移到其他電腦。5.2 跨平臺(tái)配置的思路遷移當(dāng)你看懂了這套配置的底層邏輯后換到 Linux 或 macOS 只是換路徑和包管理器的問題思路完全一致。Linux 上安裝 OpenCV 用系統(tǒng)包管理器例如 Debian/Ubuntu 系sudo apt update sudo apt install libopencv-dev安裝后的頭文件通常在/usr/include/opencv4庫文件在/usr/lib/x86_64-linux-gnu。那么在 tasks.json 里對(duì)應(yīng)改成-I, /usr/include/opencv4, -L, /usr/lib/x86_64-linux-gnu, -lopencv_world,macOS 上用 Homebrew 的話就是brew install opencv路徑通常是/opt/homebrew/include/opencv4和/opt/homebrew/lib??梢钥闯霾还芷脚_(tái)怎么變核心永遠(yuǎn)是那三件事頭文件路徑、庫路徑、庫名。明白了這一點(diǎn)你看網(wǎng)上任何一份配置教程都能知道它寫的是哪條路線的配置而不需要逐字照抄。5.3 一條個(gè)人習(xí)慣排錯(cuò)時(shí)先把 VS Code抽離出去最后分享一個(gè)我屢試不爽的排查方法。當(dāng)你覺得 VS Code 配置怎么都調(diào)不通的時(shí)候先不要盯著一堆 JSON 文件反復(fù)改而是打開一個(gè)獨(dú)立的 MSYS2 MINGW64 終端手動(dòng)執(zhí)行這一條命令g -g main.cpp -I C:/msys64/mingw64/include/opencv4 -L C:/msys64/mingw64/lib -lopencv_world460 -o main.exe如果終端里編譯通過說明編譯器、OpenCV、代碼本身都沒有問題問題百分百出在 VS Code 的配置細(xì)節(jié)上比如label不匹配、路徑寫錯(cuò)、環(huán)境變量沒刷新。如果終端里同樣報(bào)錯(cuò)那問題就在工具鏈本身需要用pkg-config --cflags --libs opencv4核對(duì)參數(shù)或者檢查庫的二進(jìn)制格式。這個(gè)方法等于給問題做了一次歸因分離。VS Code 只是殼真正的核心是編譯器命令。先把核心命令跑通再回頭檢查殼上的配置效率會(huì)高非常多。我見過太多人被 VS Code 的報(bào)錯(cuò)面板牽著走在 IntelliSense、tasks、launch 三個(gè)文件之間來回改最后才發(fā)現(xiàn)只是 PATH 沒生效這種小事。配置環(huán)境這件事最怕的就是不總結(jié)、反復(fù)試錯(cuò)。把一次成功配置里的每條命令、每個(gè)路徑吃透其實(shí)你獲得的是一套在任何平臺(tái)組裝開發(fā)環(huán)境的思路。下次再需要配上別的庫無非是把 include 路徑、lib 路徑、庫名換一下而已。希望這篇經(jīng)驗(yàn)?zāi)軒湍阋淮涡园?VS Code C OpenCV 跑通然后安心去做真正有意思的圖像處理。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
天天插天天插天天插天天插 | 五月天播播中文字幕 | chaopengdaxiangjiao| 婷婷月五天在线在线看| 色五月婷婷91| 五月激情开心婷婷| 婷婷五月天成人网站| 97色吧| 久久曰曰| www.久久爱| 丁香六月狠狠| 新激情五月天| 丁香五月天狠狠| 九九热精品| 91九九九九九九| 久久人妻在线| 四射综合网| 成人在线99| 色综合久久88色综合天天看| 五月丁香香蕉| 九九色99| 97色色综合| 婷婷综合亚洲| 天天色爽| 亚洲AV永久无码影院黑人| 极品人妻videosss人妻| 亚洲视频码| 天天做好综合色| 人妖色AV色综合| 五月婷婷丁香大陆免费| 五月丁香在线视频观看| 中文AⅤ大全| 色综合色| 婷婷五月天成人动漫 | 96丁香六月婷婷蜜桃综合久久| 婷婷伊人视婷婷婷| 六月天婷婷| 开心五激情网| 99热 在线播放| 婷婷五月天亚洲五码| 9有码中文| 婷婷色综合| 色狠狠伊人久久五月丁香| 欧美成人猛片AAAAAAA| 五月丁香婷婷成人综合网| www.com色播五月天| 色五月色图| 91色在线/日韩| 久久精彩视频| 亚洲色优| 久久婷婷成人视频| 涩五月丝袜婷婷| 黄色三级日本| 99性爱精品| 丁香五夜激情四射夜夜夜| 99在线热视频| 天天干狠狠操| 亚州色婷婷| 成人国产欧美大片一区| 97婷婷狠狠| 久久五月视频| 成人国产欧美大片一区| 婷婷丁香九月| 午夜电影网VA内射| eeuss人妻| 久久久91精品| www.夜夜操.com| 狠狠色丁香久久婷婷综合五月| 亭亭玉立国色天香| 五月婷婷 激情五月| 天天射天天射一道本日本社区 | 99riAV国产精品视频| 色色色色热| 爱婷婷五月| 婷婷丁香久久| 91视频五月丁香| 99热伊人| 婷婷天堂综合| 丁香五月色| 欧日美女Va| 99精品丰满| 狠狠做深爱婷婷久久综合一区| 天天干天天 亚洲| 26uuu偷拍亚洲欧洲综合| 99久视频| 91碰碰| 五月丁香婷爱在线| 欧美视频在线观看噜噜| 激情五月丁香婷婷夜夜操| 无码人妻一区二区一牛影视| 思思热这里只有精品| 日日插日日干| 婷婷亚洲激情在线观看视频 | 五月天大香蕉| 99噜噜| 久久 这里只有精品1| 色婷婷色情| 激情五月天婷婷播播久久综合91 | 超碰AV在线| 996re热精品视频| 玖玖资源在线视频| 九九热视频精品| 丁香六月色婷婷| 这里只有精品热| 久久超级碰碰| 熟女91九色| 九九精品大香蕉| 五月丁香综合啪啪| 99操视频| 婷婷五月色| 日本精品99网站| 五月六月丁香激情| 五月亭亭性| 欧美综合婷婷网| 99综合免费视频| 亚洲成Av人片乱码色第1集| 夜夜嗨一区二区三区直播内容 | 午夜福利8055| 国产高清视频91九九九久久久| 成片免费观看视频大全| 色色婷婷丁香| 天天天天干| 久久激情网| 色999五月色| 狠狠色噜噜狠狠狠狠综合| 我要射综合| 久久激情综合| 婷婷五月综合色中文字幕| 午夜成人网站在线观看| 91精品久久久久久综合五月天| 99亚洲视频| 综合一啪| 亚洲精品在线视频| 欧美日韩成人免费在线| 婷婷四色五月| 538午夜激情| 99视频内射三四| 成人电影AV在线观看| 五月色丁香婷婷综合| 97色精品视频| 超碰人人操人人9| 丁香五月婷婷老师网站| 综合 蜜月 婷婷| 97午夜一区二区| 一本婷婷丁香久久| 成人AV综合在线| 成人片在线免费看| 在线成人网站| 激情五月激情综合网一级丸片| 欧美韩国日本| 香蕉久日夜| 九九99精品视品| 老美AA片| 婷婷色情五月| 99这里有精品久久97| av婷婷丁香 六月| 欧美在线骚货| 久久综合激情婷婷激情| 亚洲秘 无码一区二区三区妃光/1| 99热这里只有精品在线观看| 大香蕉婷婷五月| 久久激情视频| 五月丁欧美| 国产成人VA| 婷婷色香六月综合激情| 九九99一区| 久久激情五月婷婷| 婷婷综合激情| 五月婷A V在线| 婷婷五月丁香国产| 操操天堂| 五月婷婷伊人网| 亚洲色 视频| 五月婷婷,狠狠操| 婷婷五月天成人网| 久久久高清| 97碰成超视频免费视频| 思思热久久阴99| 99精品在| 婷婷色五月激情| 五月婷在线色视频| 高清无码网址| 襙逼网| 森林影视大全,最好看的2019年视频 | 91伦| 久九色| 樱花99视频| 96性爱视频| 欧美成人色婷婷| 亚洲中文字幕网| 九九综合久久| a网站免费观看| 婷婷射综合| 91超碰人人操| 五月婷婷久久大片| 超碰a女人的天堂| 婷婷五月激情的图片| 丁香婷婷激情| 激情五月综亚网| 99年操人人爽| 亚洲国产va| 日韩欧美性爱| 婷婷五月天小说| 青青夜夜狠狠夜夜狠狠| 五月婷婷丁香综合,亚洲天堂| 色色色9| WWW.久久久久久久| 日韩欧美不卡| 五月丁香啪啪综合| 丁香五月区| www91精品| 超碰免费成人| 天天操夜夜爽歪歪| 久久久久婷婷五月热综合| 五月日韩中文字幕| 九九热黄色| 天天操夜夜啊| 成人免费高清在线播放| 在线观看免费观看在线9久| 激情VA视频| 五月丁香操婷逼| 极品人妻VIDEOSSS人妻| 九九re精品视频在线观看| 九九综合视频在线观看| 五月丁香色婷婷色| 99福利视频导航| 久狠狠狠| 色情综合网| 五月香婷婷| 99青青草99| 97久久超碰| 久久99这里只有精品| 欧美三级视频| 亚洲精品白浆高清久久久久久| 日日夜夜狠狠| 色天天综合| 就要爱综合| 五月色情婷婷| 久久久久久久久18久久| 一本大道熟女人妻中文字幕在线 | 99在线观看精品视频| 五月丁香A片| 激情综合婷婷久久| 99热97美女| 九九综合| 极品人妻VideOssS人妻| 99色网站| 婷婷五月丁香综合| 丁香六月激情| 丁香婷婷五月综合| 天天干天天操天天射| 五月婷婷九| 欧洲99视频在线| 97热久久五月婷婷| 九九青草热| 日韩AV在线电影| 国产精品久久久久久久久久| 99视频只有精品| 五月婷啪啪| 五月天婷婷爱| 亚洲无码影片| www.激情五月天.com| 天天色天天| 婷婷五月骚厕所| 日本成人综合| 超碰精品在线| 无码人妻激情| 操人91| 久久久99免费视频| 91操熟女| 综合色图区| AV色五月婷婷| 激情五月天丁香| 69热在线| 99热综合| 亚洲成人乱码av网站| 97人人干| 丁香婷婷丁香五月欧美人| 色婷五月| 99视频精品全部免费 在线| 国色天香成人网| 五月婷婷狠天天色综合| 欧美精品在线观看| 天堂草在线看www| 天堂网操| 五月天激情啪啪| 超碰网站在线观看| 久久精典| 天天日天天插| 色的色综合| 久久综合99综合| 色婷婷五月天小说网| 国产伦亲子伦亲子视频观看| 天天插天天插天天插| 奇米四色五月天| 久色五月丁香视频| ww亚洲ww在线观看| 中日韩美欧成人一区二区精品在线 | 久热欧美| 成人欧美一区二区三区在线观看| 色婷婷很很十八禁| 狠狠穞A片一區二區三區| 久久婷婷人人| 九九热这里只有精品6| 91碰碰视频| 99在线视频免费| 色狠狠色综合久久久绯色AⅤ影视| 99热在线观看| 青青草成人网| 婷婷五月娱乐在线| 99色这里| 欧美五月婷婷| 九九这里只有精品| 伊人久热91| 久久女婷| 亚洲激情五月天| a在线观看| 91 欧美| 色欲婷婷五月天丁香| 五月丁香六月激情综合网| 日本在线免费中文com.| 久久婷婷丁香| 伊人五月婷| 亚洲天堂爱爱| 人人天堂操| 五月婷婷影| 婷婷伊人| 久久在这里有精品| 538任你爽视频不一样的| www.久久爱| 久久色婷婷| 中日韩狠狠色| 大香蕉色婷婷伊人在线| 人人色人人弄人人操| 日日爽夜夜爽| 五月婷婷黄色| 秋霞三级影视资源| 99re视频在线| 五月天精品视频| 亚洲成人丁香花| 色色色色色色色色综合网| 九九久久99精品免费观看www| 婷色五月| 久久机热这里只有精品| 五月的婷婷六月丁香| 久久99免费视频| 狠狠狠狠狠| 97涩婷婷| 人人干人人干骚美女| 五月丁香六月激情欧美综合| 国产乱子轮XXX农村| 99在线视频播放| 99热最新网址| 激情综合一| 97热九九| 色婷婷久久综合中文久久一本| 五月婷婷综合在线| 亚洲天堂久久| 六月 丁香 视频| 色蜜婷婷| 综合婷婷五月天| 色青青电影色五月| 97干婷婷五月天| 久久久18| 丁香五月激情婷婷视频| 国产亚洲色婷婷久久99精品91| 色五月婷婷影视| 久8色色| 五月综合激情网| 激情视频婷婷五月花| 五月婷婷五月天| 九月婷婷激情久久| 丁香五月亚综合图片| 五月婷婷色在线| 婷婷激情综合无月| 五月成人丁香av91| 99久久免费精品| 蜜桃婷婷丁香综合久久开心亚洲| 99热精品综合| 久久综合五月情| 天天色综合综合| 日本乱子人伦在线视频| 一级二级香港秋霞欧美欧美秋霞| 日日夜夜亚洲一区| 天天玩夜夜操| 五月丁香啪啪啪综合网| 色五月丁香五月| 五月天亚洲综合网| 99色.com| 色综合丁香| 国产人妻操逼| 99国产精品白浆在线观看免费| 色婷婷五月天激情在线播放| 日韩国产在线精品| 千人斩操逼| 字幕网AV中文字幕| 欧美丁香五月天| 超碰人人摸AV| 亚洲AV成人片无码网站| 激情五月天婷婷久久久久久久久久久| 9久热精品在线视频| WWW.夜夜| 五月婷婷人人人操| 色色色色色色网站| www.狠狠色.com| 色五月婷婷在线观看第一页舔| 五月丁香婷婷俺| 亚洲免费电影2| 色噜噜狠狠色综无码久久合欧美| 超碰国产在线| 久久久久久99日本| 怡红院99| 狠狠操天天日| 五月久久| 五月色综合| 日日夜夜噜噜爽爽| 丁香六月丁香婷婷激情| 99热99极品观看| 玖玖在线资源视频| 热99在线精品| 亚洲国产精品二二三三区| 蜜桃婷婷丁香五月天狠狠久久综合| WwW色婷婷| www.狠狠操| 婷婷五月天伊人在线| 毛片九九九九九九九九18| 日本久久人人| 成人丁香五月| 爱婷婷久久视频| 婷婷亚洲影院| www狠狠com| 五月婷A V在线| 五月天婷婷AV| 天天摸夜夜夜| 国产婷婷五月中文字幕高清 | 99色在线| 丁香六月激情四射| 激情丁香五月天图片| 1024人妻| 色婷婷亚洲精品天天综| 五月天激情综合首页| 亚洲AV日韩在线观看| 91精品久久久久久综合五月天| 五月激情综合深爱| 久久黄色网扯| 超碰人人在线| 色五月五月婷婷| 色欲久久99精品久久久久久| 色私五月婷婷| 亚洲日韩欧美综合VA| 激情五月天综合网站网站网站| 92久操视频| 亚洲操人| 中文字幕AV网址| 操你av| 丁香五月天色综合| 日本色色图| 伊人综合婷婷| 欧美性生交A片免费看| 人人色婷婷五月天| 丁香婷婷婷五月综合色情| site:901-07.com| 天天日天天色| 九九在线视频| 五月天综合| 九九色图| 99日这里只有精品| 午夜免费试看| 天天搞天天爽| 丁香婷婷色六月| 激情婷婷丁香| 99热人人操人人操| 色丁香久综合在线久综合在线观看| 成人丁香五月天Av| 五月丁香影院| 亚洲啪啪精品| 色九九九九| 99亚洲视频| 性爱视频99| 天天天天天天操| 性爱视频99| 天天干天天做| 天天日综合| 99在线观看精品视频| 色五月天电影| 色www久视频| 久综合4| 丁香五月婷婷老师网站| 在线资源av-超碰中文在线-成人AV| 色综合香蕉视频| 五月天丁香婷婷社区| 玖玖爱资源站| 五月婷婷久久激情| 婷婷丁香18| 噜噜噜狠狠色综| 婷婷五月天影院| 无码激情AAAAA片-区区| 丁香婷婷五月人体| 亚洲激情亚洲激情| www.成人婷婷综合| 这里只有精品视频| 婷婷久久草| 五月丁香六月婷婷开心网| 婷婷综合一二三| 婷婷综合激情| 狠狠色婷婷7777久综合| 亚洲综合网区| 5月婷婷6月六月丁香| 精品婷婷| 操日本99| 99久久婷婷国产综合精品草原| 九九热10| 亚洲va成人va成人va在线观看| 天天干天干| 久久九九激情五月天| 日本视频欧美观看免费| 五月婷婷新网站| 丁香婷婷激情网站| 激情色播| 91碰碰视频| 在线综合婷婷| 日本久久网| 亚洲午夜国产成人电影VA国产欧…| 日韩在线成人电影| Www.婷婷五月| 成年人丁香五月| 丁香影院五月综合| 五月丁香六月婷婷亚洲激情综合| 狠狠操狠狠插| 北条麻妃九九九国产精品视频| 激情五月丁香六月综合AVXXXX| 99热在这里只有免费精品| 色噜噜狠狠一区二区三区| 任你艹| 99国产这里只有精品| 欧洲一区二区| ou洲色吧| 丁香五月冃欧美| 99乱视频| 超色欲天天| 激情综合网五月婷婷| 91人人人人人| 亚洲成人在线观看网址| 婷婷五月情色| 五月婷婷六月丁香综合在线| 狠狠草网| 激情网综合| 噼里啪啦在线观看免费完整版视频 | 人人草人人爱| 日韩小视频在线99| 久99久热只有精品国产99| 99ri精品| 99色精品| 一级二级色大片| 丁香六月综合| 丁香六月婷婷综合啪啪| 色欲AVV| 激情五月开心五月在线视频| 天天干天干| 激情五月色综合网| 色婷婷激情四射视频| 久99久视频精选| 26uuu欧美亚洲日韩| 婷婷五月色| 91欧美日韩综合| 色五月成人| 日韩视频女神99| 亚洲va在线∨a天堂va欧美va| 国产69久久久欧美黑人A片| 国产伦理精品高清在线观看网站一区二区 | 99色在线| 欧美婷婷六月丁香综合色连续高潮抽搐| 五月天堂婷婷| 中文字幕永久在线| 九九碰九九爱97超碰| 婷婷五月在线免费| www99热| 免费99情趣网视频| 婷婷偷拍网| 玖玖综合网| 99热亚洲| 五月天婷婷综合| 思思99热在线| 成人五月天综合网| 日日操日日撸| 久热大香蕉| 色婷婷小说| 日本www五月婷婷| 亚洲亚洲人成综合网络| 精品人妻久久久久久久| 亚洲色图啪啪| 亚洲激情综合网| 狠狠色丁香| 五月天色综合| 婷婷涩涩五月天| 黑人熟妇一区二区三区| 激情五月天电影| 婷婷五月天成人在线视频| 噜噜在线| 中文字幕 久久9999| 日韩精品VIP| 99国产精品久久久久久久久久久 | jiqingtaose五月天| 91久久久久久| 六月婷婷久久大全| 久久网日本| 激情综合网激情五月天| 逼里香不卡| 色五月综合在线| 年轻的妺妺伦理HD中文| 91人人爽久久涩噜噜噜| 99在线播放视频| 国产乱子轮XXX农村| 草综合14| 久久五月天大美女| 婷婷综合另类| 天天日天天操心| 五月色丁香视频精品| 激情婷婷在线中文字幕| 日韩在线观看网址| 啪啪激情综合| 亚洲国产色色| 六月丁香婷婷色狠狠久久| 久久五月婷综合| 91视频精品99| 国产日日操夜夜操的肉棒视频| 欧美图片丁香五月天| 色婷婷成人做爰A片免费看网站 | 久久综合九九| 琪琪色综合网站| 亚洲无码yw| 色色丁香五月婷婷| 久久婷婷综合网| 色99久草在线| 久草热在线视频| 天天干天天日天天操| 丁香五月婷婷婷婷欧美综合| 激情久久综合网| 性爱综合网| 色综合丁香婷婷| 99久久九九| 深情六月婷婷综合久久| 久久刺激网| 色九月丁香婷婷蜜桃在线观看| 玖玖资源在线视频| 欧美大道不卡| 五月激情六月宗合| 六月婷婷影院| 国产伊人五月天| 狼人狠狠操| 玖玖激情网| 狠狠婷婷色综合| 五月亭亭直播| 五月天激情亚洲| 激情视频综合| 免费亚洲婷婷五月| 99性爱视频网站| 襙比视频| 婷婷五月天com| 婷婷五六月丁香| 99热网站| 亚洲综合成人网| 婷婷97碰碰| 国产69久久久欧美黑人A片| 大香蕉色婷婷伊人在线| 成人片在线播放| www.久久99| 久久精品99| 97干视频在线| 久久五月激情综合| 国产精品国产| 天天综合精品| 99精品在线| 淑女丝袜bi操逼123| 五月婷婷说| 人人操人人爱丁香五月| 热99热9| 五月激情另类| 婷婷五月AV| 久久99网| 99爱这里只有精品免费视频| 久久综合性| 五月婷婷av| 丁香婷婷色五月| 色婷婷九月| 99久久九九| 高清无码视频网址| 五月丁香六月激情综合| 国产精品第一国产精品| 久久日婷婷| 开心久久网婷婷| www.91在线看| 五月丁香综合啪啪| 色六月天天激情综合网| www·五月天| 色色免费网战视频| 五月婷婷影院| 99亚洲精品| 日韩成人影片网站| 色开心五月丁香| 狼友超碰| 五月丁香激情五月天| 色狠狠六月| 丁香成人色情五月天| 日本婷婷| 思思热视频| 亚洲电影在线观看| 五月天婷婷久草丁香| 欧洲亚洲免费视频9| 欧美va精品va老师va| 亚洲瑟瑟精品在线| 色色色综合色| 99视频精品| 亚洲第一成人AV| 91疯狂操操操操| 看黄的网站18禁| 俺也去综合| 婷婷网五月天| 丁香五月影院| www.爱婷婷.com| 涩五月婷婷| 日本熟女一区二区| www狠狠| 乱精品一区字幕二区| 99日本视频| 丁香五月天信号| 久久伊人9| 丁香五月影院| 99日视频在线| 五月色丁香综合| 亚洲激情婷婷| 综合色99| 偷偷操99| 99热99热| 99综合| 欧美激情伊人| 激情网开心网| 九久9精品| 男人的天堂在线婷婷| AV伊人青草丁香六月| 亭亭五月色男人| 天天日天天爽| 天天噜日日噜综合无码| 99九九精品| 成人综合网站| 亚洲操逼网| 婷婷亚洲五月| 色色婷婷综合| 青青夜夜狠狠夜夜狠狠| 99热精品观看| 五月色婷婷夜色| 婷婷开心青青草| www狠狠| 亚洲精品成人片在线播| 99热这里有精品24| 激情婷婷五月天| 国产熟女大叫受不了| 五月好婷婷| 国产AV一区二区三区最新精品| 久久丁香五月| 老师的粉嫩小又紧水又多A片视频| 噜噜操操| 亚洲五月天另类小说图片| 1024操逼| 在线五月色播| 日本天天色| 97操碰视频| 亚洲精品99| 99re在线免费视频| 五月婷在线播放| 99热传媒| 婷婷五月天激情AV影院| 欧美叉叉叉BBB网站| 亚洲小视频免费看| 夜夜爽天天爽| www.天天干.com| 丁香六月婷婷| 日日噜狠狠色综| 91九色网| 狠狠五月天婷婷| 婷色五月天| 五月天激情在线视频| 亚洲九区| 26uuu四色| 久久性爱视频| 婷婷五月天.com| 亚洲V国产V欧美V久久久久久| 色色色视频| 99网| 严洲天天插| 亚州欧美黄色电影| 婷婷久久草| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 日本在线观看aaa 99| 99久久免费性爱视频`| 99操逼| 日hao1区| 99久热在线精品| 亚洲精品国产成人AV在线| 久热99| 99热婷婷| 激情五月婷| 97色伦另类图片小说视频 | 五月综合缴情网| 中文婷婷狠狠| 五月婷婷六月丁香综合在线| 色婷婷影| 色欧洲| 五月综合婷婷网| 97色射| 99综合| 91超级碰| 综合aV在线| 中文av网站| 欧洲亚洲免费视频9| 婷婷五月影院| 婷婷成人综合五月| 毛v一区二区视频| 国产无套精品一区二区| 色婷婷婷婷成人网| 国精产品一区二区三区| 婷婷大香蕉| 狠狠狠狠狠狠狠狠草| 七七色综合| 亚洲激情Av| www色五月| 久色网| 丁香色婷婷色手机免费在线| 婷婷丁香小说| 五月婷婷六月丁香免费| 亚洲网站观看视频| 91久久精品无码一区二区三区| 开心婷婷五月激情网小说| 黄色中文字目| 91黄址| 久久婷婷欧美| 亚洲99综合| 九九精品大香蕉| 国産精品| 色五月丁香六月欧美综合| 91色久| 婷婷五月天国产性感美女演员久久久久| 亚洲人成色A777777在线观看| 五月激情婷婷图片基地| 五月丁香A∨在线| 综合色播| 国产精品日日躁夜夜躁| 五月天激情日色在线| 欧美VA视频| 内射在线CHINESE| 久综合| 狠狠色噜噜狠狠| 久热这里只有精品3| 毛片蕉地一二| 国产精品18久久久| 九月婷婷激情| 色噜综| 人人草成人视频| 操逼巨乳91| 深夜婷婷 丁香| 色色99| 激情亭亭五月| 激情久久综合网| 婷婷色无码| 久9久9热久热| 玖玖五月丁香| www。五月,com| 色婷婷五月天| 大香蕉久久| 9久久婷婷国产综合精品性色| 五月天婷婷视频30| 天天爽天天日人人爱| BT综合在线视频观看| 综合激情四射一theav| 免费无码毛片一区二区A片| 超碰在线看| 永久免费一区二区三区| 综合一本道| 五月色俺婷婷| 天天爽曰日爽| 色色婷五月天| 夜夜操夜夜爽| site:hcxsz888.com| 亚洲无线视频| 久久婷婷五月综合成人d啪| 久久爱综合| 68热超碰在线| 五月停停99| www.久99| 人人操9| 熟女强人妻一区二区三区四区无| 嫩BBB槡BBBB搡BBBB| 婷婷五月天影院| 狠狠狠狠狠狠| 婷色五月| 中文字幕人成乱码在线观看| 久久九九国产精品怡红院| 亚洲操人| 色色色色色色色色网站| 热久久91| 强伦轩人妻一区二区电影| 大香蕉久久久| 婷婷情色五月天| 91狠狠综合久久久| 囯产精品久久欠久久久久久九大| 久久五月丁香| 色五月丁香五月| 色婷婷基地 | 亚洲V国产V欧美V久久久久久| 9久热精品在线视频| 91无码一区人妻A片蜜| 这里只有精品96| 久久久91精品| 2013AV天堂| 黄色激情久久| 丁香午月AV中文字幕| 五月天激情站| 丁香六月成人网| 色XX综合网| 欧美日比视频| 久久久久久久久久8888| chaopengdaxiangjiao| 大香蕉丁香五月| 九九色天堂| 91热爆在线| 小视频aaa久久久| 人妻操在线看| 97色啪| 色播五月| 影音先锋男人站,影音先锋男人色资源网,影音先锋AV最新资源站,影音先锋AV资源 | 激情深爱五月天| 五月婷婷激情综合网| 国精产品一区一区三区免费视频| 97啪在线观看视频| 色一情一乱一乱91Av| 超碰99在线| 五月丁香六月婷婷综合伊人| 国产无套精品一区二区| 超碰成人电影| 丁香88AV五月婷婷| 久久精品婷婷五月丁香| 天天草天天爱| 五月婷婷中文字幕AV| 91丨九色丨大屁股| 九九精品大香蕉| 9热视频在线观看| 欧美激情Va| 天天艹夜夜艹| 人人摸人人干| 婷婷九九视频| 色色丁香五月婷婷| 操逼三区| 色色色香蕉五月婷| 成人AV免费观看| 九九色视频| 色色亚洲视频| 欧在线一区| 亚洲性受XXXX五月丁香| 亚洲成人五月天| 色色亚洲| 久操干| 男女久久婷婷五月天| 9|无码久久久久久| 九九色网| 老司机午夜福利视频金瓶梅| 五月丁香六月情| 国产AV国片偷人妻麻豆| 9月色婷婷| 开心五月婷婷99| www色五月| 五月婷婷精品| 婷婷六月色情| 丁香五月天社区| 五月天停停日日| 色五月天激情| 开心五月深爱五月| 五月婷婷狠狠干| 久播影院免费观看电视剧大全最新网| 五月丁香色综合| 六月婷婷综合激情| 五月天天天色| 黄色片久久| 安息电影在线观看完整版| 五月综合激情| 色五月大香蕉婷婷| 久久综合天天综合| 国精产品一区一区三区免费视频| www九九热| 欧美Va婷色| 91久久九| 激情九九综合网| 最新高清无码专区| 久久久久久xxxxx| 五月婷婷色综图片| 五月婷婷六月综合| 开心五月激情婷婷| 日木WWW视频| 婷婷丁香五月激情图片| 精品婷婷| 激情综合网丁香| 日日夜夜天天综合| 久久综合干| 久久久久激情| 日本操碰碰| 涩综合网| 激情丁香六月| 台湾无码A片一区二区| 91视频综合网| 久久婷婷五月综合啪| 午夜色丁香| 欧洲亚洲精品| 91精品丝袜久久久久久久久粉嫩| 常久最新免费的色吊丝| 久综合九综合99| 日日夜夜小色哥| 色九月综合| 亚洲最大五月天成人网| 色婷婷狠狠禁18久久| 79色色免费| 人人妖人人97| 拳交大逼| 99热国产婷婷| 久久综合首页| 色婷婷九月| 色色色色色网| 五月婷婷激情色情网| 9久热精品在线视频| 五月婷婷之六月丁香| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 综合久久人妻| 在线超碰91| 啪啪激情综合| 九九热视频精品2| 中文字幕丰满孑伦无码专区| 五月六月丁香婷婷在线观看| 欧美人与性动交CCOO| 先锋av性爱成人电影| 特黄三级又爽又粗又大| 月婷婷婷婷五月| 97自拍视频在线| 婷婷97狠狠成人网站| 人人看人人要| 五月丁香婷婷啪啪综合| 91viP在线看| 丁香五月六月久久综合 | 激情五月份婷婷| 色欲丁香| 精品婷婷五月视| 日韩欧美性爱| 色色五月天丁香| 五月天婷婷色播综合在线| ai97re99一本| 亚洲黄色精品| 婷婷亚洲五月丁香综合在线 | 色色国产| 国产五月天欧美色| 精品久热| 亚洲狠狠丁香婷婷香蕉| 五月婷婷深深爱| 狠狠草天天草| 超碰在线个人观看| 人人摸人人搞| 亚洲免费99| 亚洲综合色色| 曰韩五月丁香色婷婷无码| 天天日天天色| 亚洲色激婷| 色射7856五月天激情四射| 97色碰| 五月天深爱激情网| 色热久| 伊久大香蕉| 日本精品99| 五月久久丁香| 久久综合五月天| 五月天丁香久久综合| 婷婷色婷婷| 五月婷婷,六月激情| 99久久.www| 免费视频WWW在线观看网站| 色五月婷婷九月| 思思视频精品| 国产婷婷综合在线免费视频| 中文幕无线码中文字蜜桃| 丁香五月婷婷五月| 亚洲激情视频网| 色射影院| 五月婷婷精品视频| 天天插天天插| 五月婷婷熟女| 欧洲亚洲精品| 丁香五月人妻熟女| 久久五月视频| 久久超级碰视频| 九九九激情网| 99这里有精品视频| 丁香六月婷婷开心| 狠狠色综合精品视频在线| 日 日干 日日做| 黄色三级日本| 性热视频99精品| 91丁香婷婷综合久久欧美| 中字幕视频在线永久在线观看免费| 欧美大道不卡| 天天综合亚洲| 偷拍视频五月天| 五月花婷婷在线精品视频| 吊色AV男人的天堂| 精品无码片| 五月天婷婷综合色| 亚洲日韩一页精品发布| 婷婷丁香五月亚洲| 日本九九视频| www.狠狠操| 六月丁香VA| 人人摸人人干人人做| 色色日韩无码| 丁香六月视频| 婷婷激情丁香五月婷婷激情丁香五月婷婷| 97碰碰视频在线观看免费| 五月伊人婷婷999| 综合五月激情| 97luluse| 激情五月天婷婷播播久久综合91| 亚洲亚洲人成综合网络| 香蕉综合网| 亚洲九九视频| 深爱五月激情| 天天色色天天| 色五月在线观看| 丁香婷婷大香蕉| 超碰免费人人| 亚洲成人网在线观看| 激情综合在线观看| 久久WW| 天天肏高清在线| 丁香五月婷婷大香蕉| 五月丁香六月激情在线| 色色色色网| 97丁香五月| 超碰在线精品| 精品五月天| 婷婷丁香在线| 国产精品第一国产精品| 国产AV国片偷人妻麻豆| 又大又粗九一在线| 婷婷五月综合丁香久久| 3p九色在线| 色色综合五月| 99人人精品| 国产免费一区二区在线A片视频| 大香蕉伊人久久| 丰满少妇乱A片无码| 五月天无码| 天天色天天爽| 五月丁香网中文字幕| 亚洲九九99精品视频在线播放| 免费观看的AV| 激情五月综合网最新 | 天天噜噜| 日本久久网| 一区二区成人电影免费播放| 99干免费视频| 超级碰碰碰91| 97人妻碰碰碰久| 热99精品视频观看| 日韩久久这里只有精品| 99精品在这里| 国产激情AV| 国产精自产拍久久久久久蜜 | 思思网站| 色区域网站视频| 人人摸人人| 精品久久人妻| ..真实国产乱子伦毛片 | 五月丁香六月婷婷的女人| 婷婷综合五月天| www.丁香五月| 亚洲亚洲人成综合网络| 精品九九久久| 中文字幕综合网| 狠狠色激情在线| 久久色五月天激情小说| 激情久久五月天| 婷婷五月欧美综合| 亭亭五月基地在线| 丁香丁香激情网| 久久五月天激情| 五月天激情丁香| 色情网综合| 亚洲综合久| 色宗合久久五月婷婷| 婷婷激情人妻| 国产美女无遮挡裸体毛片A片 | 人人操97| 思思久久99热只有频精品66| 人妖色AV色综合| 五月天天丁香婷婷在线中| 久色欧美| 丁香五月天社区| 色99免费视频中文| 电影爱拉战争免费观看| 五月婷婷激情五月| 免费看欧美成人A片无码 | 99ri精品视频在线观看| 九九视频在线免费视频| 亚洲成人一区| 色吧网综合| 99综合色色色| 日本色综合| 中文字幕丰满孑伦无码专区| 成人五月天丁香婷| 永久AⅤ1| 亚洲激情av| 成人丁香色| 五月激情久久| 国产亚洲精品久久久久久郑州| 成人在线视频一区| 欧美成人网婷婷综合在线| 99碰超| 一区二区传媒视频| 天天综合色综合| 99热婷婷| 亚洲超级碰| 色婷婷激情五月天在线观看| 天天狠天天叉| 九九99香蕉在线视频播放| 婷婷丁香社区| 五月婷婷六月丁香免费| 色情婷婷五月天| 五月丁香六月婷| 激情爱爱网站超大免费| 色婷婷综合久久久久| www.久久av.com| 538在线精品| 99综合视频一体| 成人综合AV| 91热久| 亚洲另类久久| 婷婷五月丁香五月| 日韩色色色色色| 五月婷六月| 激情九九六月激情免费视频| 26uuu亚洲欧美| 丁香六月婷婷色XXXX| 亚洲精品五十一区| 日本三级韩三级99久久| 婷婷六月激情| 久久精品天| 热99AV网站| 国产日韩精品SUV| 激情爱爱网站超大免费| 爱婷婷久久视频| 亚洲五月丁香综合网| 玖玖五月| 欧美人人草草| 亚洲视频在线观看| 天天干电影| 超碰在线9| 久久狠狠干| 涩涩涩.com| 五月婷婷狠天天色综合| 99久久婷婷国产综合| 天天综合91入口| 婷婷五月综合丁香久久| 欧美大片免费观看|