導航:首頁 > 源碼編譯 > vc每次編譯之後都要重啟嗎

vc每次編譯之後都要重啟嗎

發布時間:2024-09-23 15:27:57

㈠ CMD里使用CL命令編譯c++,每次都要運行vcvars32.bat才能用,不然就彈出計算機丟失mspdb110.dll。

在開始目錄中找到VS2012安裝目錄-->開發工具目錄項-->vs2012 X64 command prompt

如果喜歡,你可以把它拖到桌面。點擊後就可以cl, res, nmake等(vs2012安裝目錄/VC/bin目錄下所有可執行文件)。
你右擊vs2012 X64 command prompt的屬性選項,一定是C:\WINDOWS\system32\cmd.exe /k vcvars32.bat

Note:很久沒用Windows了,有的地方不甚准確。

㈡ vc的各編譯選項都是什麼意思

VC編譯選項

/Od 禁用優化(默認值) disable optimizations (default)
/Ox 最大化選項。(/Ogityb2 /Gs) maximum opts. (/Ogityb1 /Gs)
/Og 啟用全局優化 enable global optimization
/Oy[-] 啟用框架指針省略 enable frame pointer omission
/Oi 啟用內建函數 enable intrinsic functions

-代碼生成-
/G3 為 80386 進行優化 optimize for 80386
/G4 為 80486 進行優化 optimize for 80486
/GR[-] 啟用 C++ RTTI enable C++ RTTI
/G5 為 Pentium 進行優化 optimize for Pentium
/G6 為 Pentium Pro 進行優化 optimize for Pentium Pro
/GX[-] 啟用 C++ 異常處理(與 /EHsc 相同) enable C++ EH (same as /EHsc)
/EHs 啟用同步 C++ 異常處理 enable synchronous C++ EH
/GD 為 Windows DLL 進行優化 optimize for Windows DLL
/GB 為混合模型進行優化(默認) optimize for blended model (default)
/EHa 啟用非同步 C++ 異常處理 enable asynchronous C++ EH
/Gd __cdecl 調用約定 __cdecl calling convention
/EHc extern「C」默認為 nothrow extern "C" defaults to nothrow
/Gr __fastcall 調用約定 __fastcall calling convention
/Gi[-] 啟用增量編譯 enable incremental compilation
/Gz __stdcall 調用約定 __stdcall calling convention
/Gm[-] 啟用最小重新生成 enable minimal rebuild
/GA 為 Windows 應用程序進行優化 optimize for Windows Application
/Gf 啟用字元串池 enable string pooling
/QIfdiv[-] 啟用 Pentium FDIV 修復 enable Pentium FDIV fix
/GF 啟用只讀字元串池 enable read-only string pooling
/QI0f[-] 啟用 Pentium 0x0f 修復 enable Pentium 0x0f fix
/Gy 分隔鏈接器函數 separate functions for linker
/GZ 啟用運行時調試檢查 enable runtime debug checks
/Gh 啟用鉤子函數調用 enable hook function call
/Ge 對所有函數強制堆棧檢查 force stack checking for all funcs
/Gs[num] 禁用堆棧檢查調用 disable stack checking calls

-輸出文件-
/Fa[file] 命名程序集列表文件 name assembly listing file
/Fo 命名對象文件 name object file
/FA[sc] 配置程序集列表 configure assembly listing
/Fp 命名預編譯頭文件 name precompiled header file
/Fd[file] 命名 .PDB 文件 name .PDB file
/Fr[file] 命名源瀏覽器文件 name source browser file
/Fe 命名可執行文件 name executable file
/FR[file] 命名擴展 .SBR 文件 name extended .SBR file
/Fm[file] 命名映射文件 name map file

