爲什麼在Mac中編譯C++總是會創建* .dSYM目錄? 有沒有辦法禁用?在MacOS中編譯C++代碼時的dSYM目錄
23
A
回答
41
這是因爲您的Xcode項目設置爲使用外部dSYM文件構建調試符號。這對於發佈版本來說非常方便,因爲這意味着您可以從應用中去除調試符號,並且當用戶向您發送故障轉儲時,可以使用原始dSYM文件生成適用於調試的正確堆棧跟蹤。
無論如何,你不需要需要禁用項目中的調試符號生成。相反,只需將調試符號類型更改爲DWARF(而不是「帶有dSYM文件的DWARF」)。你也可以使用Stabs,但這是舊格式。
編輯:啊,我看到你的意思是來自命令行,而不是來自Xcode。我不是坐在我的mac atm前面,但是我從gcc4 manpage中看到,你可以指定-gstab使用Stabs格式。
2
我假設你使用Xcode。進入「項目」/「編輯項目設置」菜單項,單擊生成選項卡,在「GCC 4.0 - 代碼生成」部分,取消選中生成調試符號。您可以在搜索字段中輸入「sym」以幫助找到它。
相關問題
- 1. 怪異gcc編譯行爲macOS Sierra:.dSYM子目錄創建
- 2. 編譯目標-C代碼到C
- 3. C代碼宏評估在編譯時
- 4. Webpack編譯與源代碼目錄的一對一編譯目錄
- 5. 在Visual C++ Express中編譯C代碼
- 6. 用C++編譯器編譯c代碼
- 7. C代碼編譯
- 8. 編譯C代碼
- 9. 編譯C代碼爲C#
- 10. 如何獲得c源代碼不cmake編譯目錄
- 11. 編譯目標代碼時出錯
- 12. Spring目標編譯時代碼測試
- 13. 在macOS上編譯Objective-C與clang Sierra
- 14. 錯誤在Eclipse中編譯C代碼
- 15. 在Netbeans IDE中編譯C代碼6.9.1
- 16. 在vs 2005中編譯c代碼
- 17. 在Ubuntu中編譯C++ boost dynamic_bitset代碼
- 18. 禁用位代碼時的dSYM下載
- 19. 編譯C源代碼時出錯
- 20. 編譯C時收到錯誤++代碼
- 21. 編譯C++代碼時出錯?
- 22. 如何即時編譯C#7代碼?
- 23. C++代碼編譯時不包含
- 24. 編譯C代碼時出錯
- 25. 編譯此C++代碼時出錯
- 26. 編譯時在Visual C++中更改程序的工作目錄
- 27. 在gcc編譯時如何在C++的彙編代碼中使用C變量?
- 28. 在ubuntu中編譯/編譯源代碼
- 29. 將OpenMP代碼編譯爲C代碼
- 30. 在已編譯的C或C++代碼中加密密碼
嗨,你如何改變調試符號?有沒有命令行? – neversaint 2009-02-25 11:29:26