【问题标题】:Generate pdb files with linux and g++使用 linux 和 g++ 生成 pdb 文件
【发布时间】:2014-10-26 00:12:15
【问题描述】:

这是我的生成文件。我还想生成 .pdb 文件。我已经在使用 -g 选项,但是我没有看到任何使用 .pdb 扩展名创建的文件。帖子here 也声明使用-g 选项。

CXX = g++
CXXFLAGS = -Wall -g


all: comment \
     test


comment:
    @echo ------Starting Build Process-----------------


test:  main.o car.o student.o   house.o 
    $(CXX) $(CXXFLAGS) -o test main.o car.o student.o house.o

main.o: student.h house.h    main.cpp
    $(CXX) $(CXXFLAGS) -c main.cpp

car.o: car.h

student.o: student.h car.h

house.o: house.h 

clean:
    rm -rf *.o test

关于如何生成 pdb 文件有什么建议吗?

【问题讨论】:

标签: c++ linux g++


【解决方案1】:

我也想生成 .pdb 文件

您不能:PDB file format 是 Microsoft 专有且未记录在案的,因此不能由非 Microsoft 工具生成。

PDB 文件也不能在 Linux 上使用。换句话说,您生成 PDB 的愿望很可能是由于您缺乏了解。

【讨论】:

    【解决方案2】:

    请查看 Alexey Alexandrov 在How do I generate symbol information to use with Linux version of Intel's VTune Amplifier? 的回复:

    对于任何从事生产软件的开发人员来说,另一个有用的考虑因素是使用separate debug information files!。假设如上所述使用“-g”编译程序,然后使用 objcopy 实用程序将包含调试信息的 ELF 部分复制到单独的文件中,并将原始二进制文件的链接添加到单独的调试信息文件中。这对于能够存储您发布给客户的位的调试信息非常有用,以便可以进行事后调试。当然,对于发布位的性能分析也是如此。

    这是我所知道的 Microsoft 的 PDB 文件和 Linux 之间最接近的映射。

    【讨论】:

      猜你喜欢
      • 2021-12-03
      • 1970-01-01
      • 1970-01-01
      • 2022-12-10
      • 2010-10-20
      • 1970-01-01
      • 1970-01-01
      • 2013-10-16
      • 2011-07-24
      相关资源
      最近更新 更多