visual studio編譯器和連結器使用的環境變數
cl.exe和link.exe分別是visual studio IDE中的編譯器和連結器,就像linux中的gcc編譯器會用到環境變數去完成工作(include路徑與lib路徑等)一樣,它們在工作時
也會用到一些環境變數。下面簡單的介紹一下:
cl.exe:
CL:如果定義了"CL"環境變數,那麼在處理命令列前,cl.exe會處理在"CL"中定義和選項和引數。
INCLUDE:這個環境變數包含了cl.exe所需要使用的包含檔案,如標頭檔案等。如果開發人員需要將其它檔案包含到編譯器的搜尋路徑中,需要將路徑設定到INCLUDE環境變數中,多個路徑間用";"隔開。在C語言中使用#include包含的標頭檔案,檔案路徑必須是以原始檔路徑為起點的相對路徑,或者是INCLUDE環境變數中和路徑。如果進行標準C/C++
開發,那麼visual studio的安裝目錄,(\VC\INCLUDE)必須位於此環境變數中,如果使用windows API進行開發,那麼Platform SDK的安裝目錄的\include目錄也必須位於此
環境變數中。
LIBPATH:C++中使用#using引用的元資料檔案的目錄。
link.exe:
LINK:如果定義了"LINK"環境變數,那麼在處理命令列前,link.exe會處理在"LINK"中定義和選項和引數。
LIB:link.exe會從如下路徑搜尋物件檔案和庫檔案。
(1)當前路徑
(2)命令列上由/BASE選項指定的路徑。
(3)使用“LIB”環境變數中的路徑。 如果進行標準C/C++開發,那麼visual studio的安裝目錄,(\VC\lib)必須位於此環境變數中,如果使用windows API進行開發,那麼Platform SDK的安裝目錄的\lib目錄也必須位於此環境變數中。
PATH:link.exe,nmake等工具引用其它工具的路徑。
TMP:連結時尋找OMF或.res檔案時,會從這個路徑中尋找。