工作需要,既需要編譯bitshares原始碼又需要編譯eos的原始碼,而兩個專案分別要求boost庫版本為1.57-1.65和1.67+,所以存在boost庫安裝乙個版本不能滿足兩個專案的情況,於是就需要安裝兩個版本。
我這裡考慮bitshares原始碼採用1.60,eos版本採用1.67,步驟如下:
二、安裝boost1.60,終端執行如下指令
tar -zxvf boost_1_60_0.tar.gz && cd boost_1_60_0
> su - root
> ./boottrap.sh --with-libraries=all
> ./b2
> sudo ./b2 install
#我編譯bitshare專案多一點,就使用./b2 install 把boost1.60安裝在預設路徑了,即/usr/local下,標頭檔案和庫檔案分別位於/usr/local/include和/usr/local/lib中。
三、安裝boost1.67, 解壓和編譯原始碼還是跟上邊一樣,但是最後./b2 install指令跟上prefix 引數,指定安裝路徑:
...
mkdir /usr/local/opt/boost1.67
sudo ./b2 install --prefix=/usr/local/opt/boost1.67
這樣安裝完後頭檔案和lib檔案就分別位於/usr/local/opt/boost1.67下的include和lib檔案下
安裝就完成了
四、為專案指定boost庫
bitshares和eos原始碼使用cmakelist組織,其通過find_package(boost ...)指令來搜尋boost所在的目錄,如果不加以設定的話都會預設搜尋到/usr/local/下的boost1.60版本,因為bitshare用boost1.60是ok的,這裡需要設定的是eos專案,方法如下:
1.如果採用終端cmake指令編譯,則加上-d引數:
cd cmake -d boost_root=/usr/local/opt/boost1.67 .
2.如果採用ide,就需要在ide中設定環境變數,比如我用的是clion:
clion->preferences->build,execution,deployment->cmake->environment,新增boost_root=/usr/local/opt/boost1.67
但是clion設定環境變數需要一定的反應時間,設定好後最好重啟一下clion,如果還是檢索出來別的版本,就再耐心等一下。
Linux下安裝和使用boost庫
boost庫分為兩個部分來使用,一是直接使用對應的標頭檔案,二是需要編譯安裝相應的庫才可以使用。下面是boost在linux上安裝和使用過程 整個boost庫全部安裝 2 進入自己的工作目錄執行解壓等操作命令 bzip2 d boost 1 64 0.tar.bz2 tar xvf boost 1 ...
Boost庫的安裝
windows下的安裝和linux下安裝實際上大同小異,主要是弄清楚一些配置選項,和可執行檔案的作用。目錄為 d boost 1 62 0 step2 開啟命令提示符,找到指定目錄下的bootstrap.bat檔案,並執行 step3 執行生成的bjam.exe檔案 編譯的時間很長,耐心等待這段時間...
boost庫的安裝
一 對於windows平台,在vs2013中安裝配置boost 1 58 0庫 預設已安裝vs2013 1.到 www.boost.org boost 1 58 0.tar.bz2 2.解壓boost檔案到本地目錄 如g boost 1 58 0 可以發現解壓後的檔案中有乙個bootstrap.ba...