Merge pull request #3603 from ethereum/docs-solcjs

Fix links and clarify the solc-js section
This commit is contained in:
chriseth 2018-02-27 10:32:48 +01:00 committed by GitHub
commit bffed2c7e4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 4 deletions

View File

@ -29,18 +29,20 @@ Further options on this page detail installing commandline Solidity compiler sof
on your computer. Choose a commandline compiler if you are working on a larger contract
or if you require more compilation options.
.. _solcjs:
npm / Node.js
=============
Use `npm` for a convenient and portable way to install `solcjs`, a Solidity compiler. The
`solcjs` program has less features than all options further down this page. Our
`Using the compiler <using-the-compiler.html>` documentation assumes you are using
:ref:`commandline-compiler` documentation assumes you are using
the full-featured compiler, `solc`. So if you install `solcjs` from `npm` then you will
stop reading the documentation here and then continue to <https://github.com/ethereum/solc-js>,
stop reading the documentation here and then continue to `solc-js <https://github.com/ethereum/solc-js>`_.
Note: The `solc-js <https://github.com/ethereum/solc-js>` project is derived from the C++
Note: The solc-js project is derived from the C++
`solc` by using Emscripten. `solc-js` can be used in JavaScript projects directly (such as Remix).
Please refer to the `solc-js <https://github.com/ethereum/solc-js>`_ repository for instructions.
Please refer to the solc-js repository for instructions.
.. code:: bash

View File

@ -9,6 +9,9 @@ Using the compiler
Using the Commandline Compiler
******************************
.. note::
This section doesn't apply to :ref:`solcjs <solcjs>`.
One of the build targets of the Solidity repository is ``solc``, the solidity commandline compiler.
Using ``solc --help`` provides you with an explanation of all options. The compiler can produce various outputs, ranging from simple binaries and assembly over an abstract syntax tree (parse tree) to estimations of gas usage.
If you only want to compile a single file, you run it as ``solc --bin sourceFile.sol`` and it will print the binary. Before you deploy your contract, activate the optimizer while compiling using ``solc --optimize --bin sourceFile.sol``. If you want to get some of the more advanced output variants of ``solc``, it is probably better to tell it to output everything to separate files using ``solc -o outputDirectory --bin --ast --asm sourceFile.sol``.