https://github.com/everx-labs/tvm-solidity-compiler
Solidity compiler for TVM
https://github.com/everx-labs/tvm-solidity-compiler
blockchain compiler everos everscale smart-contracts solidity tvm venom-blockchain venom-developer-program
Last synced: about 1 month ago
JSON representation
Solidity compiler for TVM
- Host: GitHub
- URL: https://github.com/everx-labs/tvm-solidity-compiler
- Owner: everx-labs
- License: gpl-3.0
- Created: 2019-11-01T08:47:22.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2025-02-12T19:48:24.000Z (3 months ago)
- Last Synced: 2025-03-28T21:06:31.926Z (about 1 month ago)
- Topics: blockchain, compiler, everos, everscale, smart-contracts, solidity, tvm, venom-blockchain, venom-developer-program
- Language: C++
- Homepage:
- Size: 6.9 MB
- Stars: 126
- Watchers: 12
- Forks: 73
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
- Changelog: Changelog.md
- License: LICENSE
Awesome Lists containing this project
README
# The TVM Solidity compiler
[](./LICENSE)
[](https://everscale.network/)Port of the Solidity smart-contract [compiler](https://github.com/ethereum/solidity) generating TVM bytecode for TVM compatible blockchains (Everscale, Venom, Gosh, TON). Please refer to upstream README.md for information on the language itself.
## TVM Solidity API reference
[API documentation is here](https://github.com/everx-labs/TVM-Solidity-Compiler/blob/master/API.md)
## Build and Install
### Sold driver
We recommend using `sold` to compile smart-contracts. Documentation is available at [README.md](https://github.com/everx-labs/TVM-Solidity-Compiler/blob/master/sold/README.md).
### Building compiler
Original Instructions about how to build and install the Solidity compiler can be found in the [Solidity documentation](https://solidity.readthedocs.io/en/latest/installing-solidity.html#building-from-source).
#### Ubuntu Linux
```shell
git clone https://github.com/everx-labs/TVM-Solidity-Compiler
cd TVM-Solidity-Compiler
sh ./compiler/scripts/install_deps.sh
mkdir build
cd build
cmake ../compiler/ -DCMAKE_BUILD_TYPE=Release
cmake --build . -- -j8
```#### Windows 10
Install Visual Studio Build Tools 2019, Git bash, cmake.
Run Developer PowerShell for VS 2019```shell
git clone https://github.com/everx-labs/TVM-Solidity-Compiler
cd TVM-Solidity-Compiler
compiler\scripts\install_deps.ps1
mkdir build
cd build
cmake -DBOOST_ROOT="..\compiler\deps\boost\" -DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded ..\compiler
cmake --build . --config Release -- /m
```## Links
* [Ever assembler and disassembler](https://github.com/everx-labs/ever-assembler)
* [Code samples](https://github.com/everx-labs/samples/tree/master/solidity) in TVM Solidity
* [ever-cli](https://github.com/everx-labs/ever-cli) command line interface for TVM compatible blockchains
* Example of usage `ever-cli` for working (deploying, calling etc.) with TVM compatible blockchains can be found there: [Write smart contract in Solidity](https://docs.ton.dev/86757ecb2/p/950f8a-write-smart-contract-in-solidity)
* [Changelog](./Changelog.md)## License
[GNU GENERAL PUBLIC LICENSE Version 3](./LICENSE)