我正在研究一系列將共享公共代碼庫的iOS應用程序。我已經開發了通用代碼庫作爲靜態庫,並且希望它包含在主應用程序的.dSYM文件中的調試符號。我的理解是,這是可能的,但我還沒有得到它的工作。iOS靜態庫調試不包含在dSYM中的符號
它自己的項目中有一個靜態庫作爲目標的公共代碼庫。該項目被拖入主應用程序的項目中。在主應用程序的目標構建階段中,我添加了靜態庫作爲目標依賴項,並在鏈接二進制庫中。該項目根據需要構建和運行。
現在,如果我從主項目生成歸檔文件,我可以在Finder中查看該歸檔文件,並且它包含一個.dSYM文件,該文件可用於表示崩潰日誌。但是,.dSYM只包含主應用程序的符號,而不包含靜態庫。過度證實這一點,我跑了以下內容:
dwarfdump /path/to/app.dSYM
和輸出(大部分)不從靜態庫包含任何符號。我發現唯一的例外是我的主項目的AppDelegate是靜態庫中對象的子類,並且.dSYM中有超類的條目。但是,其他類別都不存在。
靜態庫中的項目的目標的生成設置,我已經設置了以下內容:
- 地帶調試符號複製過程:NO
- 地帶掛鉤產品:NO
- 生成調試符號:是
- 默認隱藏的符號:NO
如果有人可以提供一些指導,我將不勝感激它。
您使用的是什麼版本的XCode? – misnomer 2012-09-09 13:22:11
你是否管理過這個問題?我有同樣的問題,仍然無法弄清楚發生了什麼。 – Vincent 2012-12-08 01:53:20