導航:首頁 > 源碼編譯 > vs靜態編譯

vs靜態編譯

發布時間:2022-01-15 21:09:50

A. 動態編譯和靜態編譯有何主要區別

靜態編譯與動態編譯的區別
1、動態編譯的可執行文件需要附帶一個的動態鏈接庫,在執行時,需要調用其對應動態鏈接庫中的命令。所以其優點一方面是縮小了執行文件本身的體積,另一方面是加快了編譯速度,節省了系統資源。缺點一是哪怕是很簡單的程序,只用到了鏈接庫中的一兩條命令,也需要附帶一個相對龐大的鏈接庫;二是如果其他計算機上沒有安裝對應的運行庫,則用動態編譯的可執行文件就不能運行。
2、靜態編譯就是編譯器在編譯可執行文件的時候,將可執行文件需要調用的對應動態鏈接庫(.so)中的部分提取出來,鏈接到可執行文件中去,使可執行文件在運行的時候不依賴於動態鏈接庫。所以其優缺點與動態編譯的可執行文件正好互補。

B. Opencv怎麼靜態編譯(VS2012下)

靜態編譯,需要把你的lib文件拷貝到當前目錄下,然後在你的應用程序里寫上如下語句
#pragma comment(lib,"opencv_core243d")這個樣子。

C. 靜態編譯和動態編譯有何不同

靜態編譯就是把庫函數編譯到你的程序里 這樣編譯的好處是 可以適應不同的平台 如果你是用window系統的話不建議用靜態編譯 因為這樣會使你的代碼量增大
動態編譯就是不把庫函數編譯到你的程序里

D. vs2013如何靜態編譯

項目屬性-配置屬性-常規-MFC的使用-使用標准Windows庫(不用MFC)
然後,C/C++-代碼生成-運行庫-多線程/MT或者多線程調試/MTd
帶d的是鏈接調試版本,DEBUG項目選/MTd,Release項目選/MT
如果使用MFC,在MFC的使用中設置靜態、動態鏈接,代碼生成中必須使用<從上級繼承>

E. vs2005 2008如何設置靜態編譯

靜態編譯?你指的是MFC靜態鏈接吧。

在你的VC項目上單擊右鍵,點擊屬性,然後看配置屬性裡面的常規項,在右面的MFC使用中選擇「在靜態庫中使用MFC」就可以了。

注意,上面一欄「配置」里,Debug和Release都要改。

F. 如何設置vc2010靜態編譯就是可以讓exe在別人的電腦上也運行的。

項目-屬性-配置屬性-常規 里的「MFC的使用」 改為在「靜態庫中使用MFC」

G. VS開發的文件編譯成靜態太大,用什麼工具編

MFC本身就是「肥代碼」(FatCode)的,
代碼冗餘量極大,
要想文件小,
就不要使用MFC,可以使用ATL,或者純API。

H. VS2010 C3 wnform 如何靜態編譯

不行吧,你用NET FrameWork 2.0或3.0編譯一下,一般現在的電腦都自帶裝2.0或其他de的了

I. vs2010為什麼設置了靜態編譯還是需要dll文件才能運行exe

靜態編譯:就是在編譯可執行文件的時候,將可執行文件需要調用的對應動態鏈接庫(.so)中的部分提取出來,鏈接到可執行文件中去,使可執行文件在運行的時候不依賴動態鏈接庫。

編譯方式:

第1種:

設置:

1、項目->配置屬性->常規->MFC的使用:在靜態庫中使用MFC

2、項目 -> 配置屬性->C/C++->代碼生成->運行庫 :選擇 多線程調試(/MTd)。

編譯時,選擇的是debug,win32

然後執行編譯生成方案,在該工程目錄下的debug文件中,找到該.exe文件,即可在其他電腦運行。

第2種:

一般可以配置一下兩項:

1.項目 -> 配置屬性->常規->MFC的使用 :在靜態庫中使用MFC。

2.項目 -> 配置屬性->C/C++->代碼生成->運行庫 :選擇 多線程調試(/MT)。

編譯時,選擇的是release,win32(這個選擇項在工具欄的debug選框中,一般我們使用debug方式)

閱讀全文

與vs靜態編譯相關的資料

熱點內容
你對我們的app有什麼建議 瀏覽:576
phpgetcookie 瀏覽:137
程序員最煩遇到的單詞 瀏覽:122
開始伺服器升級需要什麼 瀏覽:977
gcc中的編譯選項 瀏覽:185
程序員長沙開滴滴 瀏覽:136
十幾加幾的進位加法演算法 瀏覽:381
c語言實現字母加密成字母 瀏覽:325
linux重啟java服務 瀏覽:50
ubuntu的命令行在哪裡 瀏覽:981
伺服器tk是什麼意思 瀏覽:396
防止軟體加密碼卸載 瀏覽:181
自建伺服器與雲伺服器 瀏覽:541
已解壓車能過戶能買嗎 瀏覽:774
上網行為linux 瀏覽:352
解壓對身體的好處 瀏覽:71
php服務端框架 瀏覽:454
gitlabpdf 瀏覽:611
大專程序員面試公司 瀏覽:950
iphone相片不能新建文件夾 瀏覽:450