레퍼지토리 만들고 나서
sudo apt-get update
sudo apt-get install solc
solc --version
which solc
admin.setSolc('which solc 나온 경로 여기에')
eth.getCompilers()
HelloWorld.sol의 개행을 없애보자
cat HelloWorld.sol | tr -d '\n' > HelloWorldExcept.sol
sourceCompiled = eth.compile.solidity("source 개행을 없앤 코드를 복붙")
/// ABI만들기
contractAbiDefinition = sourceCompiled['<stdin>:HelloWorld'].info.abiDefinition
helloContract = eth.contract(contractAbiDefinition)
--> 컨트랙트에 대한 정보가 만들어짐
/// 계정 언락하기, 마이닝 시작
/// 생성자에 인자 넣고 배포하기
contract = helloContract.new("hi!!", {from : eth.accounts[0], data:sourceCompiled['<stdin>:HelloWorld'].code, gas:30000000})
/// 팬딩확인
eth.pendingTransactions
/// 배포확인
contract.say.call() // result : "hi!!"
contract.컨트랙트내부함수이름.sendTransaction('부를함수의 Parameter', {from:eth.accounts[실행계정], gas:30000000})
geth15 --networkid (기입) --각종 옵션 --unlock 0,1,2 --password 경로/password console 2>> 경로/geth.log
/// unlock 확인하기
personal.listWallets
2개 이상의 게스 콘솔을 띄우고 한쪽에서 admin.nodeInfo
로 enode "안에있는 정보 복사"
다른 게스 콘솔에서 admin.addPeer("안에있는 정보 복사한거 붙여넣기") -> true값 반환
/// 몇개의 피어가 붙엇는지 확인하기
net.peerCount
/// 피어의 정보 확인하기 - 여기서 id에 붙은 이노드의 정보가 나온다.
admin.peers
이후 블록넘버도 동일하다.