Compilación y Despliegue
anchor build compila tu programa a SBF y regenera el IDL. anchor deploy sube el archivo .so a un clúster y actualiza el mapeo del ID del programa en Anchor.toml.
Busca en todas las páginas de la documentación
anchor build compila tu programa a SBF y regenera el IDL. anchor deploy sube el archivo .so a un clúster y actualiza el mapeo del ID del programa en Anchor.toml.
anchor build
anchor deploy --provider.cluster devnet
anchor keys syncCuándo usar esto: Cuando envías una nueva versión o incorporas un ID de programa nuevo.
# Verificar la toolchain
anchor --version # 0.32.1
solana --version # solana-cli 3.0.10
# Compilar SBF + IDL
anchor build
# Desplegar en devnet (wallet con fondos)
anchor deploy --provider.cluster devnet
# Sincronizar declare_id! y Anchor.toml desde el keypair desplegado
anchor keys sync
# Confirmar el programa en la cadena
solana program show <PROGRAM_ID> --url devnet# programs/my_program/Cargo.toml
[dependencies]
anchor-lang = "0.32.1"
anchor-spl = "0.32.1"Lo que esto demuestra:
target/deploy/*.so es el binario del programa actualizable.target/idl/<nombre>.json impulsa la generación de código del cliente.anchor keys sync alinea declare_id! con el keypair.Anchor.toml o de las banderas de la CLI.cargo build-sbf compila Rust a Solana BPF.| Paso | Comando |
|---|---|
| Financiar desplegador | solana airdrop 2 (devnet) |
| Compilar | anchor build |
| Desplegar | anchor deploy |
| Sincronizar IDs | anchor keys sync |
| Verificar | solana program show |
.so antiguo. Solución: Siempre ejecuta anchor build antes de desplegar.[provider] cluster en Anchor.toml.declare_id!. Solución: Ejecuta sync después de cada nuevo keypair del programa.| Alternativa | Usar Cuando | No Usar Cuando |
|---|---|---|
solana program deploy | Flujos de trabajo que no son de Anchor | Pierdes el paso de generación del IDL |
| Compilaciones verificables en CI | Lanzamientos auditados | Iteración rápida local |
| Surfpool solo para local | No gastar en clúster | El despliegue final aún necesita un clúster |
0.32.1 para anchor-lang, Anchor CLI y ejemplos en esta sección.
Sí. Solana CLI 3.0.10 maneja keypairs, airdrops e inspección de solana program.
En target/idl/<program>.json en tu espacio de trabajo.
Sí, pero cada campo no verificado necesita restricciones explícitas o comprobaciones del manejador.
Usa anchor test con Surfpool 0.12.0 o LiteSVM 0.6.x en CI.
El discriminador de cuenta de Anchor; no lo elimines al dimensionar space.
Sí, o publica el IDL en cadena para que los clientes tengan una fuente canónica.
Ejecuta con logs; Anchor imprime el nombre de la restricción y el índice de la cuenta.
Sí. Esta pila se dirige a validadores Agave con Solana CLI 3.0.10.
Consulta los artículos hermanos en "Relacionados" para temas más profundos sobre compilación y despliegue.
Versiones de la pila: Esta página fue escrita para Agave 4.1.1, Solana CLI 3.0.10, Anchor 0.32.1, anchor-lang 0.32.1, Rust 1.91.1, @solana/kit 7.0.0, Surfpool 0.12.0, y LiteSVM 0.6.x.
Revisado por Chris St. John·Última actualización: 19 jul 2026