如何在GNU/Linux上安装Boost

20

有很多教程,但都没有清楚地告诉我如何正确安装这个库。 我想将其安装在默认的gnu/linux库目录中。

我尝试过:

$ sudo ./bootstrap.sh
$ ./b2 install

它安装在哪里了?它已经安装好了吗?

运行./b2 install后,我得到了以下输出:

z@z-comptuer:~/Desktop/.mess/boost_1_55_0/tools/build/v2$ sudo ./b2 install
warning: No toolsets are configured.
warning: Configuring default toolset "gcc".
warning: If the default is wrong, your build may not work correctly.
warning: Use the "toolset=xxxxx" option to override our guess.
warning: For more configuration options, please consult
warning: http://boost.org/boost-build2/doc/html/bbv2/advanced/configuration.html
...found 580 targets...
...updating 306 targets...
common.mkdir /usr/local/share/boost-build
common.mkdir /usr/local/share/boost-build/tools
common.copy /usr/local/share/boost-build/tools/msvc.jam
common.copy /usr/local/share/boost-build/tools/cast.py
common.copy /usr/local/share/boost-build/tools/qt4.jam
common.copy /usr/local/share/boost-build/tools/make.jam
common.copy /usr/local/share/boost-build/tools/common.jam
common.copy /usr/local/share/boost-build/tools/intel.jam
common.copy /usr/local/share/boost-build/tools/gcc.py
common.copy /usr/local/share/boost-build/tools/borland.jam
common.copy /usr/local/share/boost-build/tools/cw.jam
common.copy /usr/local/share/boost-build/tools/python-config.jam
common.copy /usr/local/share/boost-build/tools/mc.jam
common.copy /usr/local/share/boost-build/tools/docutils.jam
common.copy /usr/local/share/boost-build/tools/doxygen.jam
common.copy /usr/local/share/boost-build/tools/testing-aux.jam
common.copy /usr/local/share/boost-build/tools/cast.jam
common.copy /usr/local/share/boost-build/tools/gcc.jam
common.copy /usr/local/share/boost-build/tools/message.jam
common.mkdir /usr/local/share/boost-build/tools/types
common.copy /usr/local/share/boost-build/tools/types/lib.jam
common.copy /usr/local/share/boost-build/tools/types/__init__.py
common.copy /usr/local/share/boost-build/tools/types/lib.py
common.copy /usr/local/share/boost-build/tools/types/asm.py
common.copy /usr/local/share/boost-build/tools/types/objc.jam
common.copy /usr/local/share/boost-build/tools/types/preprocessed.py
common.copy /usr/local/share/boost-build/tools/types/preprocessed.jam
common.copy /usr/local/share/boost-build/tools/types/html.jam
common.copy /usr/local/share/boost-build/tools/types/obj.py
common.copy /usr/local/share/boost-build/tools/types/html.py
common.copy /usr/local/share/boost-build/tools/types/register.jam
common.copy /usr/local/share/boost-build/tools/types/obj.jam
common.copy /usr/local/share/boost-build/tools/types/rsp.jam
common.copy /usr/local/share/boost-build/tools/types/cpp.jam
common.copy /usr/local/share/boost-build/tools/types/asm.jam
common.copy /usr/local/share/boost-build/tools/types/exe.jam
common.copy /usr/local/share/boost-build/tools/types/cpp.py
common.copy /usr/local/share/boost-build/tools/types/qt.jam
common.copy /usr/local/share/boost-build/tools/types/rsp.py
common.copy /usr/local/share/boost-build/tools/types/exe.py
common.mkdir /usr/local/share/boost-build/tools/doxygen
common.copy /usr/local/share/boost-build/tools/doxygen/windows-paths-check.hpp
common.copy /usr/local/share/boost-build/tools/doxygen/windows-paths-check.doxyfile
common.mkdir /usr/local/share/boost-build/tools/xsltproc
common.copy /usr/local/share/boost-build/tools/xsltproc/included.xsl
common.copy /usr/local/share/boost-build/tools/xsltproc/test.xml
common.copy /usr/local/share/boost-build/tools/xsltproc/test.xsl
common.mkdir /usr/local/share/boost-build/example
common.copy /usr/local/share/boost-build/example/boost-build.jam
common.mkdir /usr/local/share/boost-build/example/customization
common.copy /usr/local/share/boost-build/example/customization/jamroot.jam
common.copy /usr/local/share/boost-build/example/customization/verbatim.jam
common.copy /usr/local/share/boost-build/example/customization/class.verbatim
common.copy /usr/local/share/boost-build/example/customization/t2.verbatim
common.copy /usr/local/share/boost-build/example/customization/readme.txt
common.copy /usr/local/share/boost-build/example/customization/t1.verbatim
common.copy /usr/local/share/boost-build/example/customization/usage.verbatim
common.copy /usr/local/share/boost-build/example/customization/codegen.cpp
common.copy /usr/local/share/boost-build/example/customization/verbatim.py
common.copy /usr/local/share/boost-build/example/customization/inline_file.py
common.mkdir /usr/local/share/boost-build/example/make
common.copy /usr/local/share/boost-build/example/make/jamroot.jam
common.copy /usr/local/share/boost-build/example/make/readme.txt
common.copy /usr/local/share/boost-build/example/make/foo.py
common.copy /usr/local/share/boost-build/example/make/main_cpp.pro
common.mkdir /usr/local/share/boost-build/example/qt
common.copy /usr/local/share/boost-build/example/qt/README.txt
common.mkdir /usr/local/share/boost-build/example/libraries
common.copy /usr/local/share/boost-build/example/libraries/jamroot.jam
common.mkdir /usr/local/share/boost-build/example/python_modules
common.copy /usr/local/share/boost-build/example/python_modules/python_helpers.py
common.copy /usr/local/share/boost-build/example/python_modules/jamroot.jam
common.copy /usr/local/share/boost-build/example/python_modules/readme.txt
common.copy /usr/local/share/boost-build/example/python_modules/python_helpers.jam
common.mkdir /usr/local/share/boost-build/example/variant
common.copy /usr/local/share/boost-build/example/variant/jamroot.jam
common.copy /usr/local/share/boost-build/example/variant/readme.txt
common.copy /usr/local/share/boost-build/example/variant/a.cpp
common.copy /usr/local/share/boost-build/example/variant/jamfile.jam
common.mkdir /usr/local/share/boost-build/example/generate
common.copy /usr/local/share/boost-build/example/generate/REAME.txt
common.copy /usr/local/share/boost-build/example/generate/jamroot.jam
common.copy /usr/local/share/boost-build/example/generate/gen.py
common.copy /usr/local/share/boost-build/example/generate/gen.jam
common.copy /usr/local/share/boost-build/example/generate/a.cpp
common.mkdir /usr/local/share/boost-build/example/generator
common.copy /usr/local/share/boost-build/example/generator/README.txt
common.copy /usr/local/share/boost-build/example/generator/jamroot.jam
common.copy /usr/local/share/boost-build/example/generator/foo.gci
common.copy /usr/local/share/boost-build/example/generator/soap.jam
common.mkdir /usr/local/share/boost-build/example/gettext
common.copy /usr/local/share/boost-build/example/gettext/jamroot.jam
common.copy /usr/local/share/boost-build/example/gettext/russian.po
common.copy /usr/local/share/boost-build/example/gettext/main.cpp
common.copy /usr/local/share/boost-build/example/gettext/readme.txt
common.copy /usr/local/share/boost-build/example/gettext/jamfile.jam
common.mkdir /usr/local/share/boost-build/example/hello
common.copy /usr/local/share/boost-build/example/hello/jamroot.jam
common.copy /usr/local/share/boost-build/example/hello/readme.txt
...on 100th target...
common.copy /usr/local/share/boost-build/example/hello/hello.cpp
common.mkdir /usr/local/share/boost-build/example/pch
common.copy /usr/local/share/boost-build/example/pch/jamroot.jam
common.mkdir /usr/local/share/boost-build/example/built_tool
common.copy /usr/local/share/boost-build/example/built_tool/Jamroot.jam
common.copy /usr/local/share/boost-build/example/built_tool/readme.txt
common.mkdir /usr/local/share/boost-build/example/libraries/app
common.copy /usr/local/share/boost-build/example/libraries/app/app.cpp
common.copy /usr/local/share/boost-build/example/libraries/app/jamfile.jam
common.mkdir /usr/local/share/boost-build/example/variant/libs
common.copy /usr/local/share/boost-build/example/variant/libs/l.cpp
common.copy /usr/local/share/boost-build/example/variant/libs/jamfile.jam
common.mkdir /usr/local/share/boost-build/example/pch/include
common.copy /usr/local/share/boost-build/example/pch/include/pch.hpp
common.mkdir /usr/local/share/boost-build/example/pch/source
common.copy /usr/local/share/boost-build/example/pch/source/hello_world.cpp
common.mkdir /usr/local/share/boost-build/example/built_tool/core
common.copy /usr/local/share/boost-build/example/built_tool/core/a.td
common.copy /usr/local/share/boost-build/example/built_tool/core/core.cpp
common.copy /usr/local/share/boost-build/example/built_tool/core/Jamfile.jam
common.mkdir /usr/local/share/boost-build/example/built_tool/tblgen
common.copy /usr/local/share/boost-build/example/built_tool/tblgen/tblgen.cpp
common.copy /usr/local/share/boost-build/example/built_tool/tblgen/Jamfile.jam
common.mkdir /usr/local/share/boost-build/example/qt/qt4
common.mkdir /usr/local/share/boost-build/example/qt/qt4/moccable-cpp
common.copy /usr/local/share/boost-build/example/qt/qt4/moccable-cpp/jamroot.jam
common.copy /usr/local/share/boost-build/example/qt/qt4/moccable-cpp/main.cpp
common.mkdir /usr/local/share/boost-build/example/qt/qt4/hello
common.copy /usr/local/share/boost-build/example/qt/qt4/hello/jamroot.jam
common.copy /usr/local/share/boost-build/example/qt/qt4/hello/arrow.cpp
common.copy /usr/local/share/boost-build/example/qt/qt4/hello/main.cpp
common.copy /usr/local/share/boost-build/example/qt/qt4/hello/arrow.h
common.mkdir /usr/local/share/boost-build/example/qt/qt4/uic
common.copy /usr/local/share/boost-build/example/qt/qt4/uic/hello_world_widget.ui
common.copy /usr/local/share/boost-build/example/qt/qt4/uic/jamroot.jam
common.copy /usr/local/share/boost-build/example/qt/qt4/uic/main.cpp
common.mkdir /usr/local/share/boost-build/example/qt/qt3
common.mkdir /usr/local/share/boost-build/example/qt/qt3/moccable-cpp
common.copy /usr/local/share/boost-build/example/qt/qt3/moccable-cpp/jamroot.jam
common.copy /usr/local/share/boost-build/example/qt/qt3/moccable-cpp/main.cpp
common.mkdir /usr/local/share/boost-build/example/qt/qt3/hello
common.copy /usr/local/share/boost-build/example/qt/qt3/hello/jamroot.jam
common.copy /usr/local/share/boost-build/example/qt/qt3/hello/main.cpp
common.copy /usr/local/share/boost-build/example/qt/qt3/hello/canvas.h
common.copy /usr/local/share/boost-build/example/qt/qt3/hello/canvas.cpp
common.mkdir /usr/local/share/boost-build/example/qt/qt3/uic
common.copy /usr/local/share/boost-build/example/qt/qt3/uic/hello_world_widget.ui
common.copy /usr/local/share/boost-build/example/qt/qt3/uic/jamroot.jam
common.copy /usr/local/share/boost-build/example/qt/qt3/uic/main.cpp
common.mkdir /usr/local/share/boost-build/example/libraries/util
common.mkdir /usr/local/share/boost-build/example/libraries/util/foo
common.copy /usr/local/share/boost-build/example/libraries/util/foo/bar.cpp
common.copy /usr/local/share/boost-build/example/libraries/util/foo/jamfile.jam
common.mkdir /usr/local/share/boost-build/example/libraries/util/foo/include
common.copy /usr/local/share/boost-build/example/libraries/util/foo/include/lib1.h
common.copy /usr/local/bin/b2
common.copy /usr/local/bin/bjam
common.copy /usr/local/share/boost-build/boost-build.jam
common.copy /usr/local/share/boost-build/build-system.jam
common.mkdir /usr/local/share/boost-build/build
common.copy /usr/local/share/boost-build/build/feature.py
common.copy /usr/local/share/boost-build/build/alias.py
common.copy /usr/local/share/boost-build/build/toolset.jam
common.copy /usr/local/share/boost-build/build/generators.jam
common.copy /usr/local/share/boost-build/build/ac.jam
common.copy /usr/local/share/boost-build/build/__init__.py
common.copy /usr/local/share/boost-build/build/feature.jam
common.copy /usr/local/share/boost-build/build/scanner.jam
common.copy /usr/local/share/boost-build/build/property_set.py
common.copy /usr/local/share/boost-build/build/configure.jam
common.copy /usr/local/share/boost-build/build/build-request.jam
common.copy /usr/local/share/boost-build/build/alias.jam
common.copy /usr/local/share/boost-build/build/generators.py
common.copy /usr/local/share/boost-build/build/project.py
common.copy /usr/local/share/boost-build/build/build_request.py
common.copy /usr/local/share/boost-build/build/targets.jam
common.copy /usr/local/share/boost-build/build/type.jam
common.copy /usr/local/share/boost-build/build/project.jam
common.copy /usr/local/share/boost-build/build/errors.py
common.copy /usr/local/share/boost-build/build/property.py
common.copy /usr/local/share/boost-build/build/type.py
common.copy /usr/local/share/boost-build/build/property-set.jam
common.copy /usr/local/share/boost-build/build/config-cache.jam
common.copy /usr/local/share/boost-build/build/scanner.py
common.copy /usr/local/share/boost-build/build/virtual-target.jam
common.copy /usr/local/share/boost-build/build/property.jam
common.copy /usr/local/share/boost-build/build/targets.py
common.copy /usr/local/share/boost-build/build/version.jam
common.copy /usr/local/share/boost-build/build/configure.py
common.copy /usr/local/share/boost-build/build/toolset.py
common.copy /usr/local/share/boost-build/build/virtual_target.py
common.copy /usr/local/share/boost-build/build/project.ann.py
common.copy /usr/local/share/boost-build/build/engine.py
common.mkdir /usr/local/share/boost-build/kernel
common.copy /usr/local/share/boost-build/kernel/errors.jam
common.copy /usr/local/share/boost-build/kernel/bootstrap.jam
common.copy /usr/local/share/boost-build/kernel/boost-build.jam
common.copy /usr/local/share/boost-build/kernel/class.jam
common.copy /usr/local/share/boost-build/kernel/modules.jam
common.copy /usr/local/share/boost-build/kernel/bootstrap.py
...on 200th target...
common.mkdir /usr/local/share/boost-build/util
common.copy /usr/local/share/boost-build/util/logger.py
common.copy /usr/local/share/boost-build/util/order.jam
common.copy /usr/local/share/boost-build/util/set.jam
common.copy /usr/local/share/boost-build/util/os.jam
common.copy /usr/local/share/boost-build/util/__init__.py
common.copy /usr/local/share/boost-build/util/path.py
common.copy /usr/local/share/boost-build/util/sequence.py
common.copy /usr/local/share/boost-build/util/print.jam
common.copy /usr/local/share/boost-build/util/option.py
common.copy /usr/local/share/boost-build/util/os_j.py
common.copy /usr/local/share/boost-build/util/utility.jam
common.copy /usr/local/share/boost-build/util/regex.py
common.copy /usr/local/share/boost-build/util/option.jam
common.copy /usr/local/share/boost-build/util/path.jam
common.copy /usr/local/share/boost-build/util/assert.jam
common.copy /usr/local/share/boost-build/util/numbers.jam
common.copy /usr/local/share/boost-build/util/container.jam
common.copy /usr/local/share/boost-build/util/regex.jam
common.copy /usr/local/share/boost-build/util/set.py
common.copy /usr/local/share/boost-build/util/doc.jam
common.copy /usr/local/share/boost-build/util/indirect.jam
common.copy /usr/local/share/boost-build/util/indirect.py
common.copy /usr/local/share/boost-build/util/utility.py
common.copy /usr/local/share/boost-build/util/string.jam
common.copy /usr/local/share/boost-build/util/sequence.jam
common.copy /usr/local/share/boost-build/util/order.py
common.copy /usr/local/share/boost-build/tools/png.jam
common.copy /usr/local/share/boost-build/tools/xsltproc-config.jam
common.copy /usr/local/share/boost-build/tools/pch.py
common.copy /usr/local/share/boost-build/tools/python.jam
common.copy /usr/local/share/boost-build/tools/msvc.py
common.copy /usr/local/share/boost-build/tools/mc.py
common.copy /usr/local/share/boost-build/tools/testing.jam
common.copy /usr/local/share/boost-build/tools/como.jam
common.copy /usr/local/share/boost-build/tools/intel-win.jam
common.copy /usr/local/share/boost-build/tools/__init__.py
common.copy /usr/local/share/boost-build/tools/clang-darwin.jam
common.copy /usr/local/share/boost-build/tools/stage.py
common.copy /usr/local/share/boost-build/tools/midl.py
common.copy /usr/local/share/boost-build/tools/notfile.py
common.copy /usr/local/share/boost-build/tools/darwin.jam
common.copy /usr/local/share/boost-build/tools/boostbook-config.jam
common.copy /usr/local/share/boost-build/tools/unix.jam
common.copy /usr/local/share/boost-build/tools/gfortran.jam
common.copy /usr/local/share/boost-build/tools/quickbook-config.jam
common.copy /usr/local/share/boost-build/tools/rc.py
common.copy /usr/local/share/boost-build/tools/pathscale.jam
common.copy /usr/local/share/boost-build/tools/como-win.jam
common.copy /usr/local/share/boost-build/tools/xsltproc.jam
common.copy /usr/local/share/boost-build/tools/unix.py
common.copy /usr/local/share/boost-build/tools/zlib.jam
common.copy /usr/local/share/boost-build/tools/mpi.jam
common.copy /usr/local/share/boost-build/tools/tiff.jam
common.copy /usr/local/share/boost-build/tools/hpfortran.jam
common.copy /usr/local/share/boost-build/tools/pch.jam
common.copy /usr/local/share/boost-build/tools/qt5.jam
common.copy /usr/local/share/boost-build/tools/whale.jam
common.copy /usr/local/share/boost-build/tools/hp_cxx.jam
common.copy /usr/local/share/boost-build/tools/gettext.jam
common.copy /usr/local/share/boost-build/tools/doxproc.py
common.copy /usr/local/share/boost-build/tools/common.py
common.copy /usr/local/share/boost-build/tools/intel-darwin.jam
common.copy /usr/local/share/boost-build/tools/builtin.jam
common.copy /usr/local/share/boost-build/tools/mipspro.jam
common.copy /usr/local/share/boost-build/tools/doxygen-config.jam
common.copy /usr/local/share/boost-build/tools/clang.jam
common.copy /usr/local/share/boost-build/tools/stlport.jam
common.copy /usr/local/share/boost-build/tools/notfile.jam
common.copy /usr/local/share/boost-build/tools/sun.jam
common.copy /usr/local/share/boost-build/tools/message.py
common.copy /usr/local/share/boost-build/tools/testing.py
common.copy /usr/local/share/boost-build/tools/msvc-config.jam
common.copy /usr/local/share/boost-build/tools/symlink.jam
common.copy /usr/local/share/boost-build/tools/jpeg.jam
common.copy /usr/local/share/boost-build/tools/boostbook.jam
common.copy /usr/local/share/boost-build/tools/xlf.jam
common.copy /usr/local/share/boost-build/tools/make.py
common.copy /usr/local/share/boost-build/tools/convert.jam
common.copy /usr/local/share/boost-build/tools/dmc.jam
common.copy /usr/local/share/boost-build/tools/cw-config.jam
common.copy /usr/local/share/boost-build/tools/darwin.py
common.copy /usr/local/share/boost-build/tools/fop.jam
common.copy /usr/local/share/boost-build/tools/builtin.py
common.copy /usr/local/share/boost-build/tools/intel-linux.jam
common.copy /usr/local/share/boost-build/tools/cray.jam
common.copy /usr/local/share/boost-build/tools/rc.jam
common.copy /usr/local/share/boost-build/tools/symlink.py
common.copy /usr/local/share/boost-build/tools/lex.jam
common.copy /usr/local/share/boost-build/tools/package.py
common.copy /usr/local/share/boost-build/tools/auto-index.jam
common.copy /usr/local/share/boost-build/tools/clang-linux.jam
common.copy /usr/local/share/boost-build/tools/stage.jam
common.copy /usr/local/share/boost-build/tools/generate.jam
common.copy /usr/local/share/boost-build/tools/bison.jam
common.copy /usr/local/share/boost-build/tools/qcc.jam
common.copy /usr/local/share/boost-build/tools/quickbook.jam
common.copy /usr/local/share/boost-build/tools/fortran.jam
common.copy /usr/local/share/boost-build/tools/package.jam
common.copy /usr/local/share/boost-build/tools/pgi.jam
...on 300th target...
common.copy /usr/local/share/boost-build/tools/midl.jam
common.copy /usr/local/share/boost-build/tools/como-linux.jam
common.copy /usr/local/share/boost-build/tools/vacpp.jam
common.copy /usr/local/share/boost-build/tools/qt3.jam
common.copy /usr/local/share/boost-build/tools/ifort.jam
common.copy /usr/local/share/boost-build/tools/qt.jam
common.copy /usr/local/share/boost-build/tools/acc.jam
...updated 306 targets...
那些jam文件是什么,我的头文件和库文件去哪里了?据我所知,GNU/Linux默认的库路径在/usr/include/usr/lib中。

