Microsoft Visual Studio 2012可以';"t open",;python33.lib“; 我在微软Visual Studio 2012中使用Boost库,用于将Python嵌入其中的C++程序。问题是当我尝试构建解决方案[F7]时;我明白了:

Microsoft Visual Studio 2012可以';"t open",;python33.lib“; 我在微软Visual Studio 2012中使用Boost库,用于将Python嵌入其中的C++程序。问题是当我尝试构建解决方案[F7]时;我明白了:,c++,visual-c++,visual-studio-2012,boost-python,python-embedding,C++,Visual C++,Visual Studio 2012,Boost Python,Python Embedding,错误1错误LNK1104:无法打开文件“python33.lib”C:\Users\usr\Documents\visualstudio 2012\Projects\ConsoleApplication1\ConsoleApplication1\LINK 问题是,我不知道这是什么意思,也不知道如何解决它。 我已经尝试将我的python文件夹移动到我的桌面上,因为它最初位于C:\,我认为这可能是权限错误,但这没有起到任何作用 以下是我在为项目做准备时阅读的教程中的代码: // ConsoleApp

错误1错误LNK1104:无法打开文件“python33.lib”C:\Users\usr\Documents\visualstudio 2012\Projects\ConsoleApplication1\ConsoleApplication1\LINK

问题是,我不知道这是什么意思,也不知道如何解决它。 我已经尝试将我的python文件夹移动到我的桌面上,因为它最初位于C:\,我认为这可能是权限错误,但这没有起到任何作用

以下是我在为项目做准备时阅读的教程中的代码:

// ConsoleApplication1.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <boost/lambda/lambda.hpp>
#include <boost/python.hpp>

using namespace boost::python;

int main( int argc, char ** argv ) {
  try {
    Py_Initialize();

    object main_module((
      handle<>(borrowed(PyImport_AddModule("__main__")))));

    object main_namespace = main_module.attr("__dict__");

    handle<> ignored(( PyRun_String( "print \"Hello, World\"",
                                     Py_file_input,
                                     main_namespace.ptr(),
                                     main_namespace.ptr() ) ));
  } catch( error_already_set ) {
    PyErr_Print();
  }
}
//ConsoleApplication1.cpp:定义控制台应用程序的入口点。
//
#包括“stdafx.h”
#包括
#包括
使用名称空间boost::python;
int main(int argc,字符**argv){
试一试{
Py_初始化();
对象主模块((
句柄(借来的(PyImport_AddModule(“uuu main_uuu“)”));
object main_namespace=main_module.attr(“uu dict_uu”);
句柄被忽略((PyRun_字符串(“print\'Hello,World\”,
Py_文件输入,
main_namespace.ptr(),
main_namespace.ptr());
}捕获(已设置错误){
PyErr_Print();
}
}
--视觉工作室2012 --Windows 7 x64 --Python 3.3.2 --增强库 Python嵌入式C++程序


--链接到教程页面::

感谢所有帮助David

对于遇到此问题的任何其他人,以下是您需要做的

右键单击项目名称(ConsoleApplication1,ect),并在C/C++常规下确保其他include目录包括python include、Lib和libs文件夹。以及boostroot和boostlib(32/64)文件夹

在链接器菜单下的输入子类别中,对于其他依赖项,您需要将其添加到其中

C:\Python33\libs\python33.lib
C:\boost_1_54\lib32-msvc-11.0\boost_python-vc110-mt-gd-1_54.lib
或者不管你的安装目录是什么。以及任何其他必需的文件。 一旦完成,您的项目应该构建


一旦准备好运行它,就需要将所需的任何.dll文件复制到构建可执行文件的文件夹中

看起来错误与代码无关。这只是一个链接错误。您需要确保python33.lib位于预期的位置。这将为你指明正确的方向-,这几乎毫无帮助。现在我有
错误1错误LNK1104:无法打开文件'boost_python-vc110-mt-gd-1_54.lib'C:\Users\usr\Documents\visualstudio 2012\Projects\ConsoleApplication1\ConsoleApplication1\LINK
我有这个文件,但它不会看到并链接它。