Solidity で書かれた Ethereum スマート コントラクトには複数のバージョンがあります。スマート コントラクトによって指定されたコンパイラのバージョンは、スマート コントラクトのヘッダーにあります。例えば:
pragma solidity ^0.4.16;
contract test{
function(){......}
}
ステートメントの最初の行は、使用される Solidity コンパイラーのバージョンが 0.4.16 であることを示しています。この場合、バージョン番号の中央の数字はコンパイルするバージョン番号と同じである必要があり (中央の数字は 4 である必要があります)、右端のバージョン番号は、コンパイルするスマート コントラクトの指定されたバージョン番号以上である必要があります。 (右端のバージョン番号は 4 である必要があります。数値は 16 以上である必要があります) コンパイラ。たとえば、バージョン番号が 0.4.16、0.4.17、または 0.4.26 のコンパイラです。
コンパイルするスマート コントラクトのバージョン番号が異なる場合があります。その場合は、異なるバージョンのコンパイラーをダウンロードする必要があります。Github 上のプロジェクトでは、非常に使いやすいオープンソースのsolc パッケージ管理ツールを提供しています。
インストール方法は 2 つありますが、個人的に試した後、より使いやすく、より安定した方法をお勧めします。ターミナルで次のコマンドを入力します。
pip3 install solc-select==0.2.0
インストールが成功したら、次のコマンドを入力して、インストール可能なバージョン番号を表示します。
solc-select install
インストール可能なバージョン番号が表示されます。