Port of the Solidity smart-contract compiler generating TVM bytecode for TVM compatible blockchains (Everscale, Venom, Gosh, TON). Please refer to upstream README.md for information on the language itself.
Original Instructions about how to build and install the Solidity compiler can be found in the Solidity documentation.
Documentation is available at README.md (RECOMMENDED).
git clone https://github.com/tonlabs/TON-Solidity-Compiler
cd TON-Solidity-Compiler
sh ./compiler/scripts/install_deps.sh
mkdir build
cd build
cmake ../compiler/ -DCMAKE_BUILD_TYPE=Release
cmake --build . -- -j8
Make other toolchain utilities aware of the language runtime library location via an environment variable: specify path to stdlib_sol.tvm
.
sh ./compiler/scripts/install_lib_variable.sh
Install Visual Studio Build Tools 2019, Git bash, cmake. Run Developer PowerShell for VS 2019
git clone https://github.com/tonlabs/TON-Solidity-Compiler
cd TON-Solidity-Compiler
compiler\scripts\install_deps.ps1
mkdir build
cd build
cmake -DBoost_DIR="..\compiler\deps\boost\lib\cmake\Boost-1.77.0" -DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded ..\compiler
cmake --build . --config Release -- /m
To facilitate work with other toolchain utilities add path to stdlib_sol.tvm
into environment variable TVM_LINKER_LIB_PATH
.
- Code samples in TVM Solidity
- TVM linker repository
- tonos-cli command line interface for TVM compatible blockchains
- Example of usage
tonos-cli
for working (deploying, calling and etc.) with TVM compatible blockchains can be found there: Write smart contract in Solidity - Changelog