VC的編譯器cl用法初步

2021-07-04 15:01:54 字數 1577 閱讀 9641

寫乙個簡單的cpp程式,比如hello.cpp,現要求使用cl編譯器來生成可執行的程式。cl是compiler的簡稱。最簡單的用法為:

cl hello.cpp

然後會在當前目錄下生成檔案hello.obj、hello.exe,其中編譯器生成的是 common object file format (coff) object (obj)檔案,而linker生成的是可執行檔案 (exe)。

如果想讓生成的可執行檔案採用不同的名字,則使用下面的編譯選項:

cl /ferob hello.cpp

然後會在當前資料夾下產生檔案pairtest.obj、rob.exe檔案。可見生成的可執行檔案的名字已經改為我們需要的名字了。編譯選項/fe的作用就是更改生成的可執行檔案的名字。注意新名字的字尾不要加exe,編譯器會自動加上;同時新名字和/fe之間不能有空格、冒號、或者等號之類的符號,這和g++編譯器的用法是不同的。當然,上面編譯命令中的斜槓/ (forward slash)也可改為-(dash),也能順利進行編譯,如下:

cl -ferob hello.cpp

如果你想讓生成的obj檔案和exe檔案都使用自己喜歡的名字,則使用下面的編譯命令:

cl -forob -ferob hello.cpp

則會在當前資料夾下面生成檔案rob.obj和rob.exe。編譯選項-fo用於命名生成的obj檔案的名字。

關於編譯選項更多的內容,請參見cl compiler options。

上面編譯選項,-fe等後面都跟了乙個引數 (argument),並且引數和選項間沒有空間,或者其他的識別符號。引數和選項間是否加空格取決於每個選項的具體規定。

cl -c hello.cpp

link hello

即會在你的當前目錄下面先產生檔案hello.obj,然後產生hello.exe檔案。注意,使用link命令的時候,不加字尾名的情況下,預設為obj檔案。編譯選項-c表示只編譯,不做鏈結。

假設在當前資料夾下具有檔案:nqueenspuzzle.h, nqueenspuzzle.cpp, testnqueens.cpp, 其中.h檔案定義了乙個類nqueenspuzzle的宣告,檔案nqueenspuzzle.cpp是該類的實現,檔案testnqueens.cpp負責使用這個類。那麼,就像使用g++編譯一樣的簡單,如下:

cl -fetestnqueens testnqueens.cpp nqueenspuzzle.cpp

即在你的資料夾下會增加檔案nqueenspuzzle.obj,testnqueens.obj,和檔案testnqueens.exe。執行可執行檔案即可得到你想要的結果。與上面編譯命令對等的g++編譯命令為:

g++ testnqueens.cpp nqueenspuzzle.cpp -o testnqueens

學習一門語言,當前需要先熟悉一種編譯器的使用方法。正所謂「工欲善其事,比先利其器」。

實踐VC 編譯器cl編譯C C 的程式

環境 windows上已經安裝了vs2005 1 設定環境變數 目的 在cmd視窗下自動識別cl命令 設定 在 我的電腦 屬性 高階 環境變數裡 include d program files microsoft visual studio 8 vc include lib d program fi...

cl 編譯器環境配置問題

cl 編譯器是microsoft 推出的應用於wins 平台上的c c 編譯器 類似於linux系統上的gcc,g 等。實時上vs2015整合開發環境就是呼叫cl.exe來進行原始碼編譯的,所以可以直接在shell中執行 cl option.filename.link linkoption.編譯 我...

微軟cl編譯器的簡單使用

cl的位置 開始 所有程式 microsoft visual studio visual studio tools developer command prompt 編譯器產生通用物件檔案格式 coff 物件 obj 檔案。鏈結器產生可執行檔案 exe 或動態鏈結庫檔案 dll 注意,所有編譯器選項...