Create programs on X1
Basic setup for creating programs on X1 with Anchor
You can also use playground.
This section covers the steps to set up your local environment for X1 development.
Quick installation
On Linux, run this single command to install all dependencies.
curl --proto '=https' --tlsv1.2 -sSfL https://raw.githubusercontent.com/solana-developers/solana-install/main/install.sh | bashAfter installation, you should see output similar to the following:
Installed Versions:
Rust: rustc 1.84.1 (e71f9a9a9 2025-01-27)
Solana CLI: solana-cli 2.0.26 (src:3dccb3e7; feat:607245837, client:Agave)
Anchor CLI: anchor-cli 0.30.1
Node.js: v23.7.0
Yarn: 1.22.1If the quick installation command above doesn't work, please refer to instructions below to install each dependency individually.
Install needed libraries
sudo apt-get update && sudo apt-get upgrade && sudo apt-get install -y pkg-config build-essential libudev-dev libssl-dev npmsudo npm install -g yarnInstall the Solana CLI(Linux)
The Solana CLI provides all the tools required to build and deploy Solana programs.
Install the Solana CLI tool suite using the official install command:
sh -c "$(curl -sSfL https://release.anza.xyz/stable/install)"You can replace stable with the release tag matching the software version of your desired release (i.e. v2.0.3), or use one of the three symbolic channel names: stable, beta, or edge.
If it is your first time installing the Solana CLI, you may see the following message prompting you to add a PATH environment variable:
Close and reopen your terminal to apply the PATH changes or run the following in your existing shell:
export PATH="/Users/test/.local/share/solana/install/active_release/bin:$PATH"If you are using a Linux or WSL terminal, you can add the PATH environment variable to your shell configuration file by running the command logged from the installation or by restarting your terminal.
export PATH="$HOME/.local/share/solana/install/active_release/bin:$PATH"To verify that the installation was successful, check the Solana CLI version:
solana-cli 2.0.26 (src:3dccb3e7; feat:607245837, client:Agave)To later update the Solana CLI to the latest version, you can use the following command:
agave-install updateCreate keypair
Using command solana-keygen to generate a new wallet. It will generate a 12-word seed (aka. mnemonic, or recovery) phrase. Save it safe.
solana-keygen new --no-passphrase -o ~/.config/solana/id.jsonsolana config set -k ~/.config/solana/id.jsonInstall rust and cargo
curl https://sh.rustup.rs -sSf | sh
source $HOME/.cargo/envUse the latest stable rust version:
rustup updateCheck version:
cargo -VOn Linux systems you may need to install libssl-dev, pkg-config, zlib1g-dev, protobuf etc.
sudo apt-get update
sudo apt-get install libssl-dev libudev-dev pkg-config zlib1g-dev llvm clang cmake make libprotobuf-dev protobuf-compilerRust installation link for reference:
Install anchor
Install avm using Cargo. Note this will replace your anchor binary if you had one installed:
cargo install --git https://github.com/coral-xyz/anchor avm --locked --forceInstall the latest version of the CLI using avm, and then set it to be the version to use:
avm install latest
avm use latestVerify installation:
anchor --versionAnchor installation link for reference:
Create and deploy a program with Anchor
Initialise a new project
anchor init <project name>cd <project name>Display Anchor.toml
cat Anchor.tomlprograms: <project name> = "program ID" cluster = localnet wallet = path to wallet scripts: how yarn is used to run a test
Change provider to X1 Testnet RPC
nano Anchor.tomlChange localnet to: https://rpc.testnet.x1.xyz
Set to X1 testnet
solana config set -u https://rpc.testnet.x1.xyzTo verify set network, use:
solana config getFund wallet
Verify received airdrop:
solana balanceBuild project
anchor buildDeploy program
anchor testConfirm test transaction
solana confirm -v <tx hash>Or:
Modify program
cd programs/<project name>/srcnano lib.rsGo back to original <project name> directory, before building and deploying program again.
If error
The byte size is pre-set for initial deployment. You can increase byte size by:
solana program extend <program id> 15000Tutorial
Last updated

