我已經編譯了來自Amazon Linux實例的源單聲道運行時間。編譯後,'lib'和'bin'目錄總共320MB。我希望儘可能小。我可以從那裏刪除什麼(如果有的話)以儘可能節省空間。降低單聲道運行時間大小
回答
首先,我會從這裏開始:
How to make a smaller Mono install/Small Footprint
對於自己:
我不剝離的二進制文件或「重新連接」的組件,但我有一堆配置選項關閉,當然,4.x版本的單聲道您的里程可能會有所不同:
單聲道dir的OS-X/Linux磁盤使用量約爲174MB,其中GAC約爲60MB ~~/LIB /單/ GAC)。如果您沒有使用GAC來解析程序集,但是我沒有使用該程序,我只剩下大約110MB的全部4.5框架。有很多的框架項,我個人從來沒有使用,但我從來沒有發現它值得創建刪除列表中爲它試圖挽救另一個10-30MB的...
FYI:
我的「小「OS-X配置:
./autogen.sh \
--with-tls=posix \
--enable-nls=no \
--with-mcs-docs=no \
--with-profile2=no \
--with-profile4=no \
--with-profile4_5=yes \
--with-moonlight=no \
--host=i386-apple-darwin10 \
--with-glib=embedded \
--prefix=${PlayInstallPath}
我的 '小' 的Linux配置:
./autogen.sh \
--with-mcs-docs=no \
--with-profile2=no \
--with-profile4=no \
--with-profile4_5=yes \
--with-moonlight=no \
--prefix=${PlayInstallPath}
更新的評論:
我可以擺脫2.0目錄 - 我將永遠瞄準4.5 框架。我如何才能只使用4.5目錄並擺脫GAC的 ?我可以在那裏複製適當的dll嗎?
運行而不GAC:
如果你看看像Xamarin工作室/單聲道開發了一款應用,它使用的MSBuild來解決裝配位置,而不是GAC。 GAC並不是真正需要的,在新的MS .Net Core部署模型中,應用程序/服務/ Docker/etc等所需的.Net程序集只複製到同一個部署目錄中,版本控制問題不是問題,因爲您可以回滾目錄更改以恢復到之前的版本,或者只是指向不同目錄的sym鏈接以更改爲新版本,等等......如果您正在爲生產臨時/版本執行此操作,請與DevOps對話以協調誰/什麼/何時何地...
單聲道,你可以使用MONO_PATH跳過GAC,直接進入到lib目錄下,同時這也是不是最佳實踐,它工作在我們環境,我們在做什麼(你milage會根據應用類型)有所不同,但閱讀下面的鏈接單,瞭解的利弊,以及如何你應該這樣做:
http://www.mono-project.com/archived/best_practices/#monopath
和:
http://www.mono-project.com/docs/getting-started/application-deployment/
至於net_2_0目錄,我從來沒有得到一個,因爲我通過「--with-profile2 = no」在autogen/configure步驟關閉該配置文件。
- 1. 單聲道運行時間的限制
- 2. 降低構建大小
- 3. 每次降低的NSTimer間隔運行
- 4. 嵌入單聲道時如何設置運行時間選項?
- 5. WinAPI魔術和單聲道運行時
- 6. 單聲道項目字符降低問題
- 7. 在運行時知道類的大小
- 8. 降低時間複雜度
- 9. 多線程是否會降低運行時間?
- 10. 計劃函數在單聲道內的某個時間運行
- 11. 如何降低PDF文件大小
- 12. C#Winform大小降低分辨率
- 13. 降低服務織物備份大小
- 14. 使用VB.net降低USB分區大小
- 15. 降低Bitbucket上的回購大小
- 16. 降低MySQL的NDB的大小BINLOG
- 17. 引導3 - 降低陰溝大小
- 18. 增加塊大小會降低性能
- 19. 如何降低的Android的.apk大小
- 20. 遠程文件的大小不知道獲取運行時間
- 21. 將SQL降低了40%,但運行速度降低了60倍?
- 22. 石墨URL API降低大時間間隔的分辨率
- 23. 減少會話大小運行時間
- 24. 降低INSERT語句的時間與大量數據的時候
- 25. 如何降低IE單獨一個div的大小?
- 26. Android Studio中降低聲音比原聲大碟
- 27. ODBC DSN降低MSSQL的超時時間
- 28. JVM堆 - 爲什麼S0/S1的大小隨着時間的推移而降低?
- 29. 黑莓降低字體大小以適應listfield行
- 30. 降低字體大小時TextView高度增加
320MB?這個問題真的是關於Xamarin嗎? –
Xamarin傢伙對單聲道有很多見解。所以他們可能會有一些提示。 – Brandon