[英]How to create a .app mono bundle for Mac OS
我正在嘗試為我的 mono 程序創建一個 .app 包以在 Mac OS X 上運行,但是盡管閱讀了幾乎所有關於 macpack 和捆綁 mono 的文章和文檔,但這些方法都不起作用。
使用 macpack 將二進制文件成功捆綁在 a.app package 中:
macpack -m:x11 -o:. -r:sqlite3.dll -r:Nini.dll -r:extraIcons.ini -r:APP_DATABASE.db3 -r:APP_Values.db3 -r:./Documents/manual.pdf -r:GemBox.Spreadsheet.dll -r :Mono.Data.SqliteClient.dll -a:APP.exe -n:APP
. 當我嘗試從 package 啟動程序時,會發生這種情況:
FFMACM-2:MacOS dev$ open -a APP
LSOpenURLsWithRole() failed for the application /Users/dev/Workspace/Software/APP.app with error -10810.
我嘗試使用此方法,但腳本失敗並出現以下錯誤:
Unhandled Exception: System.IO.FileNotFoundException: Could not load file or assembly 'Nini, Version=1.1.0.0, Culture=neutral, PublicKeyToken=691faec150a7fa7b' or one of its dependencies.
File name: 'Nini, Version=1.1.0.0, Culture=neutral, PublicKeyToken=691faec150a7fa7b'
at APP.MainClass.Main (System.String[] args) [0x00000] in <filename unknown>:0
logout
我的想法很新鮮。 Nini.dll 是它應該在的地方。 我正在為 GUI 使用 GTK#。
現在使用 MonoMacPackager 為 MacOS X 創建 package。 你可以在這里找到詳細信息http://www.mono-project.com/MonoMacPackager 。
但是,您在這里看到的問題是您缺少 package 中的 dll(Nini 組件)。 它需要在您的應用程序路徑中(在它被捆綁之后)才能正確加載。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.