如果我说对了,为什么它们没有安装在那里?它安装了吗?头文件和库文件的位置在哪里?它们不应该也在路径包含的地方吗?

希望您能为我澄清这个问题,因为我在网上没有找到任何解答。


1
通常,由您的发行版管理的内容放在 /usr 目录下;您自己下载和安装的内容放在 /usr/local 目录下。如果您按照 说明 所示操作,那么 Boost 库将被安装在 /usr/local 目录下。 - Rob Kennedy
好的,就像我告诉你的那样,我运行了这两个命令,但是在 /usr/usr/local 中都没有找到任何东西。那么我该如何在那里安装它们呢? - Jacob Krieg
当我尝试运行 ./bootstrap.sh --prefix=/usr/local 时,出现了错误:error: unrecognized option: --prefix=/usr/local Try ./bootstrap.sh --help' for more information.。使用 --help 选项可以看到三个选项:-h--with-B2--with-toolset`。请问有什么帮助吗? - Jacob Krieg
尝试输入 locate boost。我猜它在 /opt/local/ 中。如果要更改默认位置,请在调用 bootstrap.sh 时添加 --prefix=/your/path - Igor R.
我将尝试查找boost。然而,就在先前的评论中,我写道./bootstrap.sh --prefix=/usr/local返回error: unrecognized option: --prefix=/usr/local - Jacob Krieg
显示剩余2条评论
1个回答

40

这是我快速完成它的方法:

$ sudo ./bootstrap.sh --prefix=/usr/local
$ sudo ./b2 install 

库和头文件将被安装在/usr/local中。 头文件将放置在/usr/local/include,库将放置在/usr/local/lib/中。 如果您需要在其他位置安装它,请更改路径 /usr/local


2
在输入./b2 install时,应添加前缀。例如:sudo .b2 install --prefix=/usr/local - oya163
4
如果需要的话,我建议将这两个路径添加到PATH变量中。那个完全是错误的。 - Droppy
@Droppy 已经更正。 - Jacob Krieg
源代码应该存放/提取到哪里? - user997112
在磁盘的任何位置都可以找到@user997112。你需要进入源目录并执行命令。 - Jacob Krieg

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接