我正在使用MicroSoft Visual Studios 2012中的Boost库来获得一个嵌入Python的C ++程序。问题是当我尝试构建解决方案[F7];我明白了::
Error 1 error LNK1104: cannot open file 'python33.lib' C:\Users\usr\Documents\Visual Studio 2012\Projects\ConsoleApplication1\ConsoleApplication1\LINK
问题是,我不知道这是什么,意味着什么,或任何解决方法的线索。 我已经尝试将我的python文件夹移动到我的桌面,因为它最初是在C:\中,我想也许这是一个权限错误,但是没有做任何事情。
这是我正在阅读的教程中的代码,用于准备porject ::
// 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();
}
}
- Visual Studios 2012 --Windows 7 x64 --Python 3.3.2 - 浏览图书馆 --Python嵌入式C ++程序
- 链接到教程页面:: http://wiki.python.org/moin/boost.python/EmbeddingPython
答案 0 :(得分:1)
感谢David的所有帮助。
对于遇到此问题的其他人来说,这就是您需要做的事情。
右键单击项目名称(ConsoleApplication1,ect),在C / C ++下,确保您的其他包含目录包括python include,Lib和libs文件夹。以及boost root和boost lib(32/64)文件夹。
在链接器菜单的输入子目录中,对于其他依赖项,您需要将其添加到那里。
C:\Python33\libs\python33.lib
C:\boost_1_54\lib32-msvc-11.0\boost_python-vc110-mt-gd-1_54.lib
或者您的安装目录是什么。以及任何其他所需的文件。 一旦完成,您的项目应该构建。
准备好运行后,您需要将所需的.dll文件复制到构建可执行文件的文件夹中。