Recibo el siguiente error de solc
:
Error: Source file requires different compiler version (current compiler is 0.4.11-develop.2017.6.22+commit.68ef5810.Darwin.appleclang - note that nightly builds are considered to be strictly less than the released version
pragma solidity 0.4.11;
^---------------------^
Para construir solc
, yo:
git checkout v0.4.11
que obtuvo con éxito el archivo tag/v0.4.11
. 3. completó el proceso de construcciónme aseguré de que solc
estaba en mi camino
solc --version
solc, the solidity compiler commandline interface
Version: 0.4.11-develop.2017.6.22+commit.68ef5810.Darwin.appleclang
Entonces, esa es la versión v0.4.11, pero el número de versión tiene la fecha de hoy. ¿Es esa la fuente del error?
El sistema es macOS Sierra 10.12.5.
Resolví mi problema por RTFM. Los usuarios de Mac deben instalar usando Homebrew.
Desde Instalando Solidity
brew update brew upgrade brew tap ethereum/ethereum brew install solidity brew linkapps solidity
Si necesita una versión específica de Solidity, puede instalar una fórmula Homebrew directamente desde Github.
Para instalar una versión específica de Solidity, use:
npm install -g solc@0.4
Esto instalará el compilador de solidity 0.4.26 (más reciente en esa versión), globalmente.
o
npm install -g solc@0.5
Después
$ solcjs --version
> 0.4.26+commit.4563c3fc.Emscripten.clang
solcjs
, no solc
. Este último tiene bastantes características interesantes en la línea de comandos que faltan en solc-js.solcjs
también descargue la solc
versión exacta: github.com/ethereum/solc-js/blob/master/wrapper.js#L331 . Entonces puede ser útil
Moshe Beeri
asimétrico