1. 程式人生 > >環境變數和VS的VC++目錄

環境變數和VS的VC++目錄

windows系統執行使用者命令過程,如python

若使用者未給出絕對路徑,則首先在當前目錄下尋找相應的可執行檔案、批處理檔案(另外一種可以執行的檔案)等;若找不到,再依次在PATH儲存的這些路徑中尋找相應的可執行的程式檔案,系統就以第一次找到的為準;若搜尋完PATH儲存的所有路徑都未找到,則會顯示命令錯誤。

配置環境變數的作用

在配置環境變數的時候,大家都會經歷過一步,那就是現在使用者變數裡定義一個PATH,然後再修改系統變數Path,為什麼? 因為PATH是使用者變數只是針對當前使用者的,而Path是系統變數。

: 環境變數分為使用者變數和系統變數,系統變數針對系統中所有使用者的,如果隨意修改,可能會對其他使用者造成意想不到的影響,==系統變數的優先順序要高於使用者變數。==比如說系統變數中配置了python命令,而使用者變數中也配置了python命令,那麼就會優先執行系統變數Path中的python命令。

lib檔案

.lib是一種檔名字尾,代表的是靜態資料連線庫,在windows作業系統中起到連結程式和函式(或子過程)的作用,相當於Linux中的·a或·o、.so檔案。

VS中的屬性頁VC++目錄理解

  1. 可執行檔案目錄:生成VC++專案期間,搜尋可執行檔案時使用的路徑 1.1 $(VC_ExecutablePath_x64):D:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin,這裡包含了VS的編譯器cl.exe、連結器lk.exe和相應的dll。 1.2 $(WindowsSDK_ExecutablePath): c:\Program Files (x86)\Windows Kits\8.1\bin\x64\ ,這裡包含了Windows Driver Kit(WDK) 1.3 $(PATH):這個是環境變數->系統變數->PATH一致。包含了c:\Windows\System32,D:\opencv\build\x86\vc12\bin,D:\opencv\build\x64\vc12\bin等,這裡存放的也是一些DLL檔案。將工程Build後,Exe檔案會動態載入其中的dll。這裡面有個問題就是如果這些Path中有重複的檔案怎麼辦,載入哪一個?
  2. 包含目錄:生成VC++專案期間,搜尋包含檔案時使用的路徑 2.1 $(VC_IncludePath):包含了VC的一些.h檔案,比如stdio.h和sstream等。 2.2 $(WindowsSDK_IncludePath):WDK的一些標頭檔案 2.3 其他:比如我們新增的OpenCV的一些標頭檔案路徑D:\opencv\build\include\opencv\
  3. 庫目錄:生成VC++專案期間,搜尋庫檔案時使用的路徑 3.1 $(VC_LibraryPath_x64):包含了VC的一些.lib檔案 3.2 $(WindowsSDK_LibraryPath_x64):包含了WDK的一些lib檔案 3.3 其他:我們新增的OpenCV的一些Lib路徑,比如d:\opencv\build\lib\Debug;D:\opencv\build\install\x64\vc12\lib 注意:VC++目錄->庫目錄只是指明瞭lib的路徑,具體用哪一個lib,需要在連結器->附加依賴項中新增,比如opencv_calib3d249d.lib等。