SOLANA network programming

Getting started: https://solana.com/news/getting-started-with-solana-development
Docs: https://docs.solana.com
Terminology: https://docs.solana.com/terminology
Coin: SOL
Wallet: https://docs.solana.com/wallet-guide
– App version: https://docs.solana.com/wallet-guide/apps
– Web version: https://docs.solana.com/wallet-guide/web-wallets
– Extension: https://phantom.app/
– CLI: https://docs.solana.com/wallet-guide/cli

Solana cluster explorers:

  • http://explorer.solana.com/
  • http://solanabeach.io/
  • https://solscan.io/
    Token program (Token on Solana blockchain): https://spl.solana.com/token
    Environment setup example: https://solongwallet.medium.com/solana-development-tutorial-environment-setup-2649cb81305

For developer:

    Install node (v14 recommended)
    Install npm
    Install Rust v1.56.1 or later from https://rustup.rs/
    Install Solana v1.8.2 or later from https://docs.solana.com/cli/install-solana-cli-tools
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

=> rustup --version
sh -c "$(curl -sSfL https://release.solana.com/v1.9.0/install)"

=> solana --version

Fix Solana on Mac M1

  • You cannot start solana local cluster with “solana-test-validator”
$ solana-test-validator
Ledger location: test-ledger
Log: test-ledger/validator.log
 
[1]    35955 illegal hardware instruction  solana-test-validator
  • Uninstall rust and solana. Open terminal (without Rosetta mode)
rm -rf /Users/USERNAME/.local/share/solana/
rustup self uninstall
/usr/sbin/softwareupdate --install-rosetta --agree-to-license
  • Clone terminal app to new one -> app info -> check to “Open using Rosetta
  • Now install Rust and Solana on Rosetta Terminal
  • Install rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source ~/.bash_profile
arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
arch -arm64 brew install [email protected]
arch -arm64 brew install coreutils
nano ~/.cargo/config

> file content
[target.x86_64-apple-darwin]
rustflags = [
  "-C", "link-arg=-undefined",
  "-C", "link-arg=dynamic_lookup",
]

[target.aarch64-apple-darwin]
rustflags = [
  "-C", "link-arg=-undefined",
  "-C", "link-arg=dynamic_lookup",
]
  • Install solana
cd /Volumes/Data/_ProgramFiles/
git clone https://github.com/solana-labs/solana.git
cd solana
cargo build
./scripts/cargo-install-all.sh .

# Update .bash_profile
export PATH="/Volumes/Data/_ProgramFiles/solana"/bin:"$PATH"
source ~/.bash_profile
cargo install --git https://github.com/project-serum/anchor --tag v0.19.0 anchor-cli --locked

Test/ Play around.

You can run on any Terminal now (dont care Rosetta mode)

anchor --version
solana --version
solana-test-validator

You now can try all steps of this example: https://github.com/solana-labs/example-helloworld

Leave a Reply

Your email address will not be published.Required fields are marked *