在C ++'python33_d.lib'中使用Python 3.3未找到

时间:2013-06-10 16:26:28

标签: c++ python visual-c++

我在我的C ++代码中尝试#include <Python.h>,当我编译代码时,我得到错误:

fatal error LNK1104: cannot open file 'python33_d.lib'

现在我试图在我的计算机上找到python33_d.lib文件以包含在我的链接器依赖项中,但是找不到。我找到了python33.lib

我在哪里可以找到python33_d.lib,或者我该如何解决此问题?

5 个答案:

答案 0 :(得分:20)

如果您需要调试版本(就像我的工作一样),可以自己构建库:

  1. http://www.python.org/download
  2. 下载源代码tarball
  3. 解压缩tarball(7zip将执行操作)并进入生成的目录(应该像Python-3.3.2)。
  4. 从Python目录中,转到PCBuild文件夹。这里有两个重要的文件:readme.txt,其中包含在Windows中构建Python的说明(即使它使用UNIX换行样式...),以及pcbuild.sln,它是构建Python的Visual Studio解决方案。
  5. 在Visual Studio中打开pcbuild.sln。 (我假设您使用的是Visual Studio 10; readme.txt包含旧版Visual Studio的特定说明。)
  6. 确保将Visual Studio设置为&#34; debug&#34;配置,然后为适当的体系结构(x64或Win32)构建解决方案。您可能会遇到一些失败的子项目,但并不是所有这些都是构建python33_d所必需的;根据我的统计,8个构建失败了,无论如何我得到了一个工作的.lib文件。
  7. 你会在PCBuild文件夹(如果构建Win32)或amd64子文件夹(如果构建x64)中找到python33_d.lib和python33_d.dll。

答案 1 :(得分:13)

来自python bug tracker的简单解决方案:

song_params

答案 2 :(得分:12)

*_d.lib用于调试版本。转而使用发布版本。

答案 3 :(得分:3)

如果您通过python.org上的安装程序安装python,您可以通过选择&#34; Customize Installation&#34;来告诉安装程序包含调试符号和二进制文件,例如pythonXX_d.dll文件。安装时(我认为它在第二个自定义页面上)。如果您不是非常精明地自己构建项目(像我一样),这可能是最简单的解决方案。太糟糕了,我不知道如何用anaconda发行版做到这一点。

答案 4 :(得分:2)

打开Python安装程序(.exe)-修改-接下来-启用复选框Debug Symbols and Libs