Khala parachain repo.
cargo build --profile production
cargo build --profile testnet
cargo build --profile production -p khala-parachain-runtime
Enable on-chain-release-build would reduce ~100 KB
cargo build --profile production --features on-chain-release-build -p khala-parachain-runtime
You have to install LLVM from Homebrew because Xcode bundled doesn't have WASM target
brew install llvm
As formula note shows binaries locate at /opt/homebrew/opt/llvm/bin
(You can revisit it via brew info llvm, beware Intel Mac has different location)
Make alias for ar and ranlib to ensure use custom installed LLVM instead of Xcode bundled
cd /opt/homebrew/opt/llvm/bin
ln -s llvm-ar ar
ln -s llvm-ar ranlib
NOTE: You have to re-do this step after you upgrade or reinstall LLVM
Before compiling khala-node, add custom installed LLVM to $PATH
export PATH="/opt/homebrew/opt/llvm/bin:$PATH"
- Build
cargo build --release- Prepare binaries
You can get latest Polkadot Linux release from https://github.com/paritytech/polkadot/releases
For macOS, you have to build from source
cp <path-to-polkadot> ./polkadot-launch/bin/
cp ./target/release/khala ./polkadot-launch/bin/- Start a local test net
cd polkadot-launch
yarn
yarn start ./thala_dev.config.json- (Optional) Inject session key.
Only required for
*_local.config.json
Please make sure to use the correct session key json file.
cd scripts/js
yarn
KEY_FILE=session_key.json.example node insert_session_key.js