LoginSignup
1

More than 5 years have passed since last update.

【Ethereum】UbuntuにSolidityのIDE(Remix)をインストールする※install.sh付き

Last updated at Posted at 2018-06-30

1.Remix IDE(Browser-Solidity)とは

Remixとはスマートコントラクトを開発する際に使用するIDE(統合開発環境)のことです。

Ethereumのスマートコントラクトの開発時には、主にSolidityという言語が使用されるんですが、ソースのコンパイルからブロックチェーンネットワークにコントラクトをデプロイするまでの全ての工程をRemixで行うことが可能となります。

そのため、Ethereumのスマートコントラクトを開発する際に、Remixの導入は必須と言ってもいいかと思います。

ちなみにクラウド版とインストール版が存在しますが、ソースコードが手元に保存されないのが怖いので、インストール版を推奨します。
クラウド版URL: https://remix.ethereum.org

2.環境

  • Ubuntu v16.04
  • Node.js v8.11.3
    • nvm v0.33.11
    • npm v5.6.0
  • geth v1.8.8

3.Node.js周りのインストール

まずはnvm(Node Version Manager)を利用して、Node.js周りをインストールしていきます。

nvm-install
$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash

# curl実行後、bash_profile OR bashrcにnvmへのPATHが記載されるので、読み込ませてPATHを通します
$ source ~/.bashrc

# インストールが成功していればバージョンが表示される
$ nvm --version
0.33.11

nvmのインストール後、Node.jsとnpm(Node Packaged Modules)をインストールしていきます。

nodejs-install
$ nvm install v8.11.3

# インストールが成功していればバージョンが表示される
$ node --version
v8.11.3

$ npm --version
5.6.0

これでNode.js周りのセットアップは完了です。

4.Remixのインストール

続いて、いよいよRemixのインストールに入っていきます。
Remixは以下のGithubレポジトリにあります。
https://github.com/ethereum/remix-ide

remix-install
$ git clone https://github.com/ethereum/remix-ide.git
$ cd remix-ide
$ npm install
$ npm run setupremix

このとき、Node.jsとnpmのバージョンは完全に合わせるように注意してください。
バージョンが古いとRemixがエラーで起動できず、結構深い闇にハマります。(ハマりました)

最後にRemixを起動し、以下へアクセスできたら終了となります。
http://localhost:8080

remix-start
$ npm start

5.インストール用シェルを作成しました

大した量ではありませんが、Remixインストールのためのインストール用シェルを作成しました。
こちらを使って楽にインストールしてみてください。

remix-install.sh
#!/bin/sh

# node.jsがなければインストール
if ! type node > /dev/null 2>&1; then
    curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
    source ~/.bashrc

    nvm install v8.11.3
fi

# remixのインストール
git clone https://github.com/ethereum/remix-ide.git
cd remix-ide
npm install
npm run setupremix

参考文献

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1