`

boost安装

 
阅读更多

1.下载站:
http://sourceforge.net/projects/boost/files/boost/1.48.0/
2.安装

tar -xzvf boost_1_48_0.tar.g -C ~/source
cd source/boost_1_48_0/
./bootstrap.sh
sudo ./bjam  --layout=versioned --build-type=complete --toolset=gcc install


3.设置环境变量
        在/etc/profile.d新建可执行文件boost.sh,添加文件内容:

#!/bin/sh
BOOST_INCLUDE=/usr/local/include/boost 
BOOST_LIB=/usr/local/lib
export BOOST_INCLUDE BOOST_LIB 


命令行执行:source /etc/profile.d/boost.sh
        以后在编译程序时,只需要用:-I$BOOST_INCLUDE -L$BOOST_LIB 即可,还要使用-l指定了链接库。 
4.设置共享库链接目录
/etc/ld.so.conf文件内容后面追加/usr/local/lib
命令行执行

sudo ldconfig


5.遇到的问题及解决方案
安装过程爆出很多和bz相关的错误,解决方案如下

sudo apt-get install libbz2-dev


PS 安装过程中的错误:

libs/iostreams/src/bzip2.cpp:20:56: error: bzlib.h: 没有那个文件或目录
libs/iostreams/src/bzip2.cpp:31: error: ‘BZ_OK’ was not declared in this scope
libs/iostreams/src/bzip2.cpp:32: error: ‘BZ_RUN_OK’ was not declared in this scope
libs/iostreams/src/bzip2.cpp:33: error: ‘BZ_FLUSH_OK’ was not declared in this scope
libs/iostreams/src/bzip2.cpp:34: error: ‘BZ_FINISH_OK’ was not declared in this scope
libs/iostreams/src/bzip2.cpp:35: error: ‘BZ_STREAM_END’ was not declared in this scope
libs/iostreams/src/bzip2.cpp:36: error: ‘BZ_SEQUENCE_ERROR’ was not declared in this scope
libs/iostreams/src/bzip2.cpp:37: error: ‘BZ_PARAM_ERROR’ was not declared in this scope
libs/iostreams/src/bzip2.cpp:38: error: ‘BZ_MEM_ERROR’ was not declared in this scope
libs/iostreams/src/bzip2.cpp:39: error: ‘BZ_DATA_ERROR’ was not declared in this scope
libs/iostreams/src/bzip2.cpp:40: error: ‘BZ_DATA_ERROR_MAGIC’ was not declared in this scope
libs/iostreams/src/bzip2.cpp:41: error: ‘BZ_IO_ERROR’ was not declared in this scope
libs/iostreams/src/bzip2.cpp:42: error: ‘BZ_UNEXPECTED_EOF’ was not declared in this scope
libs/iostreams/src/bzip2.cpp:43: error: ‘BZ_OUTBUFF_FULL’ was not declared in this scope
libs/iostreams/src/bzip2.cpp:44: error: ‘BZ_CONFIG_ERROR’ was not declared in this scope
libs/iostreams/src/bzip2.cpp:48: error: ‘BZ_FINISH’ was not declared in this scope
//mostly like above....


6.测试

#include <boost/python.hpp> 
char const* greet()
{
   return "hello, world";
}

BOOST_PYTHON_MODULE(hello)
{
    using namespace boost::python;
    def("greet", greet);
}


把代码存为hello.cpp, 编译成so库

g++ hello.cpp -o hello.so -shared -I/usr/include/python2.6 -I /usr/lib/python2.6/config/ -lboost_python


此处python路径设为你的python路径, 并且必须加-lboost_python, 这个库名不一定是这个, 去/user/local/lib查
然后在有此so库的目录, 进入python, 可以如下使用

>>> import hello
>>> hello.greet()
'hello, world'


7.测试遇到问题及解决方案
如果遇到问题:

/usr/bin/ld: cannot find -lboost_python
collect2: ld returned 1 exit status


解决方案:

  • 确认/etc/ld.so.conf.d/相关配置文件已包含boost_python.so所在目录
  • boost_python库所在目录(默认安装在/usr/local/lib)存在libboost_python.so,若不存在则从libboost_python.so.***建软链接到libboost_python.so

http://www.linuxso.com/linuxpeixun/14642.html

分享到:
评论

相关推荐

    Boost安装步骤详解(带图片)

    Boost安装步骤详解 本文将指导初学者一步一步地安装和使用Boost库,特别是Boost线程库在Visual Studio环境中的使用。 安装Boost Boost库是一个功能强大的C++类库,提供了许多有用的功能,包括线程、日期和时间、...

    boost安装下载-boost.rar

    在“boost安装下载-boost.rar”这个压缩包中,我们可以看到一个名为“bbb”的文件。通常,这可能是一个包含完整的Boost库源代码或者预编译库的文件。为了利用Boost库,你需要按照以下步骤进行操作: 1. **下载与...

    Windows和Solaris上Boost安装和编译

    **Windows上的Boost安装和编译** 1. **下载Boost**: 首先,你需要访问Boost官方网站(https://www.boost.org/)下载最新的源代码包。下载完成后,解压到你选择的本地目录。 2. **配置环境变量**: 在Windows中,你...

    boost安装小程序

    最后,提供的`CopyFile.exe`可能是一个用于复制文件的实用程序,而`介绍.txt`可能是关于Boost安装过程的简单说明。在安装过程中,根据实际需要可以参考这些辅助文件。通过熟悉和熟练使用Boost,你的C++编程能力将...

    boost安装软件(windows系统下包好用)

    标题中的“boost安装软件(windows系统下包好用)”指的是在Windows操作系统上安装Boost库的过程。Boost库虽然本身是跨平台的,但在Windows环境下安装通常需要一些额外的步骤,特别是对于初学者来说可能会遇到一些...

    R语言catboost离线安装源码

    **R语言catboost离线安装源码详解** CatBoost是一款由Yandex开发的高效、开源的机器学习库,尤其在处理分类和回归问题时表现出色。它提供了多种接口,包括Python、R和Java,便于不同编程背景的用户使用。本文将详细...

    VS+Qt+Mysql+addin+boost安装指南

    亲测有效

    bin.ntx86应用程序,boost安装时的必须文件

    "bin.ntx86应用程序,boost安装时的必须文件" 这个标题告诉我们,bin.ntx86是一个与Boost库安装过程密切相关的文件。在计算机编程领域,Boost是一个开源的C++库集合,它提供了一系列实用的库来增强C++的标准库功能。...

    libtorent boost安装方法

    boost安装方法,中文 libtorrent

    vs2010下boost安装

    亲自利用文档方法,在win7环境下,安装boost,验证可行。

    centOS 安装boost1.68.0库

    Boost库是为C++语言标准库提供扩展的一些C++程序库的总称,由Boost社区组织开发、维护。Boost库可以与C++标准库完美共同工作,并且为其提供扩展功能。

    C++ Boost库学习记录-安装

    C++ Boost库学习记录-安装,详述了boost库德安装使用过程,方便快捷

    CentOS7环境下编译的boost 1.69静态库和动态库

    在CentOS7操作系统中编译Boost 1.69,你需要确保系统已经安装了必要的依赖项,如GCC编译器、Bison、Flex等。可以通过运行以下命令来安装这些依赖: ```bash sudo yum install gcc-c++ bison flex ``` 接下来,从...

    boost+win7+vs2010+vs2012自动下载编译安装软件

    标题中的“boost+win7+vs2010+vs2012自动下载编译安装软件”指的是一项技术任务,即在Windows 7操作系统上,使用Visual Studio 2010和2012集成开发环境(IDE)自动化地下载、编译并安装Boost库。Boost是一个开源的...

    boost 安装版

    boost是可移植开发的库!是C++库的一个补充,在开发的过程中可以使用正则表达式!

    Boost Asio 示例代码

    对于Windows用户,通常将Boost安装在某个路径,如"C:\BOOST",然后在项目中指定相应的包含目录和库路径。 综上所述,Boost.Asio是一个强大的工具,用于编写高性能的网络和I/O密集型应用。通过提供的示例代码,...

    Ubuntu安装boost加测试程序

    例如,如果你希望将Boost安装到`/usr/local/`,可以执行: ```bash cd boost_x_y_z ./bootstrap.sh --prefix=/usr/local ``` 然后,开始**编译和安装**过程。这可能需要一段时间,因为Boost包含很多库: ```bash ...

    mysql-boost-8.0.27.tar.gz

    3. **编译与安装**:执行`make`进行编译,然后使用`make install`将MySQL-Boost安装到系统中。 4. **初始化**:安装完成后,需要初始化数据库实例,通常通过`scripts/mysql_install_db`脚本完成。 5. **启动服务**:...

    Boost.Python.ArgumentError: Python argument types in错误解决及Boost安装配置-附件资源

    Boost.Python.ArgumentError: Python argument types in错误解决及Boost安装配置-附件资源

Global site tag (gtag.js) - Google Analytics