什么是.lib文件包含时生成DLL

What is .lib file contain while generating DLL

本文关键字:DLL lib 文件包 什么      更新时间:2023-10-16

我在Visual Studio 2010中生成.dll.lib,.dll.pdb文件正在输出文件夹中生成。

  1. 为什么.lib(它是静态库吗?(与DLL一起生成,它有什么用,它实际上包含什么?
    (在linux和.so中,它不能有任何其他文件,但为什么在Windows中(。

  2. 这是什么.pdb文件,它包含什么以及如何有用?

提前感谢:)

.lib .dll不是静态库。它告诉链接器lib中存在的函数将从dll加载。这样,它会创建对 dll 的依赖。找不到 dll 将导致应用程序退出(在启动时检查(。

它用于 dll 的隐式链接。

PDB文件由调试器用于查找符号信息。

为什么.lib(它是静态库吗?(与dll一起生成,它的用途是什么以及它实际上包含什么?

不,.lib 是一个导入库,它用于隐式链接。

这是什么.pdb文件,它包含什么以及它将如何有用?

PDB文件包含符号和行信息,它们被调试器用来将十六进制/oct地址映射到函数名称。生成项目时会生成 PDB 文件。

如果没有 PDB,您的程序堆栈跟踪将如下所示

0x00002130

与 PDB

0x00002130 yourprogram!function