❶ 易語言的靜態編譯和獨立編譯有什麼區別
獨立編譯:運行時會把需要的支持庫釋放到一個系統臨時文件夾的子目錄內,然後運行.
靜態編譯:運行是不需要任何的支持庫支持就可以運行,支持庫已經和exe結合到一起了
❷ 我的易語言靜態編譯失敗
無法定位鏈接器!請檢查 tools\link.ini 中的配置是否正確。
因為它是檢測這個環境變數的MSDevDir
你找到易語言目錄下面的tools\link.ini這個文件打開
......................................................................
; 這是易語言鏈接器插件的配置文件,用於設置靜態編譯時使用的外部鏈接器及其參數
;
; 配置項採用 name=value 的形式
; 行首為半形分號,表示該行是注釋
; 欲使某一配置項生效,請刪除該行行首的分號(;)
[linker]
;linker_type=vc6
; linker_type用於指定鏈接器類型。可選值為 vc6, gcc4, elink, alink 等。目前暫不可用。
linker="D:\Program Files\E 5.0\vc98linker\Bin\link.exe"
; linker用於指定鏈接器。要求給出完整路徑,路徑兩端可以加上半形雙引號。
; 如果不指定此項,默認會根據linker_type嘗試尋找鏈接器路徑。
;output_file="C:\output.txt"
; output_file用於設置鏈接器輸出重定向到指定的文件。要求給出完整路徑,路徑兩端可以加上半形雙引號。
; 如果不指定此項,默認在易語言IDE的「輸出」面板中輸出。
.....................................................................
找到這句:
linker="D:\Program Files\E 5.0\vc98linker\Bin\link.exe"
; linker用於指定鏈接器。要求給出完整路徑,路徑兩端可以加上半形雙引號。
把D:\Program Files\E 5.0路徑改成你的E語言安裝路徑
還要保證你E語言目錄下面有 \vc98linker 這個目錄,裡面是VC的編譯器
現在如果你的E語言是 破解版或者正版就可以靜態編譯了(試用版需要去破解才能編譯)
❸ 易語言靜態配置編譯器是干什麼的
易語言沒有自己的編譯器,但他用的是VC的編譯器。
非靜態編譯:
易語言因為沒有自己的靜態編譯器,如果不使用別人的編譯器,你編譯出去的軟體,將會把你軟體用到的函數和命令所屬的支持庫,DLL等...都編譯進軟體 或 軟體同目錄,即使你不是用到庫的全部命令,也會被把所有用到命令的很多支持庫,整庫編譯進去,這樣導致了軟體體積巨大,還會影響軟體效率。。
靜態編譯:
易語言因沒有自己的靜態編譯器,所以用的是VC的編譯器。使用靜態編譯的好處就是,當你調用了很多庫裡面的命令時候,不需要把這么多庫都帶上編譯出去。靜態編譯可以讓他從庫中脫離出來,只編譯被調用到的命令部分。這樣減輕了軟體的體積負擔 和 運行效率。。。
現在明白了吧!呵呵!記得採納哦!!
❹ 易語言編譯器中的 (靜態編譯) 有什麼作用
用靜態編譯它會把支持庫文件和EXE程序一起打包,編譯出來的EXE程序可以在沒有裝易語言的電腦中運行。如果不是靜態編譯他會把支持庫文件和EXE分離開,如果失去支持文件EXE程序就無法在沒有裝易語言的電腦中運行。
❺ nginx編譯的時候是動態編譯還是靜態的
靜態編譯與動態編譯的區別:
1、動態編譯的可執行文件需要附帶一個的動態鏈接庫,在執行時,需要調用其對應動態鏈接庫中的命令。
所以其優點一方面是縮小了執行文件本身的體積,另一方面是加快了編譯速度,節省了系統資源。
缺點一是哪怕是很簡單的程序,只用到了鏈接庫中的一兩條命令,也需要附帶一個相對龐大的鏈接庫;二是如果其他計算機上沒有安裝對應的運行庫,則用動態編譯的可執行文件就不能運行。
2、靜態編譯就是編譯器在編譯可執行文件的時候,將可執行文件需要調用的對應動態鏈接庫(.so)中的部分提取出來,鏈接到可執行文件中去,使可執行文件在運行的時候不依賴於動態鏈接庫。所以其優缺點與動態編譯的可執行文件正好互補。
❻ 易語言編譯和靜態編譯的區別
1、庫文件和程序文件不同,編譯是把支持庫文件和程序分開來,如果給別人去用,別人卻沒安裝易語言,就要把支持庫文件帶上給那人才能用。但是靜態編譯是把支持庫文件打包到程序里去.這樣,如果對方沒裝易語言也照樣可以正常使用和獨立編譯。
❼ 靜態聯編和靜態編譯
聯編就是將模塊或者函數合並在一起生成可執行代碼的處理過程,同時對每個模塊或者函數調用分配內存地址,並且對外部訪問也分配正確的內存地址,它是計算機程序彼此關聯的過程。按照聯編所進行的階段不同,可分為兩種不同的聯編方法:靜態聯編和動態聯編。
靜態聯編是指在編譯階段就將函數實現和函數調用關聯起來,因此靜態聯編也叫早綁定,在編譯階段就必須了解所有的函數或模塊執行所需要檢測的信息,它對函數的選擇是基於指向對象的指針(或者引用)的類型,C語言中,所有的聯編都是靜態聯編,據我所知道的,任何一種編譯器都支持靜態聯編(廢話)。
動態聯編是指在程序執行的時候才將函數實現和函數調用關聯,因此也叫運行時綁定或者晚綁定,動態聯編對函數的選擇不是基於指針或者引用,而是基於對象類型,不同的對象類型將做出不同的編譯結果。C++中一般情況下聯編也是靜態聯編,但是一旦涉及到多態和虛擬函數就必須要使用動態聯編了。下面將介紹一下多態。
多態:字面的含義是具有多種形式或形態。C++多態有兩種形式,動態多態和靜態多態;動態多態是指一般的多態,是通過類繼承和虛函數機制實現的多態;靜態多態是通過模板來實現,因為這種多態實在編譯時而非運行時,所以稱為靜態多態。
什麼是靜態編譯
靜態編譯,就是編譯器在編譯可執行文件的時候,將可執行文件需要調用的對應動態鏈接庫(.so)中的部分提取出來,鏈接到可執行文件中去,使可執行文件在運行的時候不依賴於動態鏈接庫。
編輯本段靜態編譯與動態編譯的區別
動態編譯的可執行文件需要附帶一個的動態鏈接庫,在執行時,需要調用其對應動態鏈接庫中的命令。所以其優點一方面是縮小了執行文件本身的體積,另一方面是加快了編譯速度,節省了系統資源。缺點一是哪怕是很簡單的程序,只用到了鏈接庫中的一兩條命令,也需要附帶一個相對龐大的鏈接庫;二是如果其他計算機上沒有安裝對應的運行庫,則用動態編譯的可執行文件就不能運行。
靜態編譯就是編譯器在編譯可執行文件的時候,將可執行文件需要調用的對應動態鏈接庫(.so)中的部分提取出來,鏈接到可執行文件中去,使可執行文件在運行的時候不依賴於動態鏈接庫。所以其優缺點與動態編譯的可執行文件正好互補。
❽ 易語言靜態編譯和獨立編譯有什麼區別
靜態編譯是指編譯後的exe文件(可執行文件)包含了所有支持庫文件,只有單獨一個exe文件。
獨立編譯在編譯後也只有單獨一個exe文件,不過會在運行後立即釋放支持庫到Windows的臨時文件夾的子目錄中。
可能的Windows臨時文件存放目錄:
%USERPROFILE%AppData
%USERPROFILE%AppDataLocalTemp
上文的「 %UESRPROFILE% 」是指用戶目錄。輸入到電腦文件(文件資源管理器)的地址欄中可以直接打開,資料來源點此。
❾ 易語言中的編譯和靜態編譯有何區別
靜態編譯就是編譯器在編譯可執行文件的時候,將可執行文件需要調用的對應動態鏈接庫(.so)中的部分提取出來,鏈接到可執行文件中去,使可執行文件在運行的時候不依賴於動態鏈接庫。而編譯就是把可執行文件和支持庫一起寫出到外部,在需要的時候直接對其中一個支持庫進行搜索某一條命令.
打個比方.
你家有6個罐子,裡面分別放了1塊,5塊,10塊,20塊,50塊,100塊.
然後你出門的時候要帶每一種錢各一個,所以就從這六個罐子里每個罐子都拿出一張錢.
這就是靜態編譯.
我再打個比方.
你家還是有6個罐子,裡面分別放了1塊,5塊,10塊,20塊,50塊,100塊.
然後你出門的時候,還是想要都帶一種,然後你就不是每個罐子里拿錢了,而是直接把整個罐子都帶在了身上出門.
相比起來,靜態編譯要輕松,小巧了許多了.
lz 手打很累的 採納吧
❿ 靜態編譯和動態編譯有何不同
靜態編譯就是把庫函數編譯到你的程序里 這樣編譯的好處是 可以適應不同的平台 如果你是用window系統的話不建議用靜態編譯 因為這樣會使你的代碼量增大
動態編譯就是不把庫函數編譯到你的程序里