Как развернуть программу в Solana - Solana/Rust

Я пытаюсь запустить программу HelloWorld solana. Я клонировал это репо. Я начал проект с

      solana-test-validator

Я побежал npm install а затем смог построить проект ржавчины с

      npm run build:program-rust

Я вижу .so файл в каталоге /dist/program/helloworld.so. Когда я пытаюсь развернуть программу на solana, я запускаю

      solana program deploy dist/program/helloworld.so

И вот ошибка, которую я получаю

      Error: Dynamic program error: No such file or directory (os error 2)

Он не может найти файл, но я убедился, что он там есть. Я пробовал полный путь и получаю ту же ошибку. Я пытался clean и переустановите библиотеки, но это не помогло.

Что еще мне попробовать?

3 ответа

Пара вещей, в которых нужно убедиться:

  1. Локальный хост (в отличие от devnet) устанавливается через solana config set --url localhost
  2. Вы создали новую пару ключей solana-keygen new

Не забудьте создать новый кейген solana и использовать solana configget для проверки файла конфигурации. (Необязательно) Вы можете использовать pubkey solana-keygen и проверку solana-keygen для проверки своего кошелька. Установите пару ключей, если расположение кейгена неверно. Установите развернутый URL-адрес на devnet. Airdrop 2 соля на ваш кошелек. Используйте баланс solana, чтобы проверить правильность настройки пары ключей/кошелька.

  1. solana-keygen новый --outfile /root/solana/my_wallet.json
  2. конфиг соланы получить
  3. набор настроек solana --keypair
  4. набор настроек solana --url https://api.devnet.solana.com
  5. солана аирдроп 2
  6. солана баланс (адрес)

Надеюсь, это поможет вам настроить файл.

Помимо конкретных советов, изложенных в другом ответе, может быть также полезно попробовать Solana Playground (бета) на основе браузера Solana IDE. Это делает весь процесс более плавным.

Функции:

  • Новый проект (родной, Anchor, Seahorse/Python)
  • Автоматический аирдроп
  • Базовое редактирование
  • Импорт Экспорт
  • Строить
  • Развертывание
  • Встроенный кошелек (или вы также можете использовать Phantom)
  • Настройки сети

Надеюсь, вам это пригодится!

Другие вопросы по тегам