【问题标题】:How to configure Boost.Python using bjam syntax?如何使用 bjam 语法配置 Boost.Python?
【发布时间】:2013-09-27 16:03:31
【问题描述】:

我正在尝试使用 Boost.Python。

我的系统是:

Visual Studio 2012 + Windows7 64 位 + Python 2.7.5 32 位 + Boost 1.54。

现在,我想Boost.Python已经安装好了,我可以在C:\local\boost_1_54_0\lib32-msvc-11.0找到.dll和.lib文件,比如boost_python-vc110-mt-gd-1_54.lib

然后我尝试在命令提示符中的C:\local\boost_1_54_0\libs\python\example\quickstart 处运行一个示例,如下所示:

bjam 工具集=msvc 工具集=msvc --verbose-test --debug-configuration 测试

然后我有一些警告:

注意:[python-cfg] ...请求的配置匹配!

注意:[python-cfg] 此 Python 配置的详细信息:

注意:[python-cfg] 解释器命令:“C:\Python2.7.5\python”

注意:[python-cfg] 包含路径:“C:\Python2.7.5\Include”

注意:[python-cfg] 库路径:“C:\Python2.7.5\libs”

注意:[python-cfg] DLL搜索路径:“C:\Python2.7.5”

此外,还有链接错误:

LINK:警告 LNK4001:未指定目标文件;使用的库 LINK : 错误 LNK2001: 无法解析的外部符号 _mainCRTStartup bin\test_embed.test\msvc-11.0\debug\test_embed.exe:致命错误 LNK1120: 1 个未解决的外部问题

我认为配置文件可能有问题。在Boost.Python Instruction 中,我发现有两个文件可能很重要,它们是user-config.jamboost-build.jam

对于user-config.jam,我在C:\local\boost_1_54_0\tools\build\v2找到它,它的内容是:

使用 msvc : 11.0 ;

使用 python : 2.7 : C:\\Python2.7.5\\ ;

对于boost-config.jam,它无处不在!我不知道我应该修改哪一个。我想它应该是与示例在同一目录中的那个。但它的内容应该是什么?

另外,我仍然不确定这个问题是由错误的配置文件还是由于 Boost.Python 安装不当引起的。

有没有bjam语法的教程?我用谷歌搜索过,但每次我都被引导回到 Boost 教程。

谁能帮我解决这个问题?非常感谢。 :)

【问题讨论】:

    标签: c++ boost-python bjam


    【解决方案1】:

    您是否在您的主目录中检查过the user-config.jam

    ECHO %HOMEDRIVE%%HOMEPATH%

    下一点是你的 user-config.jam 不适合你的 python 配置..

    这是一个例子:

    # -------------------
    # 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
        ;
    

    【讨论】:

    • 如何在 jam 文件中使用空格? using python : 3.6 # Version : "D:\Program Files\Python36\python.exe" # Python Path ;
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-07
    相关资源
    最近更新 更多