- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
dsymutil
手册页指出 dsymutil
有一个名为 --flat
的选项,它将创建单个文件调试包,其中.dwarf
扩展名。我尝试了这个,虽然确实创建了预期的 .dwarf
文件,但 lldb
似乎并没有实际加载它们,这与生成常规 不同。 dSYM
目录。除了手册页上所说的,我找不到很多文档。
这些文件是否有预期的场景,或者这是很久以前遗留下来的不应再使用的东西?
它很有吸引力,因为作为单个文件,在构建系统中管理它会更容易,而不是需要管理生成的 .dSYM
目录。
$ cat > hello_world.cpp
#include <iostream>
int main() {
std::cout << "Hello, World\n";
return 0;
}
$ clang++ ./hello_world.cpp -g -c -o hello_world.o
$ clang++ ./hello_world.o -o hello_world
$ dsymutil ./hello_world
$ tree ./hello_world.dSYM
./hello_world.dSYM
└── Contents
├── Info.plist
└── Resources
└── DWARF
└── hello_world
$ lldb hello_world
(lldb) target create "./hello_world"
Current executable set to './hello_world' (x86_64).
(lldb) image list
[ 0] 7984B8FE-1C4E-3468-9819-C3BE4E50456D 0x0000000100000000 .../hello_world
.../hello_world.dSYM/Contents/Resources/DWARF/hello_world
$ \rm -rf hello_world.dSYM
$ dsymutil --flat ./hello_world
$ file hello_world.dwarf
hello_world.dwarf: Mach-O 64-bit dSYM companion file x86_64
(lldb) target create "./hello_world"
Current executable set to './hello_world' (x86_64).
(lldb) image list
[ 0] 7984B8FE-1C4E-3468-9819-C3BE4E50456D 0x0000000100000000 .../hello_world
[ 1] F217F7F8-A795-3109-B77F-B1E2277F3E3B 0x0000000000000000 /usr/lib/dyld
如您所见,lldb
愉快地自动查找并加载 .dSYM
,但不会为 .dwarf
执行此操作文件版本。
有没有办法让 lldb
加载这些文件,或者更好的是,自动加载它们?其他工具?是否需要一些其他步骤将可执行文件“链接”到 .dwarf
文件,就像 --add-gnu-debuglink
的模拟?或者 dsymutil --flat
是不是真正受支持并且应该避免的东西?它有任何用例吗?
最佳答案
--flat
选项不受真正支持。它的存在是为了测试,我们通常要检查生成的 DWARF,而不是应该始终相同的 dSYM 包结构。
关于c - dsymutil 的 --flat 选项的预期用途是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55894249/
我遇到了一个问题,在使用libCrasheye.a 库时,要显示警报。 while processing /Users/caiqiujun/Documents/iOS/Swift/WageWebsit
我正在尝试在真实设备上构建 iOS 应用程序,但不幸的是我遇到了 dsymutil exited with code 1 我做过的事情: 我确实搜索了谷歌,但它说我的硬盘已满,这不是案例。 我确实多次
这两个命令在linux上是吗: objcopy --only-keep-debug foo foo.dbg objcopy --add-gnu-debuglink=foo.dbg foo 相当于 Ma
dsymutil 手册页指出 dsymutil 有一个名为 --flat 的选项,它将创建单个文件调试包,其中.dwarf 扩展名。我尝试了这个,虽然确实创建了预期的 .dwarf 文件,但 lldb
我有一个 iOS 应用程序要与几个第 3 方预建静态库链接。这些静态库的调试信息已被删除,并且显然也丢失了它们的体系结构信息。在构建应用程序(在本例中为模拟器)时,我收到了很多这样的警告: /Deve
我正在努力通过尽可能多地修复导致警告的问题来消除 Xcode 中 iOS 程序的警告。值得庆幸的是,我在这方面基本上是成功的,但我有两个拒绝消失的警告:我收到“Dsymutil 警告”的报告,相关日志
我正在尝试使用 Clang、ld64、cctools、GNU make 和 iOS 8.1 SDK 在我的 iPad 2、iOS 8.4 上(以及为)编译 GNU bash 4.3.30。处理bash
我有一个运行良好的应用程序,并且没有更改任何东西(我认为)它突然拒绝构建并给我这个错误: error: unable to open executable '/Users/WillOakley/Lib
我今天早上从 MacOS X 10.6 (Snow Leopard) 升级到 10.7 (Lion),也从 Xcode 4.2 升级到 Xcode 4.3.2。也许更重要的是,这意味着我现在正在针对
我正在针对 armv7 ios 6 应用程序链接 iOS 的静态框架,我怀疑原始二进制文件来自 XCode 3.x 并使用 GCC 编译,现在我正在使用 CLang 编译器链接它。我没有框架的源代码,
我非常需要帮助。我经历了 3 个不成功的非生产性编码之夜。请有人解决这个错误,让我因为忽略如此简单的事情而感到愚蠢。 :) [问题 #1] 我不断收到“Apple Mach-O 链接器错误 ” 链接器
在 iOS 应用程序的 GenerateDSYMFile 阶段收到此错误消息: /Users/name/Library/Developer/Xcode/DerivedData/ModuleCache/
我认为自上次XCode更新以来,无法将IOS应用程序部署到Iphone。 在一切正常之前。 我收到此错误Xamarin.iOS.Common.targets(1029,3):[MSB6006]“dsy
我是一名优秀的程序员,十分优秀!