代码之家  ›  专栏  ›  技术社区  ›  hookenz

在Ubuntu 10.04下安装最新的1.44 Boost库

  •  17
  • hookenz  · 技术社区  · 14 年前

    我有Ubuntu 10.04,想安装最新的Boost库1.44_0

    我下载了tar.gz文件并将其解压缩到/usr/local/boost_1_44_0

    我已经安装了Synaptic的Boost1.40版本。

    所以我想编译和链接1.44,因为我想使用一些新的库 不在旧版本中,如属性树中。

    但是,我有一些问题要解决。

    runsudo./bootstrap.sh(没问题)

    运行/bjam安装 bzip2有错误。

    gcc.compile.c++ bin.v2/libs/iostreams/build/gcc-4.4.3/release/threading-multi/file_descriptor.o
    gcc.compile.c++ bin.v2/libs/iostreams/build/gcc-4.4.3/release/threading-multi/mapped_file.o
    gcc.compile.c++ bin.v2/libs/iostreams/build/gcc-4.4.3/release/threading-multi/zlib.o
    gcc.compile.c++ bin.v2/libs/iostreams/build/gcc-4.4.3/release/threading-multi/gzip.o
    gcc.compile.c++ bin.v2/libs/iostreams/build/gcc-4.4.3/release/threading-multi/bzip2.o
    libs/iostreams/src/bzip2.cpp:20:56: error: bzlib.h: No such file or directory
    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
    ...
    

    虽然我不使用bzip2,所以我不担心。

    但不久之后在编译期间,屏幕上会出现满是错误的画面。 这里列出的太多了,但是它们的名称中经常有python。

    … 在::list]_ /boost/python/str.hpp:285:实例化自__boost::python::str boost::python::str::join(const&)const[with t=boost::python::list]_ libs/python/src/object/function_doc_signature.cpp:321:从此处实例化 /boost/python/object_core.hpp:334:error:_152;object_base_initializer_

        "g++"  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pthread -fPIC  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DNDEBUG  -I"." -I"/usr/include/python2.6" -c -o "bin.v2/libs/python/build/gcc-4.4.3/release/threading-multi/object/function_doc_signature.o" "libs/python/src/object/function_doc_signature.cpp"
    
    ...failed gcc.compile.c++ bin.v2/libs/python/build/gcc-4.4.3/release/threading-multi/object/function_doc_signature.o...
    ...skipped <pstage/lib>libboost_python.so.1.44.0 for lack of <pbin.v2/libs/python/build/gcc-4.4.3/release/threading-multi>numeric.o...
    ...skipped <pstage/lib>libboost_python.so for lack of <pstage/lib>libboost_python.so.1.44.0...
    gcc.compile.c++ bin.v2/libs/random/build/gcc-4.4.3/release/threading-multi/random_device.o
    

    首先,为什么会有这么多错误? 这里也有很多其他的。

    但我的主要问题是,我想链接到图书馆,但它们并没有按预期放置。我以为它们会在Boost-1-44-0/libs中,但没有找到。 我确实找到了一些。不过一个文件散落在周围。

    我是不是把这整件事弄错了?

    2 回复  |  直到 11 年前
        1
  •  36
  •   user405725    12 年前

    你想的是 bz2 尤其是提升python库的库依赖于。首先使用以下命令安装此库- sudo apt-get install libbz2-dev .

        2
  •  3
  •   BTB    14 年前

    您可以从这里下载Ubuntu的最新Boost二进制文件: https://launchpad.net/~boost-latest/+archive/ppa