Deploying contract with solc
mkdir manual_dapp && cd manual_dapp
mkdir data
geth --dev --datadir=./data console
in a seperate terminal:
echo "pragma solidity ^0.4.0;
contract SimpleStorage {
uint storedData;
function set(uint x) public {
storedData = x;
}
function get() public view returns (uint) {
return storedData;
}
}
" > SimpleStorage.sol
echo var compilerStorage = `solc --combined-json abi,bin,interface SimpleStorage.sol` > simpleStorage.js
in the previous terminal:
loadScript(simpleStorage.js)
var abi = compiledStorage.contracts["SimpleStorage.sol:SimpleStorage"].abi
var bin = "0x" + compiledStorage.contracts["SimpleStorage.sol:SimpleStorage"].bin
var deploymentTx = {from: eth/accounts[0], data: bin, gas: 1000000}
var storageInterface = eth.contract(JSON.parse(abi))
var storageInstance = storageInterface.new(deploymentTx)
var address = eth.getTransactionReceipt(storageInstance.transactionHash).contractAdress
var storage = storageInterface.at(address)
storage.get.call()
storage.set.sendTransaction(10, {from: eth.accounts[0], gas: 1000000})
storage.get.call()