Linux centos 編譯安裝boost

2021-06-03 16:38:02 字數 2644 閱讀 8915

理論上,本文適用於boost的各個版本,尤其是最新版本1.48.0;適用於各種c++編譯器,如vc6.0(部分庫不支援),vs2003,vs2005,vs2008,vs2010,gcc,c++ builder等。

2.安裝

cd /home/boost_1_48_0/

首先需要編譯bjam: ./bootstr

ap.sh --prefix=/home/boost-1.48.0/sdk/  設定庫安裝路徑

通過bjam編碼boost庫: ./bjam  install

3.設定環境變數

在/etc/profile.d新建可執行檔案boost.sh,新增檔案內容:

#!/bin/sh

boost_include=/home/boost-1.48.0/sdk/inc

lude/boost

boost_lib==/home/boost-1.48.0/sdk/lib

export boost_include boost_lib

命令列執行:source /etc/profile.d/boost.sh

以後在編譯程式時,只需要用:-i$boost_include -l$boost_lib 即可,還要使用-l指定了鏈結庫。

然後, /etc/ld.so.conf 檔案新增so庫的環境變數 /home/boost-1.48.0/sdk/lib(主要關鍵問題)

修改完成後,通過ldconfig命令進行重啟

4.遇到的問題及解決方案

安裝過程出現很多和bz及python庫相關的錯誤,解決方案如下

命令方式

sudo apt-get install libbz2-dev    yum install python-dev

yum install libbz2-dev yum install python-dev

影象介面方式

ps 安裝過程中的錯誤:

libs/iostreams/src/bzip

2.cp

p: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....

Linux centos編譯安裝ffmpeg

系統環境 centos release 6.7 final 編譯安裝ffmpeg yum install y autoconf automake cmake freetype devel gcc gcc c git libtool make mercurial nasm pkgconfig zlib...

Linux Centos下編譯安裝Redis

gcc安裝過程 指定安裝目錄 cd usr local redis 進入安裝目錄 ls 檢視目錄 ls bin 檢視bin目錄 ll bin 檢視bin目錄下檔案 cp usr local src redis 2.6.16 redis.conf 拷貝redis配置目錄到當前目錄 bin redis ...

Linux CentOS7安裝gcc編譯器詳解

使用yum安裝gcc 使用yum命令安裝還是非常easy的。yum y install gcc gcc c kernel devel 安裝gcc c 編譯器以及核心檔案 手動安裝gcc 從centos7的系統安裝映象中取出需要的rpm包 也可以通過別的方式獲取 解壓映象檔案,進入 packages ...