The EVM version used by the selected environment is not compatible with the compiler EVM version.
- Dominant language
- C++
- Stars
- 25.7k
- Forks
- 6.2k
- Avg merge
- 2d 19h
- Merged PRs (30d)
- 29
Description
## Description
I'm using geth to build a private chain and then deploy a smart contract using remix. But when I deploy and call some functions in remix this error comes out"The EVM version used by the selected environment is not compatible with the compiler EVM version." with some "invalid opcode" error. I prefer using geth of version I mentioned below. Can anybody tell me which version of solc is compatible with this version of geth? Or how to solve this problem?
## Environment
- Compiler version: 0.8.18
- Target EVM version (as per compiler settings): geth 1.10.4
- Framework/IDE (e.g. Truffle or Remix): remix
- EVM execution environment / backend / blockchain client: both default and paris environment failed.
- Operating system: windows
## Steps to Reproduce
```solidity
// Some *minimal* Solidity source code to reproduce the bug.
// This is the file I have tried. It's just a simple test file.
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.18;
contract SimpleStorage {
uint256 public favoriteNumber;
struct person {
uint256 age;
string name;
}
person[] public array_of_people;
// type is person[], visibility is public and name is "array_of_people
mapping(string => uint256) public findnum;
function addperson(string memory _name, uint256 favnum) public {
array_of_people.push(person(favnum,_name));
findnum[_name] = favnum;
}
function store(uint256 _favoriteNumber) public {
favoriteNumber = _favoriteNumber;
}
function retrive() view public returns (uint256) {
return favoriteNumber;
}
}
```
Contributor guide
Research direction
Start with the Solidity source and environment details in the issue, reproducing the deployment in Remix with solc 0.8.18 against geth 1.10.4 and the stated EVM environments. Determine whether the failure is a compiler-target compatibility issue or an invalid-opcode problem, then document a verified compatible configuration or required change.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- solidity
- Domain
- blockchain, compilers
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100