首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >请求的EVM版本无效&错误:块菌目前正在使用solc 0.5.0

请求的EVM版本无效&错误:块菌目前正在使用solc 0.5.0
EN

Ethereum用户
提问于 2021-11-07 15:36:46
回答 3查看 2.3K关注 0票数 0

我开始在youtube上学习Dapp大学指南的稳固性,第20分钟,我就遇到了编写Truffle的问题。

我克隆了这个存储库:git clone -b starter-code https://github.com/dappuniversity/defi_tutorial ./,这是到本教程的YT链接:https://www.youtube.com/watch?v=CgXQC4dbGUE

本指南中的块菌配置如下所示:

代码语言:javascript
运行
复制
require('babel-register');
require('babel-polyfill');

module.exports = {
  networks: {
    development: {
      host: "127.0.0.1",
      port: 7545,
      network_id: "*" // Match any network id
    },
  },
  contracts_directory: './src/contracts/',
  contracts_build_directory: './src/abis/',
  compilers: {
    solc: {
      optimizer: {
        enabled: true,
        runs: 200
      },
      evmVersion: "petersburg"
    }
  }
}

在指南的这一点上,编译成功了,但是我得到了一个错误:

代码语言:javascript
运行
复制
Error: Truffle is currently using solc 0.5.16, but one or more of your contracts specify "pragma solidity ^0.5.0

因此,我转到Tru显文档,我发现我可以在配置中指定solc版本,所以我添加了version字段,我的配置现在看起来如下:

代码语言:javascript
运行
复制
// ...
compilers: {
    solc: {
      version: "0.5.0",
      optimizer: {
        enabled: true,
        runs: 200
      },
      evmVersion: "petersburg"
    }
  }
// ...

我的编译也失败了,还有一个错误,但这次是用evmVersion

代码语言:javascript
运行
复制
Invalid EVM version requested.

Compilation failed. See above.
Truffle v5.1.39 (core: 5.1.39)
Node v16.9.1

现在,我已经将EVM版本从"petersburg"更改为"byzantium",并将进入另一个错误编译失败:Error: Truffle is currently using solc 0.5.0, but one or more of your contracts specify "pragma solidity ^0.5.0

有人能告诉我如何处理这个错误吗?

EN

回答 3

Ethereum用户

回答已采纳

发布于 2021-11-16 11:19:50

将EVM版本从“彼得堡”更改为"byzantium“,将编译器版本更改为"0.5.0”对我有效。

票数 0
EN

Ethereum用户

发布于 2021-11-07 16:01:45

您需要下载所需的编译器版本,或者更改契约稳固版本。

票数 0
EN

Ethereum用户

发布于 2021-11-08 10:27:59

将truf-config.js上的配置更改为您的契约稳固版本

票数 0
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/113056

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档