Solc: Exit-Status 1 beim Kompilieren meines Vertrags auf meiner privaten Blockchain

Ich habe versucht, einen Beispielvertrag zu erstellen, wie auf der offiziellen Website beschrieben: hier

Es war erfolgreich, setSolc und getCompilers auszuführen, aber beim Kompilieren des auf dieser Website verfügbaren Vertrags treten einige Fehler auf:

var GreeterSource = 'Vertragssterblicher { Adressinhaber; Funktion sterblich () { Besitzer = msg.sender; } function kill() { if (msg.sender == owner) selfdestruct(Eigentümer); } } Vertrag Greeter ist sterblich { String Greeting; Funktion Begrüßer (Zeichenfolge _Begrüßung) öffentliche {Begrüßung = _Begrüßung; } Funktion Greet() Konstante gibt zurück (String) { Gruss zurück; } }'

nicht definiert

var GreeterCompiled = web3.eth.compile.solidity(greeterSource) Fehler: solc: Exit-Status 1

at web3.js:3119:20
at web3.js:6023:15
at web3.js:4995:36
at <anonymous>:1:23

GreeterSource = 'Vertragssterblicher { Adressbesitzer; Funktion sterblich () { Besitzer = msg.sender; } function kill() { if (msg.sender == owner) selfdestruct(Eigentümer); } } Vertrag Greeter ist sterblich { String Greeting; Funktion Begrüßer (Zeichenfolge _Begrüßung) öffentliche {Begrüßung = _Begrüßung; } Funktion Greet() Konstante gibt zurück (String) { Gruss zurück; } }' "Vertrag Sterblicher { Adressinhaber; Funktion Sterblicher () { Eigentümer = msg.sender; } Funktion töten () { Wenn (msg.sender == Eigentümer) Selbstzerstörung (Eigentümer); } } Vertrag Greeter ist sterblich { Zeichenfolge Gruß ; Funktion Greeter(String _Greeting) public { Greeting = _Greeting; } Funktion Greeter() Konstante gibt (String) { Return Greeting; } }"

GreeterCompiled = web3.eth.compile.solidity(greeterSource)

Fehler: solc: Exit-Status 1 bei web3.js:3119:20 bei web3.js:6023:15 bei web3.js:4995:36 bei :1:19

var GreeterCompiled = web3.eth.compile.solidity(greeterSource)

Fehler: solc: Exit-Status 1 bei web3.js:3119:20 bei web3.js:6023:15 bei web3.js:4995:36 bei :1:23

Antworten (1)

Überprüfen Sie zuerst Ihren Compiler.

eth.getCompilers()

und setzen Sie dann Compiler auf diese Weise:

admin.setSolc("/usr/local/bin/solc")

oder fügen Sie diese Option hinzu, wenn Sie geth starten

--solc /usr/local/bin/solc