BitShares Forum

Main => 中文 (Chinese) => Topic started by: laow on June 26, 2014, 07:42:43 am

Title: ubuntu 12.04编译bitshares_toolkit教程
Post by: laow on June 26, 2014, 07:42:43 am
主要升级编译bitshares_toolkit所依赖的高版本cmake,git,gcc等。注意以下步骤会改变系统编译环境。

1、添加第三方源

Code: [Select]
sudo add-apt-repository ppa:andykimpe/cmake
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo add-apt-repository  ppa:git-core/ppa
sudo apt-get update
sudo apt-get upgrade

sudo apt-get install cmake git libreadline-dev uuid-dev g++ libdb++-dev libdb-dev zip libssl-dev openssl build-essential python-dev autotools-dev libicu-dev build-essential libbz2-dev

2、更新gcc版本

Code: [Select]
sudo apt-get install gcc-4.8 g++-4.8

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 50

3、安装boost1.54

ubuntu12.04官方源boost版本较低,如果已安装过了,先卸载
Code: [Select]
sudo apt-get remove libboost-all-dev  libboost-dev
编译安装boost 1.54,此过程耗时较长
Code: [Select]
cd ~
wget -O boost_1_54_0.tar.gz http://sourceforge.net/projects/boost/files/boost/1.54.0/boost_1_54_0.tar.gz/download
tar xzvf boost_1_54_0.tar.gz
cd boost_1_54_0/

./bootstrap.sh --prefix=/usr/local

user_configFile=`find $PWD -name user-config.jam`
echo "using mpi ;" >> $user_configFile

n=`cat /proc/cpuinfo | grep "cpu cores" | uniq | awk '{print $NF}'`

sudo ./b2 --with=all -j $n install

sudo ldconfig

sudo ln -s -f /usr/local/lib/libboost_*.a /usr/lib


4、编译bitshares_toolkit

Code: [Select]
git clone https://github.com/BitShares/bitshares_toolkit.git
cd bitshares_toolkit
git submodule init
git submodule update
cmake .
make

5、注册代表
以下为简单教程,具体每个步骤的解释详见官方教程https://github.com/BitShares/bitshares_toolkit/wiki/DPOS-Registering-Names-And-Delegates (https://github.com/BitShares/bitshares_toolkit/wiki/DPOS-Registering-Names-And-Delegates)

Code: [Select]
创建钱包
wallet_create mywallet

解锁钱包,钱包解锁的状态下代表才能生成块
wallet_unlock 999999

创建帐号
wallet_account_create user123

注册代表,此步骤需花费一些XTS,因此钱包不能为空,可以向其他人索要,或者导入有余额的pts钱包。
最后一个参数为代表收取交易费的比例
wallet_account_register user123 user123 null 50

当注册确认后,设置让代表产生块
wallet_enable_delegate_block_production user123 true

Title: Re: ubuntu 12.04编译bitshares_toolkit教程
Post by: zhao150 on June 26, 2014, 07:52:04 am
哦 好贴,谢谢,可否继续把如何注册代表 也写完整。
Title: Re: ubuntu 12.04编译bitshares_toolkit教程
Post by: chono on June 26, 2014, 08:13:18 am
期待注册代表完整版 +5% :)
Title: Re: ubuntu 12.04编译bitshares_toolkit教程
Post by: dexinwong on June 26, 2014, 08:13:52 am
谢谢分享。。
Title: Re: ubuntu 12.04编译bitshares_toolkit教程
Post by: Overthetop on June 26, 2014, 09:15:11 am
 +5%
Title: Re: ubuntu 12.04编译bitshares_toolkit教程
Post by: dcchong on June 29, 2014, 07:21:45 am
请教楼主,有没有在osx上编译过。 我在osx 10.8.4上编译bitshares_toolkit时,错误信息显示boost库缺少boost_chrono和boost_locale文件;我是下载boost_1_54_0.tar.bz2安装boost库的,按照BUILD_OSX.md的步骤中boost的编译方法,的确缺少了这两个库文件,是不是我gcc版本太低了,我gcc版本是4.2.1.
Title: Re: ubuntu 12.04编译bitshares_toolkit教程
Post by: Snail on June 29, 2014, 11:04:34 am
感谢楼主分享 +5%
Title: Re: ubuntu 12.04编译bitshares_toolkit教程
Post by: laow on June 29, 2014, 01:57:31 pm
请教楼主,有没有在osx上编译过。 我在osx 10.8.4上编译bitshares_toolkit时,错误信息显示boost库缺少boost_chrono和boost_locale文件;我是下载boost_1_54_0.tar.bz2安装boost库的,按照BUILD_OSX.md的步骤中boost的编译方法,的确缺少了这两个库文件,是不是我gcc版本太低了,我gcc版本是4.2.1.
我没在osx试过,是不是xcode或者Command Line Tools的版本不对。BUILD_OSX.md有这么一句
Note: boost 1.55 does not compile with clang using the latest version of XCode as of (March 2014)
Title: Re: ubuntu 12.04编译bitshares_toolkit教程
Post by: dcchong on June 30, 2014, 03:59:46 am
请教楼主,有没有在osx上编译过。 我在osx 10.8.4上编译bitshares_toolkit时,错误信息显示boost库缺少boost_chrono和boost_locale文件;我是下载boost_1_54_0.tar.bz2安装boost库的,按照BUILD_OSX.md的步骤中boost的编译方法,的确缺少了这两个库文件,是不是我gcc版本太低了,我gcc版本是4.2.1.
我没在osx试过,是不是xcode或者Command Line Tools的版本不对。BUILD_OSX.md有这么一句
Note: boost 1.55 does not compile with clang using the latest version of XCode as of (March 2014)


对于这句我的理解是,boost1.55版本会有问题,如果用的是最新版的xcode就不能使用boost1.55, boost1.54.0才没这个限制。

不过我还是会更新最新版本的xcode试下,谢谢楼主 :P
Title: Re: ubuntu 12.04编译bitshares_toolkit教程
Post by: sbwdlihao on July 04, 2014, 02:05:53 pm
请问楼主我在Ubuntu下编译成功,也运行起来了,创建账户等等都没有问题,但是同步不了数据,我的Ubuntu装在虚拟机上,能连外网,也能ping通config里面的节点ip。
Title: Re: ubuntu 12.04编译bitshares_toolkit教程
Post by: Webber on July 04, 2014, 02:34:24 pm
请问楼主我在Ubuntu下编译成功,也运行起来了,创建账户等等都没有问题,但是同步不了数据,我的Ubuntu装在虚拟机上,能连外网,也能ping通config里面的节点ip。

你运行的那个文件?
Title: Re: ubuntu 12.04编译bitshares_toolkit教程
Post by: sbwdlihao on July 04, 2014, 02:55:42 pm
请问楼主我在Ubuntu下编译成功,也运行起来了,创建账户等等都没有问题,但是同步不了数据,我的Ubuntu装在虚拟机上,能连外网,也能ping通config里面的节点ip。

你运行的那个文件?

问题解决了,因为我的主机开着一个客户端占用了8701端口,所以虚拟机的客户端没法绑定8701端口,所以同步不了