\bin 子目錄vcvars32.bat (或 vcvarsall.bat x86 / x64 等)cl.exe 編譯 C/C++ 原始檔
INCLUDE = D:\Microsoft Visual Studio 8\VC\include;
LIB = D:\Microsoft Visual Studio 8\VC\lib;
PATH = D:\Microsoft Visual Studio 8\VC\bin;D:\Microsoft Visual Studio 8\Common7\IDE;
路徑請依實際安裝位置調整。注意:若變數已存在,請追加而非覆蓋。
cl 編譯| 現象 | 原因 | 解決 |
|---|---|---|
'cl' 不是內部或外部命令 | PATH 未含 VC++ bin 目錄、或環境變數未生效 | 重開命令提示字元、檢查 PATH 順序 |
| 找不到標頭檔 | INCLUDE 未正確設定 | 補上 VC++ include 路徑 |
| 連結錯誤:找不到庫 | LIB 未正確設定 | 補上 VC++ lib 路徑 |
| 64 位元編譯失敗 | 未執行正確架構的 vcvarsall.bat | vcvarsall.bat x64 或 amd64 |
cl、link、lib、nmake、msbuild 等完整工具鏈| 參數 | 用途 |
|---|---|
/c | 僅編譯不連結,產生 .obj |
/EHsc | 啟用 C++ 異常處理 (標準) |
/MD / /MT | 動態/靜態連結 CRT |
/O2 / /Od | 優化 / 除錯無優化 |
/W3 / /W4 | 警告等級 |
/D MACRO | 定義前置處理器巨集 |
/I path | 加入標頭檔搜尋路徑 |
/Fo file.obj | 指定輸出 .obj 檔名 |
msbuild 或 cl + linkcl /EHsc test.cpp掌握命令列編譯環境配置,是理解建構系統、排查編譯錯誤、實現自動化流程的基礎技能。