イーサリアムでTruffle Suiteを利用したスマートコントラクトの開発環境の構築方法を教えて!
こういった悩みにお答えします.
本記事の信頼性
- リアルタイムシステムの研究歴12年.
- 東大教員の時に,英語でOS(Linuxカーネル)の授業.
- 2012年9月~2013年8月にアメリカのノースカロライナ大学チャペルヒル校(UNC)コンピュータサイエンス学部で客員研究員として勤務.C言語でリアルタイムLinuxの研究開発.
- プログラミング歴15年以上,習得している言語: C/C++,Python,Solidity/Vyper,Java,Ruby,Go,Rust,D,HTML/CSS/JS/PHP,MATLAB,Verse(UEFN), Assembler (x64,ARM).
- 東大教員の時に,C++言語で開発した「LLVMコンパイラの拡張」,C言語で開発した独自のリアルタイムOS「Mcube Kernel」をGitHubにオープンソースとして公開.
- 2020年1月~現在はアメリカのノースカロライナ州チャペルヒルにあるGuarantee Happiness LLCのCTOとしてECサイト開発やWeb/SNSマーケティングの業務.2022年6月~現在はアメリカのノースカロライナ州チャペルヒルにあるJapanese Tar Heel, Inc.のCEO兼CTO.
- 最近は自然言語処理AIとイーサリアムに関する有益な情報発信に従事.
- (AI全般を含む)自然言語処理AIの論文の日本語訳や,AIチャットボット(ChatGPT,Auto-GPT,Gemini(旧Bard)など)の記事を50本以上執筆.アメリカのサンフランシスコ(広義のシリコンバレー)の会社でプロンプトエンジニア・マネージャー・Quality Assurance(QA)の業務委託の経験あり.
- (スマートコントラクトのプログラミングを含む)イーサリアムや仮想通貨全般の記事を200本以上執筆.イギリスのロンドンの会社で仮想通貨の英語の記事を日本語に翻訳する業務委託の経験あり.
こういった私から学べます.
国内・海外のブロックチェーンエンジニアのおすすめ求人サイトを知りたいあなたはこちらからどうぞ.
目次
イーサリアムでTruffle Suite(トリュフスイート)を利用したスマートコントラクトの開発環境の構築
イーサリアムでTruffle Suite(トリュフスイート)を利用したスマートコントラクトの開発環境の構築方法を紹介します.
具体的には,Linux(Ubuntu 22.04 LTS)に以下をインストールします.
- OpenEthereum
- MetaMask
- Node.js
- Truffle Suite(Truffle,Ganache)
イーサリアムクライアント「OpenEthereum」のインストール
Rust言語で開発されたOpenEthereumのインストール方法を紹介します.
step
1OpenEthereumのビルド環境のインストール
OpenEtehreumのビルド環境をインストールします.
1 |
$ sudo apt-get install build-essential cmake libudev-dev curl cargo npm |
step
2Rustのインストール
Rustをインストールします.
1 |
$ curl https://sh.rustup.rs -sSf | sh |
Rustの環境変数PATHを設定します.
1 |
$ export PATH=$HOME/.cargo/bin:$PATH |
Rustのバージョンを以下のrustcコマンドで確認してみましょう.
1 2 |
$ rustc --version rustc 1.60.0 (7737e0b5c 2022-04-04) |
step
3OpenEthereumのビルド
それでは,OpenEthereumをビルドします.
まず,GitHubからOpenEthereumをダウンロードして下さい.
1 2 |
$ git clone https://github.com/openethereum/openethereum $ cd openethereum |
次に,cargoコマンドでOpenEthereumをビルドします.
最後に「Finished release [optimized] target(s) in **m **s」(*は数値,私の場合は13分45秒)と表示されればビルド成功です.
1 2 3 |
$ cargo build --release --features final ... Finished release [optimized] target(s) in 13m 45s |
step
4OpenEthereumの実行
OpenEthereumを実行するためには,以下のコマンドを入力します.
1 |
$ ./target/release/openethereum |
systemdを利用して自動で起動するためには,以下のコマンドを実行します.
1 2 3 |
$ mkdir -p ~/.config/systemd/user/ $ cp ./scripts/openethereum.service ~/.config/systemd/user/ $ sudo install ./target/release/openethereum /usr/bin/openethereum |
MetaMaskのインストール
MetaMaskのインストールはこちらが参考になります.
Node.jsのインストール
Node.jsを以下のコマンドでインストールします.
インストールするNode.jsのバージョンは,v12.xです.
1 |
$ sudo apt-get install nodejs |
以下のコマンドでNode.jsのバージョンがv12.xになっているかを確認して下さい.
私のPCでは,v12.22.9です.
1 2 |
$ node -v v12.22.9 |
Truffle Suiteのインストール
Truffle Suiteをインストールするためには,Truffle(トリュフ)とGanache(ガナッシュ)をインストールします.
step
1Truffleのインストール
Truffleをインストールするためには,以下のコマンドを実行して下さい.
1 |
$ sudo npm install -g truffle |
Truffleスイートでインストールされたバージョンを確認して下さい.
1 2 3 |
$ truffle -v Truffle v5.5.11 - a development framework for Ethereum ... |
step
2Ganacheのインストール
Ganacheをインストールするためには,以下のコマンドを実行して下さい.
1 |
$ sudo npm install ganache-cli --global |
Ganacheをインストールしたバージョンを確認して下さい.
1 2 |
$ ganache-cli --version Ganache CLI v6.12.2 (ganache-core: 2.13.2) |
まとめ
イーサリアムでTruffle Suiteを利用したスマートコントラクトの開発環境の構築方法を紹介しました.
具体的には,Linux(Ubuntu 22.04 LTS)に以下をインストールしました.
- OpenEthereum
- MetaMask
- Node.js
- Truffle Suite(Truffle,Ganache)
イーサリアムとスマートコントラクトでブロックチェーンエンジニアの1歩を踏み出しましょう!
SolidityとTruffle SuiteでHello Worldの表示方法を学びたいあなたはこちらからどうぞ.
国内・海外のブロックチェーンエンジニアのおすすめ求人サイトを知りたいあなたはこちらからどうぞ.