首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法运行bjam来编译boost python教程

无法运行bjam来编译boost python教程
EN

Stack Overflow用户
提问于 2013-11-20 10:28:05
回答 1查看 6K关注 0票数 6

我试图遵循本教程包装用于Windows.I的python的C++代码,我安装了python.Downloaded最新版本的boost(1_55).First,我运行bootstrap.bat来构建bjam.exe.Next,我配置了boost_1_55_0\tools\ build \v2\user-config.jam来使用msvc10编译器,并为python安装添加了路径。现在,根据本教程:

现在我们准备好了..。请务必将教程"hello.cpp“和"Jamroot”设置为libs/python/样例/教程。 最后: 布贾姆

尝试在该目录中运行bjam会给我以下提示:"bjam不被识别为内部或外部命令“error.What,我在这里遗漏了吗?用户-config.jam应该驻留在另一个位置吗?还是应该添加到系统路径中?

更新:

@ Ok.Thanks to @john我现在不得不将bjam添加到系统path.But中,运行它,hello_ext.lib是在Ok.Thanks中创建的,而不是DLL.Based在教程中我应该获得extension.Now的DLL文件,我不知道Ok.Thanks如何与extension.But链接,如果我假设它与C++类似,那么如果运行的话,它应该与hello_ext.lib.But链接:

python hello.py

它包含从扩展导入的方法,python运行时崩溃。难道没有关于这个工作流的全面教程吗?Boost文档在这一点上很糟糕。

EN

回答 1

Stack Overflow用户

发布于 2014-06-10 08:18:37

这对我起了作用:

1.)解压缩boost_1_55_0.zip

2.)准备使用Boost Library二进制文件

转到boost_1_55_0根目录并打开命令提示符并键入以下命令:

代码语言:javascript
复制
Bootstrap

3.)查找user-config.jam:

在命令提示符中键入以下内容:

代码语言:javascript
复制
ECHO %HOMEDRIVE%%HOMEPATH%

4.)如果user-config.jam位于您的homedrive目录中,请将其更改如下:

注意:

.jam语言将一个“空格”作为参数的分离!

代码语言:javascript
复制
# -------------------
# MSVC configuration.
# -------------------

# Configure msvc (default version, searched for in standard locations and PATH).
# using msvc ;

# Configure specific msvc version (searched for in standard locations and PATH).
using msvc : 10.0 : C:\\app\\tools\\MSVisualStudio2010\\VC\\bin\\cl.exe ;

….

# ---------------------
# Python configuration.
# ---------------------

# Configure specific Python version.
# using python : 3.1 : /usr/bin/python3 : /usr/include/python3.1 : /usr/lib ;

using python 
    : 2.5                   # Version
    : C:\\app\\tools\\Python25\\python.exe      # Python Path
    : C:\\app\\tools\\Python25\\include         # include path
    : C:\\app\\tools\\Python25\\libs            # lib path(s)
    : <define>BOOST_ALL_NO_LIB=1
    ;

5.)配置后建立库!!

转到boost_1_55_0根目录并打开命令提示符并键入以下命令:

代码语言:javascript
复制
.\b2

6.))将user-config.jam复制到\boost_1_55_0\libs\python\example\tutorial 7。)深入到\boost_1_55_0\stage\lib\

将libboost_python- it 100-mt 1_55 and重命名为boost_python 100-mt 1_55.lib,并将其复制到

代码语言:javascript
复制
\boost_1_55_0\libs\python\example\tutorial

8.)现在您应该将所有这些文件都放在\boost_1_55_0\libs\python\example\tutorial目录中。

代码语言:javascript
复制
hello.cpp
hello.py
user-config.jam
Jamroot
boost_python-vc100-mt-gd-1_55.lib
bjam.exe

9.)在\boost_1_55_0\libs\python\example\tutorial中打开命令提示符

并键入以下命令:

代码语言:javascript
复制
bjam

10.)在成功建造之后..。

您应该将这个文件放在目录中:

代码语言:javascript
复制
hello_ext.dll

将此文件重命名为:

代码语言:javascript
复制
hello_ext.pyd
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20093331

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档