在 Solana 鏈上建立代幣的步驟包括:取得 Solana 錢包、建立帳戶、取得 SOL、使用 Anchor Framework、建立專案、定義代幣程式、部署程式、建立 Token、鑄造代幣和分配代幣。具體步驟為:取得 Solana 錢包(Phantom 或 Solflare)。建立或匯入 Solana 帳戶。取得測試網 SOL。安裝 Anchor Framework。建立新的 Anchor 專案。定義代幣程序。部署程式。創建 Token。鑄造代幣。分配代幣。
在Solana 鏈上建立新代幣
步驟:
anchor init
建立一個新的 Anchor 專案。 programs/my_token/src/lib.rs
中定義代幣程式。 anchor build
和 anchor deploy
部署程式。 anchor new
建立 Token 實例。 approve
和 transfer
功能鑄造代幣。 詳細步驟:
取得Solana 錢包:
建立專案:
cargo install --git https://github.com/project-serum /anchor anchor-cli
。 anchor init my_token
。 定義代幣程式:
programs/my_token/src/lib.rs
中加入下列程式碼: #[program] pub mod my_token { use anchor_lang::prelude::*; #[state] #[derive(Accounts)] pub struct CreateToken { #[account(init, payer = authority, space = 8 + 96)] pub token: AccountInfo, #[account(mut)] pub authority: Signer, pub system_program: Program, pub token_program: Program, } impl CreateToken { pub fn new(ctx: Context<self>, name: String, symbol: String, amount: u64) -> Result { let token_account = &mut ctx.accounts.token; let authority = &ctx.accounts.authority; let token_program = &ctx.accounts.token_program; let create_token_ix = anchor_lang::solana_program::system_instruction::create_account( &authority.key(), &token_account.key(), ctx.accounts.system_program.key(), &token_program.key(), 8 + 96, ); let init_token_ix = anchor_lang::solana_program::token::instruction::initialize_mint( &token_program.key(), &token_account.key(), &authority.key(), None, 0, ); let mint_ix = anchor_lang::solana_program::token::instruction::mint_to( &token_program.key(), &token_account.key(), &authority.key(), None, amount ); anchor_lang::solana_program::program::invoke( &token_program.to_account_info(), &[ create_token_ix, init_token_ix, mint_ix, ], &[ authority.to_account_info(), token_account.to_account_info(), token_program.to_account_info(), system_program.to_account_info() ], )?; Ok(()) } } }</self>
部署程式:
anchor build
。 anchor deploy
。 建立 Token:
anchor new
建立 Token 實例:anchor new my_token
。 鑄造代幣:
#使用approve
和transfer
功能鑄造代幣:
anchor approve my_token --amount 100 anchor transfer my_token --amount 10 --recipient <recipient_address></recipient_address>
分配代幣:
#使用transfer
功能將代幣分配給其他帳號:
anchor transfer my_token --amount 10 --recipient <recipient_address></recipient_address>
以上是如何在solana鏈創建新代幣的詳細內容。更多資訊請關注PHP中文網其他相關文章!