前言
??本文主要內(nèi)容是games101在本機下的環(huán)境搭建,主要有VS的下載與安裝,Eigen庫的下載與配置,OpenCV的下載與配置,主要解決的bug是LNK2019 無法解析的外部符號 “public: __thiscall cv::Mat::Mat(void)” ,希望能給各位想做games101作業(yè)的帶來幫助,減少環(huán)境配置上的困難,后續(xù)也會陸續(xù)相關(guān)的作業(yè)題。
Visual Studio篇
Visual Studio安裝包下載
?? 直接進入Visual Studio的官網(wǎng)下載最新的2022版,下載社區(qū)版即可,社區(qū)版是專門供給學(xué)習(xí)使用的,是免費的;專業(yè)版和企業(yè)版是要收費的。
?? 如果是因為其他原因,比如身邊人使用的其他類似VS2019,然后也想下載2019版的話,也可以去歷代版本的網(wǎng)站進行下載,同樣是下載社區(qū)版。
Visual Studio安裝
?? 下載下來之后雙擊setup文件即可自動安裝Visual Studio Installer,我們安裝Visual Studio即是通過Visual Studio Installer進行的。安裝完畢后打開Visual Studio Installer,會讓我們選擇我們需要的組間,我們按需選擇即可,此處我就只勾選了【使用C++的桌面開發(fā)】和【Visual Studio擴展開發(fā)】。
?? 語言包選擇中文還是什么隨個人喜好,然后是安裝位置,如果C盤不夠富裕,那可以將其放入其他盤的對應(yīng)文件夾,比如IDE,放入某個路徑下新建的【Community】文件夾里,下載緩存放入【Packages】,共享組間等放入【Shared】中。
?? 然后點擊安裝即可,此過程時間比較長。對于日后想要添加組間,也可以打開Visual Studio Installer,點擊修改,然后就會來到選擇組間的頁面,即可添加需要的組間。
Eigen篇
?? Eigen庫主要是線性算數(shù)的C++模板庫。可以用其完成矩陣的一系列操作,類似于python的numpy(打個比方)。
Eigen庫下載
?? Eigen庫的下載地址
?? 下載之后進行解壓縮,并放入自己的文件夾中,筆者此處放入的地址是“D:\tools\eigen-3.4.0”。
Visual Studio環(huán)境配置
??1. 首先是確定自己的項目配置(Debug還是Release)和平臺(×86還是×64),這點很重要,Debug對應(yīng)的是調(diào)試,Release對應(yīng)的是發(fā)布。建議直接使用Debug -> ×64。
?? 2. 其次是介紹操作的位置,我們打開一個Visual Studio項目后,點開項目,找到我們這個項目的項目屬性,如下圖所示。
?? 3. 來到【VC++目錄】->【包含目錄】下,在其中添加Eigen庫的地址,此處為統(tǒng)一,建議選到Eigen文件夾,具體如下所示:
D:\tools\eigen-3.4.0\eigen-3.4.0\Eigen
?? 添加的具體方法如下:
?? 至此,Eigen庫的配置已完成
框架源碼的改動
?? 既然Eigen庫的位置不同,那么自然需要對源碼的#include地址發(fā)生一些改動,那就是將源碼中#include Eigen的地方換成如下的代碼。
#include <Eigen>
OpenCV篇
?? opencv是機器視覺和機器學(xué)習(xí)的常用庫,此處的作業(yè)主要用其中關(guān)于圖片的相關(guān)函數(shù)。
Opencv下載與環(huán)境變量設(shè)置
??首先是需要下載opencv包,點擊前方鏈接,可以跳轉(zhuǎn)到網(wǎng)站,選擇你需要的版本以及自身電腦的系統(tǒng)點擊即可,此處就直接用最新版的window系統(tǒng)作為演示。
??在我們點擊完windows后,會跳轉(zhuǎn)至如下頁面,等倒計時結(jié)束瀏覽器會自動開始下載opencv包,其是一個exe文件,找到下載好的exe文件雙擊,即可進行解壓縮,我們可以指定解壓縮的路徑,此處筆者就以**“D:tools/opencv”文件夾為例,解壓縮的過程即可以理解為opencv安裝了。
??之后我們需要將opencv配置到環(huán)境變量中去,可以在我的電腦右擊 --> 高級系統(tǒng)設(shè)置,如下所示,也可以直接win + q,搜索高級系統(tǒng)設(shè)置**。
??進入到高級系統(tǒng)設(shè)置后選擇高級選項卡,點擊環(huán)境變量,里面有兩個可以選擇,一個是用戶變量,一個是系統(tǒng)變量。這兩個變量的順序是,如果用戶沒有給出絕對路徑,那么首先在自己的目錄下查找,如果查找不到,則進入系統(tǒng)變量中查找,如果還是未查找到,則進入用戶變量中查找,其中的變量Path告訴系統(tǒng)可執(zhí)行文件的位置。
??我們直接在系統(tǒng)變量中添加,也可以根據(jù)需要自己選擇是在用戶變量還是系統(tǒng)變量。選擇Path,然后點擊編輯,在如下的界面中點擊新建,將紅框中的目錄添加進去。
??至此環(huán)境變量中的配置完成,接下來需要在Viusal studio中進行配置。
Visual Studio環(huán)境配置
??1. 首先是確定自己的項目配置(Debug還是Release)和平臺(×86還是×64),這點很重要,Debug對應(yīng)的是調(diào)試,Release對應(yīng)的是發(fā)布。后面bug篇會提到相關(guān)的配置bug。具體的查看位置如下,位于VS工具欄的下方。??此處建議大家還是改成Debug -> ×64。因為上面的Eigen庫的配置便是如此。
??2. 其次是介紹操作的位置,我們打開一個Visual Studio項目后,點開項目,找到我們這個項目的項目屬性,如下圖所示。
??3. 之后是詳細(xì)的文件配置,首先來到屬性中的【VC++目錄】中找到包含目錄和庫目錄。
????1). 【包含目錄】中需要添加include文件夾,文件如下所示,詳細(xì)目錄還是得根據(jù)自身文件夾來。
D:\tools\opencv\build\include
????2). 【庫目錄】中需要添加lib文件夾,文件如下所示
D:\tools\opencv\build\x64\vc14\lib
????添加步驟如下所示:點開右邊的下拉三角,然后進入到頁面中,選擇下面文字說的添加文件目錄的按鈕,然后進入文件選擇,選擇上方所說的對應(yīng)文件夾,然后按下確定即可完成添加。
????完成添加后的結(jié)果如下圖所示,至此便完成了VC++目錄部分的目錄添加
??4. 然后我們來到【C/C++】->【常規(guī)】->【附加包含目錄】選項卡下進行添加,添加內(nèi)容與【VC++目錄】->【包含目錄】中的一致,添加文件夾如下所示。
D:\tools\opencv\build\include
?? 添加完成的結(jié)果如下所示:
??5. 最后我們需要來到【鏈接器】->【輸入】->【附加依賴項】添加lib文件。這里添加的文件均以opencv_worldxxx.lib為特征,可以進行查找,這里我的是opencv_world460.lib和opencv_world460d.lib,二者的區(qū)別在于不帶d的文件用于我們第一步介紹的Release環(huán)境,帶d的版本用于Debug環(huán)境。此處以我的為例,直接添加:
opencv_world460d.lib
??添加方式如下:
?? 至此,Opencv在Visual Studio中的配置已完成。
調(diào)試篇
?? 在games101的作業(yè)中,我們經(jīng)常可以看到當(dāng)我們要編譯看結(jié)果的時候,需要在命令行輸入?yún)?shù),然后main函數(shù)的形參接受參數(shù)并執(zhí)行相應(yīng)的代碼,那么放到VS中可不可以實現(xiàn)呢?答案是可以的。首先我們還是需要點開【項目屬性】,之后找到【配置屬性】->【調(diào)試】->【命令參數(shù)】輸入我們需要給main 函數(shù)傳遞的參數(shù),即作業(yè)運行中需要在命令行中輸入的參數(shù)。
?? 以作業(yè)3中的為例,我們?nèi)绻窍肟碆linn-phong結(jié)果,那么按照文檔,我們需要在虛擬機終端輸入./Rasterizer output.png phong
。其中./Rasterizer
是運行的文件,后面的output.png phong
是我們需要的參數(shù)。那么我們可以在其中輸入output.png phong
,結(jié)果如下:
bug篇
bug:“public: __thiscall cv::Mat::Mat(void)”
解決:項目配置不是Debug -> ×64。因為添加的文件中是×64,且連接器中是最后含d的lib文件。文章來源:http://www.zghlxwxcb.cn/news/detail-849328.html
?? opencv配置的絕大部分問題都是環(huán)境變量或者VS的配置問題,仔細(xì)比對后即可知道問題在哪,初學(xué)者基本不必參考太花哨的解決辦法。實在沒辦法從以上兩個環(huán)境中解決再去嘗試其他博主提供的方法。文章來源地址http://www.zghlxwxcb.cn/news/detail-849328.html
到了這里,關(guān)于手把手教你games101環(huán)境搭建(圖文并茂)——Visual Studio安裝,Eigen庫,Opencv配置的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!