Error al intentar crear un nuevo contrato de Solidity usando Geth

Soy muy nuevo en Geth y Ethereum, y solo estoy tratando de crear mi primer contrato e implementarlo en mi cadena de bloques privada usando Geth.

Geth versión 1.7.3

A continuación se muestra mi código de contrato de Solidity:

pragma solidity ^0.4.8;

contract Test {
uint256 public value;

function Test() {
    value = 123;    
}
}

Compilé este contrato con el compilador del navegador y copié las instrucciones de implementación de Web3 del compilador del navegador Remix en la consola geth, y también intenté usar el compilador de solidez incorporado en mi Mac para compilar y crear un nuevo contrato. Notaré que no estoy compilando desde dentro de la consola geth, ya que sé que ya no funciona, sigo recibiendo el error cuando llamo:

testContract.new(<ContractCode>)

A continuación se muestra el resultado del código que ejecuto con el contrato compilado con el error:

var test = testContract.new({ from: eth.accounts[0], data: "0x" + testOutput.contracts["Test.sol:Test"].bin, gas: 18000000000},
function (e, contract) {
  console.log(e, contract);
  if (typeof contract.address !== 'undefined') {
  var test = testContract.new({ from: eth.accounts[0], data: "0x" + 
  testOutput.contracts["Test.sol:Test"].bin, gas: 18000000000},
    function (e, contract) {
    console.log(e, contract);
    if (typeof contract.address !== 'undefined') {
    console.log('Contract mined! address: ' + contract.address + ' transactionHash: ' + contract.transactionHash);
  }
});
Error: exceeds block gas limit undefined
He investigado mucho sobre este tema. He intentado iniciar mi nodo geth usando "-targetgaslimit" con un valor exorbitantemente alto y eso todavía me da el "Error: excede el límite de gas del bloque indefinido"
ENLACE A LA RESPUESTA DE STACKEXCHANGE ESTABA PROBANDO ethereum.stackexchange.com/questions/15435/…

Respuestas (1)

Si su error está en geth, entonces puedo recomendarle que lea este artículo sobre la implementación de un contrato inteligente. Asegúrese de configurar su cadena privada correctamente , tener cuenta, tener saldo >0, unlockAccountantes de implementar el contrato.

Como mencionaste en tu pregunta, eres nuevo en geth. Puede ser útil señalar que antes de sumergirse en la implementación de contratos inteligentes en geth, asegúrese de leer algunos artículos sobre cómo configurar el nodo ethereum usando geth. ¡Espero que eso ayude!