2016-07-12 6 views
3

我創建了我的第一個相對簡單的Swift Mac OS應用程序,它運行在我的開發機器上時運行在Xcode內部,並且僅在本機外部以及。然而,當我的另一臺Mac上運行它,它崩潰上推出具有:我的基於Swift的Mac OS應用程序在其他機器上啓動時崩潰

Crashed Thread:  0 Dispatch queue: com.apple.main-thread 

Exception Type:  EXC_BAD_INSTRUCTION (SIGILL) 
Exception Codes:  0x0000000000000001, 0x0000000000000000 

上運行OS X 10.10我已經嘗試過其他系統,但在我的項目,我專門針對10.10爲建立。由於該應用在我的機器上運行良好,我最初的想法主要集中在代碼簽名上,但我通過Xcode運行了存檔命令,並且完成了沒有probs的完整捆綁驗證。任何關於下一步嘗試的想法?

+1

你可以提供整個崩潰日誌在一個pastebin或其他東西嗎?如果使用附加的調試器啓動應用程序('lldb ',然後輸入'process launch'),會發生什麼情況。另一個問題,你是否在啓動你的應用時加載了任何文件? – Sirens

+0

你是最棒的!我不知道如何在非開發機器上調用調試器。我立刻就看到了問題。我從plist文件加載一些保存的設置,這當然在新運行的機器上是空白的。 – mcmar

+0

我會把它寫進一個答案,我想你可以接受它並關閉問題。樂意效勞 – Sirens

回答

4

我建議您將調試器附加到非開發機器上的應用程序。這可以通過在提示準備好時運行lldb <path to app>然後process launch來實現。這將作爲一個標準的調試器工作,並應幫助您更全面地瞭解您的錯誤並調試您的問題。

對於這種問題,爲什麼它不能在另一臺機器上運行,因此使用調試器獲取有關該問題的信息是這種情況下的最佳選擇。