Panduan cepat
Deploy kontrak Solidity pertama Anda di Rome dalam waktu kurang dari 5 menit.
Deploy kontrak Solidity pertama Anda di Rome dalam waktu kurang dari 5 menit. Panduan ini ditujukan untuk Martius, rantai testnet publik; langkah yang sama berlaku pada Hadrian (devnet) dengan menukar nilai jaringan.
Prasyarat
1. Tambahkan Martius ke MetaMask
Tambahkan secara manual (Setelan → Jaringan → Tambahkan jaringan):
Nama Jaringan
Rome Martius
URL RPC
https://martius.testnet.romeprotocol.xyz/
Chain ID
121214
Simbol Mata Uang
USDC
Penjelajah Blok
https://via-martius.testnet.romeprotocol.xyz/
2. Isi dana dompet Anda
Gas dibayar dalam token gas SPL milik chain (USDC di Martius). Ada dua cara untuk mendapatkannya:
Dari Solana — dapatkan SOL devnet dari faucet Solana (setel dompet Solana Anda ke Devnet), lalu buka Aplikasi Rome, hubungkan kedua dompet, lalu bungkus ke token gas.
Dengan bridging masuk — mint USDC uji di Ethereum Sepolia dari faucet Circle, lalu bawa ke Rome dengan Jembatan Rome (CCTP). Anda akan memerlukan sedikit ETH Sepolia untuk transaksi di sisi sumber — lihat Faucet untuk setiap faucet.
Berapa banyak? Deploy kontrak di Rome membawa biaya akun di sisi Solana, jadi perkiraan gas jauh lebih tinggi daripada intuisi ala Ethereum — kontrak quickstart memperkirakan ~20M gas dan biayanya sekitar 0.2 USDC untuk di-deploy, dan dompet melakukan pengecekan awal sekitar dua kali perkiraan. Isi setidaknya 0.5 USDC gas; 1 USDC memberi ruang aman yang nyaman.
Jika deposit di sisi Solana gagal dengan peringatan "insufficient SOL" meskipun dompet terisi, setel dompet Solana Anda ke Testnet Mode / Devnet (lihat FAQ).
3. Buat proyek Hardhat
Terima default saat diminta — Hardhat 3, direktori saat ini, dan templat TypeScript + Node Test Runner + viem — lalu biarkan ia memasang dependensi. Templat ini menyertakan contoh Counter kontrak beserta pengujiannya; itu tidak mengganggu panduan ini.
4. Konfigurasikan Hardhat untuk Rome
Edit file yang dihasilkan hardhat.config.ts dan tambahkan jaringan Rome di dalam defineConfig({ ... }):
configVariable("PRIVATE_KEY") diambil dari lingkungan, jadi ekspor private key MetaMask Anda:
(Untuk apa pun selain kunci sekali pakai, lebih baik gunakan keystore terenkripsi yang disertakan dengan toolbox: npx hardhat keystore set PRIVATE_KEY.)
5. Tulis kontrak
Buat contracts/HelloRome.sol:
6. Deploy
Buat scripts/deploy.ts:
Deploy ke Martius:
Keluaran yang diharapkan (alamat Anda akan berbeda):
Buka alamat yang di-deploy di penjelajah untuk melihat instruksi Solana di balik transaksi Anda. Kontrak Solidity Anda sekarang berjalan di Solana.
Selanjutnya
Deploy Solidity — pendalaman deployment Hardhat dan Foundry
Panggil Solana dari EVM — panggil program Solana dari Solidity via CPI
Arsitektur — bagaimana Rome mengeksekusi EVM di dalam Solana
Kesalahan Umum
dana tidak mencukupi
Token gas tidak cukup — dompet melakukan pengecekan awal ~2× perkiraan gas
Isi setidaknya 0.5 USDC gas (lihat langkah 2) melalui Aplikasi Rome atau bridge
nonce terlalu rendah
Ketidaksesuaian nonce transaksi
Atur ulang akun (MetaMask → Setelan → Lanjutan → Hapus aktivitas)
eksekusi dibatalkan
Eksekusi kontrak gagal
Periksa logika kontrak; gunakan eth_call untuk men-debug
Batas waktu koneksi
RPC tidak dapat dijangkau
Verifikasi URL RPC
Terakhir diperbarui
Apakah ini membantu?