-預處理器-
/FI 命名強制包含文件 name forced include file
/C 不吸取注釋 don't strip comments
/U 移除預定義宏 remove predefined macro
/D{=|#} 定義宏 define macro
/u 移除所有預定義宏 remove all predefined macros
/E 將預處理定向到標准輸出 preprocess to stdout
/I 添加到包含文件的搜索路徑 add to include search path
/EP 將預處理定向到標准輸出,不要帶行號 preprocess to stdout, no #line
/X 忽略「標准位置」 ignore "standard places"
/P 預處理到文件 preprocess to file

-語言-
/Zi 啟用調試信息 enable debugging information
/Zl 忽略 .OBJ 中的默認庫名 omit default library name in .OBJ
/ZI 啟用調試信息的「編輯並繼續」功能 enable Edit and Continue debug info
/Zg 生成函數原型 generate function prototypes
/Z7 啟用舊式調試信息 enable old-style debug info
/Zs 只進行語法檢查 syntax check only
/Zd 僅要行號調試信息 line number debugging info only
/vd{0|1} 禁用/啟用 vtordisp disable/enable vtordisp
/Zp[n] 在 n 位元組邊界上包裝結構 pack structs on n-byte boundary
/vm 指向成員的指針類型 type of pointers to members
/Za 禁用擴展(暗指 /Op) disable extensions (implies /Op)
/noBool 禁用「bool」關鍵字 disable "bool" keyword
/Ze 啟用擴展(默認) enable extensions (default)

- 雜項 -
/?, /help 列印此幫助消息 print this help message
/c 只編譯,不鏈接 compile only, no link
/W 設置警告等級(默認 n=1) set warning level (default n=1)
/H 最大化外部名稱長度 max external name length
/J 默認 char 類型是 unsigned default char type is unsigned
/nologo 取消顯示版權消息 suppress right message
/WX 將警告視為錯誤 treat warnings as errors
/Tc 將文件編譯為 .c compile file as .c
/Yc[file] 創建 .PCH 文件 create .PCH file
/Tp 將文件編譯為 .cpp compile file as .cpp
/Yd 將調試信息放在每個 .OBJ 中 put debug info in every .OBJ
/TC 將所有文件編譯為 .c compile all files as .c
/TP 將所有文件編譯為 .cpp compile all files as .cpp
/Yu[file] 使用 .PCH 文件 use .PCH file
/V 設置版本字元串 set version string
/YX[file] 自動的 .PCH 文件 automatic .PCH
/w 禁用所有警告 disable all warnings
/Zm 最大內存分配(默認為 %) max memory alloc (% of default)

-鏈接-
/MD 與 MSVCRT.LIB 鏈接 link with MSVCRT.LIB
/MDd 與 MSVCRTD.LIB 調試庫鏈接 link with MSVCRTD.LIB debug lib
/ML 與 LIBC.LIB 鏈接 link with LIBC.LIB
/MLd 與 LIBCD.LIB 調試庫鏈接 link with LIBCD.LIB debug lib
/MT 與 LIBCMT.LIB 鏈接 link with LIBCMT.LIB
/MTd 與 LIBCMTD.LIB 調試庫鏈接 link with LIBCMTD.LIB debug lib
/LD 創建 .DLL Create .DLL
/F 設置堆棧大小 set stack size
/LDd 創建 .DLL 調試庫 Create .DLL debug libary
/link [鏈接器選項和庫] [linker options and libraries]

㈢ 為什麼我每次編譯C語言時,都會發生這樣的錯誤

這個可能是你編程用的軟體沒有裝好,一般是路徑安裝問題。你用的是不是vc++6.0?是的話,下面有些解決方法你可以試試。
關於vc++6.0軟體編程時出現「Error spawning cl.exe」「 cannot open file "Debug/sad.exe"(其中sad是文件名)」和「計算機丟失mspdb60.ll」等類似問題時;
主要可能存在以下問題1.以前安裝過vc++6.0,但是卸載不徹底,或者重裝系統後,原來安裝軟體不能正常使用。解決方法:卸載原軟體。
2,vc++6.0與windowxpsp3兼容,在window7下計算機會提示軟體不兼容,這時不用修改成兼容模式,否者就不能使用了,直接安裝就可以了,不用考慮兼容性問題,
還用如果是從網上下載的軟體,安裝時的注冊碼一般輸入111-111111就行。另外,下載的破解版軟體可能被殺毒軟體截獲,安裝前最好先關閉殺毒軟體,然後按提示進行安裝。
3.在排除前兩個問題的前提下,出現上述問題時,很可能的問題是軟體中的設置出現錯誤。可以按下述方法進行調試即可:
打開vc界面 點擊VC「TOOLS(工具)」—>「Option(選擇)」 —>「Directories(目錄)」重新設置「Excutable Fils、Include Files、 Library Files、Source Files」
的路徑。很多情況可能就一個盤符的不同 (例如你的VC裝在C,但是這些路徑全部在D),改過來就OK了如果你裝在其他盤里,則仿照其路徑變通就行(我就是裝在D盤)。
關鍵是microsoft visual studio\ 後面的東西要相同。 如果你是按照初始路徑安裝vc6.0的,路徑應為:
executatble files:
C:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin
C:\Program Files\Microsoft Visual Studio\VC98\BIN
C:\Program Files\Microsoft Visual Studio\Common\TOOLS
C:\Program Files\Microsoft Visual Studio\Common\TOOLS\WINNT

include files:
C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\MFC\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\ATL\INCLUDE

library files:
C:\Program Files\Microsoft Visual Studio\VC98\LIB
C:\Program Files\Microsoft Visual Studio\VC98\MFC\LIB

source files:
C:\Program Files\Microsoft Visual Studio\VC98\MFC\SRC
C:\Program Files\Microsoft Visual Studio\VC98\MFC\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\ATL\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\CRT\SRC
更改完成後,關閉軟體,重新打開,再進行編程。
4,如果按第三步操作後,編程時仍然提示錯誤,就在建立工程時,將存儲路徑改為你自己建立的文件夾(隨便在那個盤建一個都行,只要自己能找到就行),
以避免編譯時文件不能打開的問題。
5,經過以上四步調試,一般情況下就可以使用了,如果還不能使用的話,可以嘗試一下三種方法。
一,卸掉現有版本,更換版本重新安裝,然後再按以上步驟進行調試。
二,直接將別人計算機中安裝好的軟體從安裝盤中復制的自己的電腦上,(這樣做有時也要按第三步和第四步進行調整,),找出文件中的圖標即可運行。
三,最後一個辦法,重裝系統,系統重裝後,一定要先裝vc++再裝補丁,不然的話還可能錯誤。

閱讀全文

與vc每次編譯之後都要重啟嗎相關的資料

熱點內容
linux的重命名命令 瀏覽:228
小船過河問題演算法 瀏覽:893
phpsvgpng 瀏覽:178
交易宏命令 瀏覽:27
php獲取當前類名稱 瀏覽:403
設置代理伺服器的目的是什麼 瀏覽:901
linux桌面版文件夾 瀏覽:238
51單片機pwm限流電阻 瀏覽:205
vc每次編譯之後都要重啟嗎 瀏覽:607
壓縮彈簧的載荷 瀏覽:506
epl編程 瀏覽:130
解釋類和編譯類中間語言 瀏覽:562
內存卡怎樣編輯mp3文件夾 瀏覽:801
如何讓伺服器支持co協議 瀏覽:48
文件夾讀寫錯誤刪除不了 瀏覽:303
怎麼查安卓機用了多久 瀏覽:700
cmd命令行亂碼 瀏覽:266
Vs中的內部編譯器錯誤 瀏覽:319
江蘇銀行明細解壓密碼怎麼查詢 瀏覽:454
python3百度關鍵字圖片 瀏覽:246