首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >OSX上的LLDB没有调试信息/源代码

OSX上的LLDB没有调试信息/源代码
EN

Stack Overflow用户
提问于 2019-06-22 00:08:55
回答 1查看 391关注 0票数 2

尽管我尝试了LLDB not showing source code的建议,但我还是无法在lldb中看到源代码

我已经将其归结为一个简单的C++17程序,该程序是用以下命令编译的。我在OSX上运行clang 7.0.1,它是我自己从源代码编译的,但我的lldb是XCode安装的(这可能是个问题?)。

下面是我的编译命令:

代码语言:javascript
复制
clang++ -std=c++17 -march=native -Wall -g -O0  main.cpp -o main

请注意,main/main.dSYM/Contents/Resources/DWARF是在我编译时创建的,这似乎没问题。

但是,一个明显的问题是调试信息不在二进制文件中,并且根本找不到目标文件:

代码语言:javascript
复制
$ dsymutil main
warning: (x86_64) /var/folders/c1/vxvr6h9x10b8dbsxhh6nx05h0000gn/T/main-43ca25.o unable to open object file: No such file or directory
warning: no debug symbols in executable (-arch x86_64)

我的印象是,我可以只使用调试信息(通过-g)进行编译,然后让所有东西都“正常工作”,但显然不是这样。

我怎样才能让调试符号工作,这样我才能使用lldb?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-25 09:08:59

我能够通过删除-flto链接器标志来解决这个问题,我没有意识到我已经打开了。显然,当启用LTO时,调试符号不起作用。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56707019

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档