EOS 合约基础教程 - 构建 CDT
CDT 的英文全程是 Contract Development Toolkit
,翻译成中文就是 「合约开发工具」。CDT
是 EOSIO 团队研发的专门用于编译 C++11 为 .wasm
和创建 ABI
文件的工具。
CDT 的官方网址为 https://github.com/EOSIO/eosio.cdt,当前最新的版本为 1.3.2
。
重要
本教程基于
eosio.cdt
v1.3.2 版本。
我们接下来的教程将主要使用 CDT 来构建合约和生成 ABI。
编译安装 eosio.cdt
在编译 CDT 之前,我们先要将远程代码 clone
到本地,本地 eosio.cdt
的保存位置并不重要,因为我们将在以后的步骤中将 eosio.cdt
安装为本地二进制文件。
现在,你可以将 eosio.cdt
clone 到先前创建的 contracts
目录,或者你认为适合的本地系统上的任何其他位置。
cd sddd
clone v1.3.2 的 eosio.cdt
代码到本地的 sddd
目录
git clone --recursive https://github.com/eosio/eosio.cdt --branch v1.3.2 --single-branch
仓库有点大,所以 clone 可能会消耗那么点时间,大约 5-30 分钟左右。
clone 完成后,然后进入 eosio.cdt
目录
cd eosio.cdt
编译 eosio.cdt
运行下面的命令开始构建
./build.sh
构建可能需要需要一些时间,构建完成后,运行下面的命令安装
sudo ./install.sh
上面的命令需要使用 sudo
超级用户运行,因为 eosio.cdt
的各种二进制文件将在本地安装。系统将要求您提供计算机的帐户密码。
安装 eosio.cdt
将使编译后的二进制文件全局化,因此可以在任何地方访问它。
因为该序列教程很多地方都会用到 eosio.cdt
工具,所以,强烈建议您不要跳过 eosio.cdt
的安装步骤,如果不安装将使遵循此教程和其他教程变得更加困难,并且使用一般更加困难。
检查安装是否正确
输入以下命令查看当前的 eosio.cdt
工具的版本
eosio-cpp --version
输出结果应该如下
eosio-cpp version 1.3.2
编译安装过程中的一些问题
eosio.cdt
可能在构建期间会出现一些问题:
- 在你的错误中搜索字符串
/usr/local/include/eosiolib/
- 如果找到了,运行命令
rm -fr /usr/local/include/eosiolib/
删除,或者使用文件管理器导航到/usr/local/include/
手动删除