【问题标题】:How to tell clang to put debug symbol into executable binaries? [duplicate]如何告诉 clang 将调试符号放入可执行二进制文件中? [复制]
【发布时间】:2017-03-31 15:32:55
【问题描述】:

我的编译命令在 macOS Seria 中是clang -std=c11 -g -Wall -Werror -fsanitize=address -file.c -o file 编译后,它还会生成一个额外的 file.dSYM 文件,其中包含所有调试符号。但是,当我使用 WSL 或其他 *nix 系统时,它不会生成这样的文件,调试符号被嵌入到可执行二进制文件中。 所以我只是想知道有没有办法在 macOS 中用 clang 做同样的事情。

【问题讨论】:

    标签: c++ c macos clang llvm


    【解决方案1】:

    当你一次编译一个程序时,clang实际上为你运行dsymutil,它负责创建.dSYM文件。因此,您的问题的解决方案是分别编译和链接,在这种情况下clang 不会自动调用dsymutil

    查看this SO question了解更多详情!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-10
      • 2010-09-10
      • 1970-01-01
      • 2014-04-27
      • 2012-11-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多