mirror of
https://github.com/scroll-tech/scroll.git
synced 2026-01-09 14:08:03 -05:00
1.1 KiB
1.1 KiB
How to pre deploy contracts?
- Please reference to https://github.com/scroll-tech/genesis-creator.
- Setup env
git clone git@github.com:scroll-tech/genesis-creator.git
cd genesis-creator
go get -v github.com/scroll-tech/go-ethereum@develop && go mod tidy
make abi && make genesis-creator
make l2geth-docker
- Start docker and write pre deployed contracts into genesis file.
make start-docker
./bin/genesis-creator -genesis ${SCROLLPATH}/common/docker/l2geth/genesis.json -contract [erc20|greeter]
- Rebuild l2geth docker.
cd ${SCROLLPATH}
make dev_docker
How to get contract abi?
- Other contracts' step same to eth20, e.g:
-
Install solc.
Reference to https://docs.soliditylang.org/en/latest/installing-solidity.html
-
Get abi file.
cd genesis-creator
solc --combined-json "abi" --optimize ${SCROLLPATH}/common/bytecode/erc20/ERC20Mock.sol | jq > ${SCROLLPATH}/common/bytecode/erc20/ERC20Mock.json
- Translate abi to go.
cd ${SCROLLPATH}
make -C common/bytecode all