C/C++ 編譯器選項(xiàng)
E:\CEGUI\tolua++-1.0.92\src\tests.simon>cl /?
用于 80x86 的 Microsoft (R) 32 位 C/C++ 優(yōu)化編譯器 14.00.50727.762 版
版權(quán)所有(C) Microsoft Corporation。保留所有權(quán)利。
C/C++ 編譯器選項(xiàng)
-優(yōu)化-
/O1 最小化空間 /O2 最大化速度
/Ob<n> 內(nèi)聯(lián)擴(kuò)展(默認(rèn) n=0) /Od 禁用優(yōu)化(默認(rèn))
/Og 啟用全局優(yōu)化 /Oi[-] 啟用內(nèi)部函數(shù)
/Os 優(yōu)選代碼空間 /Ot 優(yōu)選代碼速度
/Ox 最大化優(yōu)化 /Oy[-] 啟用幀指針省略
-代碼生成-
/GF 啟用只讀字符串池 /Gm[-] 啟用最小重新生成
/Gy[-] 分隔鏈接器函數(shù) /GS[-] 啟用安全檢查
/GR[-] 啟用 C++ RTTI /GX[-] 啟用 C++ EH (與 /EHsc 相同)
/EHs 啟用 C++ EH (沒有 SEH 異常) /EHa 啟用 C++ EH (w/ SEH 異常)
/EHc 外部“C”默認(rèn)為 nothrow
/fp:<except[-]|fast|precise|strict> 選擇浮點(diǎn)模式:
except[-] - 在生成代碼時(shí)考慮浮點(diǎn)異常
fast -“fast”浮點(diǎn)模式;結(jié)果可預(yù)測(cè)性比較低
precise -“precise”浮點(diǎn)模式;結(jié)果可預(yù)測(cè)
strict -“strict” 浮點(diǎn)模式(意味著 /fp:except)
/GL[-] 啟用鏈接時(shí)代碼生成 /GA 為 Windows 應(yīng)用程序進(jìn)行優(yōu)化
/Ge 對(duì)所有函數(shù)強(qiáng)制堆棧檢查 /Gs[num] 控制堆棧檢查調(diào)用
/Gh 啟用 _penter 函數(shù)調(diào)用 /GH 啟用 _pexit 函數(shù)調(diào)用
/GT 生成纖程安全 TLS 訪問 /RTC1 啟用快速檢查(/RTCsu)
/RTCc 轉(zhuǎn)換為較小的類型檢查 /RTCs 堆棧幀運(yùn)行時(shí)檢查
/RTCu 未初始化的局部用法檢查
/clr[:option] 為公共語言運(yùn)行庫編譯,其中 option 是:
pure - 生成只包含 IL 的輸出文件(沒有本機(jī)可執(zhí)行代碼)
safe - 生成只包含 IL 的可驗(yàn)證輸出文件
oldSyntax - 接受 Visual C++ 2002/2003 的托管擴(kuò)展語法
initialAppDomain - 啟用 Visual C++ 2002 的初始 AppDomain 行為
noAssembly - 不產(chǎn)生程序集 /Gd __cdecl 調(diào)用約定
/Gr __fastcall 調(diào)用約定 /Gz __stdcall 調(diào)用約定
/GZ 啟用堆棧檢查(/RTCs) /QIfist[-] 使用 FIST 而不是 ftol()
/hotpatch 確保可熱修補(bǔ)映像的函數(shù)填充
/arch:<SSE|SSE2> CPU 結(jié)構(gòu)的最低要求,為以下內(nèi)容之一:
SSE - 啟用支持 SSE 的 CPU 可用的指令
SSE2 - 啟用支持 SSE2 的 CPU 可用的指令
-輸出文件-
/Fa[file] 命名程序集列表文件 /FA[scu] 配置程序集列表
/Fd[file] 命名 .PDB 文件 /Fe<file> 命名可執(zhí)行文件
/Fm[file] 命名映射文件 /Fo<file> 命名對(duì)象文件
/Fp<file> 命名預(yù)編譯頭文件 /Fr[file] 命名源瀏覽器文件
/FR[file] 命名擴(kuò)展 .SBR 文件
/doc[file] 處理 XML 文檔注釋,并可選擇命名 .xdc 文件
-預(yù)處理器-
/AI<dir> 添加到程序集搜索路徑 /FU<file> 強(qiáng)制使用程序集/模塊
/C 不抽出注釋 /D<name>{=|#}<text> 定義宏
/E 將預(yù)處理定向到 stdout /EP 預(yù)處理到標(biāo)準(zhǔn)輸出,沒有 #line
/P 預(yù)處理到文件 /Fx 將插入的代碼合并到文件中
/FI<file> 命名強(qiáng)制包含文件 /U<name> 移除預(yù)定義的宏
/u 移除所有預(yù)定義的宏 /I<dir> 添加到包含搜索路徑
/X 忽略“標(biāo)準(zhǔn)位置”
-語言-
/Zi 啟用調(diào)試信息 /Z7 啟用舊式調(diào)試信息
/Zp[n] 在 n 字節(jié)邊界上包裝結(jié)構(gòu) /Za 禁用擴(kuò)展
/Ze 啟用擴(kuò)展(默認(rèn)) /Zl 忽略 .OBJ 中的默認(rèn)庫名
/Zg 生成函數(shù)原型 /Zs 只進(jìn)行語法檢查
/vd{0|1|2} 禁用/啟用 vtordisp /vm<x> 指向成員的指針類型
/Zc:arg1[,arg2] C++ 語言一致性,這里的參數(shù)可以是:
forScope[-] - 對(duì)范圍規(guī)則強(qiáng)制使用標(biāo)準(zhǔn) C++
wchar_t[-] - wchar_t 是本機(jī)類型,不是 typedef
/ZI 啟用“編輯并繼續(xù)”調(diào)試信息 /openmp 啟用 OpenMP 2.0 語言擴(kuò)展
- 雜項(xiàng) -
@<file> 選項(xiàng)響應(yīng)文件 /?, /help 打印此幫助消息
/bigobj 生成擴(kuò)展的對(duì)象格式 /c 只編譯,不鏈接
/errorReport:option 將內(nèi)部編譯器錯(cuò)誤報(bào)告給 Microsoft
none - 不發(fā)送報(bào)告 prompt - 提示立即發(fā)送報(bào)告
queue - 在下一次管理員登錄時(shí),提示發(fā)送報(bào)告(默認(rèn))
send - 自動(dòng)發(fā)送報(bào)告 /FC 診斷中使用完整路徑名
/H<num> 最大外部名稱長(zhǎng)度 /J 默認(rèn) char 類型是 unsigned
/nologo 取消顯示版權(quán)消息 /showIncludes 顯示包含文件名
/Tc<source file> 將文件編譯為 .c /Tp<source file> 將文件編譯為 .cpp
/TC 將所有文件編譯為 .c /TP 將所有文件編譯為 .cpp
/V<string> 設(shè)置版本字符串 /w 禁用所有警告
/wd<n> 禁用警告 n /we<n> 將警告 n 視為錯(cuò)誤
/wo<n> 發(fā)出一次警告 n /w<l><n> 為 n 設(shè)置警告等級(jí) 1-4
/W<n> 設(shè)置警告等級(jí)(默認(rèn) n=1) /Wall 啟用所有警告
/WL 啟用單行診斷 /WX 將警告視為錯(cuò)誤
/Yc[file] 創(chuàng)建 .PCH 文件 /Yd 將調(diào)試信息放在每個(gè) .OBJ 中
/Yl[sym] 為調(diào)試庫插入 .PCH 引用 /Yu[file] 使用 .PCH 文件
/Y- 禁用所有 PCH 選項(xiàng) /Zm<n> 最大內(nèi)存分配(默認(rèn)為 %)
/Wp64 啟用 64 位端口定位警告
-鏈接-
/LD 創(chuàng)建 .DLL /LDd 創(chuàng)建 .DLL 調(diào)試庫
/LN 創(chuàng)建 .netmodule /F<num> 設(shè)置堆棧大小
/link [鏈接器選項(xiàng)和庫] /MD 與 MSVCRT.LIB 鏈接
/MT 與 LIBCMT.LIB 鏈接 /MDd 與 MSVCRTD.LIB 調(diào)試庫鏈接
/MTd 與 LIBCMTD.LIB 調(diào)試庫鏈接
-代碼分析-
/analyze[:WX-] 啟用代碼分析
WX- - 即使調(diào)用了 /WX,也不應(yīng)將代碼分析警告視為錯(cuò)誤
makefile
nmake help
C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Samples\Multi
media\DirectShow\BaseClasses>nmake /?
Microsoft (R) Program Maintenance Utility Version 7.00.8882
Copyright (C) Microsoft Corp 1988-2000. All rights reserved.
Usage: NMAKE @commandfile
NMAKE [options] [/f makefile] [/x stderrfile] [macrodefs] [targets]
Options:
/A Build all evaluated targets
/B Build if time stamps are equal
/C Suppress output messages
/D Display build information
/E Override env-var macros
/HELP Display brief usage message
/I Ignore exit codes from commands
/K Build unrelated targets on error
/N Display commands but do not execute
/NOLOGO Suppress copyright message
/P Display NMAKE information
/Q Check time stamps but do not build
/R Ignore predefined rules/macros
/S Suppress executed-commands display
/T Change time stamps but do not build
/U Dump inline files
/Y Disable batch-mode
/? Display brief usage message
posted on 2008-10-28 15:28
七星重劍 閱讀(2421)
評(píng)論(3) 編輯 收藏 引用 所屬分類:
PL--c/c++ 、
IDE -- visual c++