如何使用调试符号构建openssl?[add libeay.pdb]

Tha*_*lia 5 c++ openssl build pdb

我正在使用openssl,在构建期间我收到了很多关于缺少libeay.pdb的警告.有人可以建议如何添加它吗?


build.cmd看起来像这样(我认为重要的部分):

...
perl util\mk1mf.pl debug dll no-asm VC-WIN64A >ms\ntdll64.dbg.mak
perl util\mkdef.pl 32 libeay > ms\libeay32.def
nmake -f ms/nt64.dbg.mak
Run Code Online (Sandbox Code Playgroud)

我读了INSTALL.W32,上面写着"如果你使用平台debug-VC-WIN32而不是VC-WIN32,那么将编译调试符号." 我试图用debug-WIN64A替换VC-WIN64A(与32相同),并且构建给了我一个错误

Unknown option --debug-VC-WIN64A
Run Code Online (Sandbox Code Playgroud)

谢谢.

编辑:当我在mak之后添加/ DEBUG
再次编辑时它起作用:/ DEBUG不是必需的,命令中的调试字完成了工作.
如何使用Visual Studio构建它?

Ada*_*eld 4

当您使用 Visual Studio 在 Windows 上构建 OpenSSL 时,该库的符号文件名为lib.pdb,并且位于该tmp32目录中,因此您可能需要手动将其复制到该out32目录中。

对于 1.0.0g 版本的 Win32 配置来说也是如此;从那时起,情况可能发生了变化,并且对于 Win64 来说可能会有所不同。

  • 您“正在”使用 Visual Studio 构建它——编译器,而不是 IDE。`nmake` 实用程序从命令行调用编译器 (`cl.exe`)。 (3认同)