📜  源文件需要不同的编译器版本(当前编译器是 0.8.4+commit.c7e474f2.Emscripten.clang) - 请注意,夜间构建被认为严格低于发布版本 - Javascript (1)

📅  最后修改于: 2023-12-03 15:40:47.537000             🧑  作者: Mango

源文件需要不同的编译器版本

如果你在编译 Solidity 代码时遇到了以下提示:

源文件需要不同的编译器版本(当前编译器是 0.8.4+commit.c7e474f2.Emscripten.clang) - 请注意,夜间构建被认为严格低于发布版本 - Javascript

这意味着你的 Solidity 代码需要比你当前所使用的编译器版本更高的版本来编译。

解决方法

可以使用 solc-select 工具来切换 Solidity 编译器版本。

安装 solc-select
  1. 安装 NPM

    sudo apt install npm
    
  2. 安装 solc-select

    npm install -g solc-select
    
切换 Solidity 编译器版本
  1. 查看可用的 Solidity 编译器版本:

    solc-select list
    
  2. 安装指定版本的 Solidity 编译器:

    solc-select install <version>
    

    其中 <version> 是需要安装的 Solidity 编译器版本号,例如 0.8.9

  3. 使用指定版本的 Solidity 编译器:

    solc-select use <version>
    

    其中 <version> 是需要使用的 Solidity 编译器版本号,例如 0.8.9

总结

如果你在编译 Solidity 代码时遇到了版本兼容性问题,可以通过 solc-select 工具来切换 Solidity 编译器版本。但要注意,夜间构建版本通常被认为严格低于发布版,因此建议使用发布版。