Boost.Python教程:建立Hello World

26 篇文章 0 订阅

从开始到结束

现在你要做的第一件事是构建Hello World模块并在Python中自己尝试。 在本节中,我们将概述实现这一目标所需的步骤。 我们将使用与每个boost发行版捆绑在一起的构建工具: bjam 。

[注意]注意

建筑没有bjam

除了bjam之外,当然还有其他方法可以构建你的模块。 这里写的不应该被视为“唯一的方式”。 除了bjam之外,当然还有其他构建工具。

但请注意,Boost.Python的首选构建工具是bjam。 有很多方法可以错误地设置构建。 经验表明,90%的“我无法构建Boost.Python”问题来自于必须使用不同工具的人。

我们将跳过细节。 我们的目标是简单地创建hello world模块并在Python中运行它。 在这个简短的bjam教程之后,我们应该构建DLL并使用扩展来运行python程序。

教程示例可以在以下目录中找到: libs/python/example/tutorial 。 在那里,你可以找到:

  • HELLO.CPP
  • hello.py
  • Jamroot中

hello.cpp文件是我们的C ++ hello world示例。 Jamroot是一个极简主义的bjam脚本,为我们构建DLL。 最后, hello.py是我们的Python程序,它使用hello.cpp的扩展。

在其他任何事情之前,您应该在boost目录中或路径中的某个位置具有bjam可执行文件,以便可以在命令行中执行bjam 。 预构建的Boost.Jam可执行文件适用于大多数平台。 

人生苦短,请用Python!

是我们的简约Jamroot文件。 只需复制文件并将use-project boost调整到您的boost根目录所在的位置即可。

上面的Jamrules文件中包含的注释应足以让您前进。

运行bjam

bjam使用操作系统的命令行解释器运行。

启动它。

主目录中名为user-config.jam的文件用于配置工具。 在Windows中,可以通过键入以下命令找到您的主目录:

  ECHO%HOMEDRIVE %% HOMEPATH%

进入命令提示符窗口。 您的文件至少应该具有编译器和python安装的规则。 Windows上的一个具体示例是:

#  MSVC configuration
using msvc : 8.0 ;

#  Python configuration
using python : 2.4 : C:dev/tools/Python ;

第一条规则告诉Bjam使用MSVC 8.0编译器和相关工具。 第二条规则提供有关Python,其版本及其所在位置的信息。 以上假设Python安装在C: dev/tools\/Python 。 如果你的平台有一个相当“标准”的python安装,你可能不需要这样做。

现在我们准备好了...一定要cdlibs/python/example/tutorial ,其中教程"hello.cpp""Jamroot" 。

最后:

bjam

它现在应该建立:

cd C:\dev\boost\libs\python\example\tutorial
bjam
...patience...
...found 1101 targets...
...updating 35 targets...

等等......最后:

  Creating library path-to-boost_python.dll
   Creating library /path-to-hello_ext.exp/
**passed** ... hello.test
...updated 35 targets...

或类似的东西。 如果一切顺利,您现在应该构建DLL并运行Python程序。

 

去吧.....玩得开心!

注意事项: 

1、默认情况下,python库是动态链接的,需要定义一个静态链接的宏,BOOST_PYTHON_STATIC_LIB

否则会报: fatal error LNK1104: 无法打开文件“boost_python-vc140-mt-gd-1_61.lib”

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

道格拉斯范朋克

播种花生牛奶自留田

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值