Solc --version: comando no encontrado

Estoy tratando de usar solc sin éxito.

Descargo solc con npm install solcpero cuando ejecuto solc --versionla salida de la consola es:

command not found.

Si enumero paquetes npm list, puedo ver solc@0.3.5.

¿Qué ocurre?

Respuestas (7)

Debe agregar solc a PATH. Escriba which solc para obtener la ubicación donde está instalado el compilador solidity y agréguelo a PATH. Si solo desea verificar la versión, navegue hasta la ubicación donde está instalado solidity y luego escriba el comando solc --version .

no hay salida con la que solc intento también npm install -g solc
¿Qué resultado obtuviste para el comando which solc ?
nada pippo-MacBook-Pro:~ pippo$ which solc pippo-MacBook-Pro:~ pippo$
Prueba esto y comprueba si funciona.
Ahora parece estar bien. Descargo cpp-ethereum end en la consola geth configurada para admin.setSolc() cuya salida solc . Entonces, solc siempre requiere cpp-ethereum, ¿no es independiente?
Solidity no requiere un cliente ethereum. Se puede instalar una versión independiente para desarrollar y probar contratos inteligentes. Pero es una función integrada en los clientes oficiales de Ethereum. Verifique esto para más detalles.
Ok, pero con npm install solc ** --version** no genera nada, ¿cuál solc también, por qué? Gracias por la respuesta
Esta no es una buena respuesta. No aborda por qué npm install solcno instala una solcherramienta global o cómo instalar un compilador en su lugar.

Si ha instalado a través denpm install -g solc

Así es como lo usa.solcjs --version

no dice qué está mal, que es que sin -g el comando no está instalado en la ruta del usuario. La otra solución es que el usuario actualice su ruta. Esto es realmente un problema de npm...
Un poco molesto... ¿Puedo recuperar mis 15 minutos? Seguro que lo instalas solcy luego lo ejecutas solcjs... Por favor.

instalar el compilador solc usando

npm install -g solc

instala el compilador en un ámbito global y lo usa desde cualquier ubicación.

Para comprobar la versión del compilador instalado

solcjs --versión

es devolver algo como "0.4.23+commit.124ca40d.Emscripten.clang"

más detalles están disponibles aquí .

npm install solcactualmente no instala un compilador disponible globalmente. El solcpaquete npm son solo enlaces de Javascript para usar en un módulo de Javascript.

Después de luchar con esto durante un tiempo, actualmente parece que no hay una forma conveniente de instalar un compilador de Solidity independiente, al menos en Mac OS X.

Ampliando @graup, he reinstalado solc desde mi directorio de contratos de cada nuevo proyecto de contrato, lo que me ha funcionado:

cd contracts
npm install solc
npm install ethereumjs-testrpc web3@0.20.1

node

Web3 = require('web3')
web3 = new Web3(new Web3.providers.HttpProvider("http://localhost:8545"));

code = fs.readFileSync('MyContrat.sol').toString()
solc = require('solc')
compileCode = solc.compile(code)

npm i solc@version

Al usar este comando, puede realizar la instalación de la solidez de su versión requerida.

Solo haz:

solcjs --version

E incluso al compilar hacer solcjs.