# build ## TON ### Setup ```shell sudo apt update sudo apt install -y build-essential cmake clang openssl libssl-dev zlib1g-dev gperf wget git curl libreadline-dev ccache libmicrohttpd-dev ninja-build libsecp256k1-dev libsodium-dev pkg-config export CC=$(which clang) export CXX=$(which clang++) export CCACHE_DISABLE=1 ``` ### all ```shell rm -fr build && mkdir build && cd build cmake -GNinja -DCMAKE_BUILD_TYPE=Release -DPORTABLE=1 -DTON_ARCH= -DCMAKE_CXX_FLAGS="-mavx2" .. ninja storage-daemon storage-daemon-cli fift func tonlib tonlibjson tonlib-cli validator-engine lite-client pow-miner validator-engine-console generate-random-id json2tlo dht-server http-proxy rldp-http-proxy adnl-proxy create-state create-hardfork mkdir -p artifacts cp storage/storage-daemon/storage-daemon storage/storage-daemon/storage-daemon-cli crypto/fift crypto/tlbc crypto/func crypto/create-state validator-engine-console/validator-engine-console tonlib/tonlib-cli tonlib/libtonlibjson.so.0.5 http/http-proxy rldp-http-proxy/rldp-http-proxy dht-server/dht-server lite-client/lite-client validator-engine/validator-engine utils/generate-random-id utils/json2tlo adnl/adnl-proxy artifacts chmod +x artifacts/* cp -f artifacts/* ~/bin ``` ### add-tlb-get-rust ```shell export DISABLE_CPP_OUTPUT=1 git clone -b add-tlb-get-rust git@github.com:ever-guild/ton.git cd ton rm -fr build && mkdir build && cd build cmake -GNinja -DCMAKE_BUILD_TYPE=Release -DPORTABLE=1 -DTON_ARCH= -DCMAKE_CXX_FLAGS="-mavx2" .. ninja tonlib-cli mkdir -p artifacts cp crypto/tlbc artifacts chmod +x artifacts/* cp artifacts/tlbc ~/bin/tlbc-rust ```