Skip to content

Проблемы с установкой

В этом разделе приведены советы по устранению неполадок при установке Iroha 3. Если проблема, с которой вы столкнулись, не описана здесь, свяжитесь с нами по телефону Telegram.

Быстрые проверки

Большинство сбоев установки происходят из одного из четырех мест:

  • цепь инструментов Rust старше версии, закрепленной рабочим пространством вверх потока
  • cargo или rustc, разрешающиеся на другой установке, чем rustup;
  • отсутствующие инструменты по созданию системы, такие как компилятор C, pkg-config или CMake
  • устаревшие генерируемые фрагменты или локальные артефакты построения после изменения пересмотров источника

Начиная с расчета источника Iroha, начинайте:

bash
rustup show
cargo --version
rustc --version
cargo metadata --no-deps

Если cargo metadata не работает, исправьте локальную цепочку инструментов до запуска pnpm refresh:iroha --source /path/to/iroha, потому что обновление может вызвать Kagami для создания текущей схемы модели данных.

Устранение неполадок Rust цепочка инструментов

Иногда все не идет так, как планировалось. Особенно если у вас был rust на вашей системе некоторое время назад, но вы не обновлялись. Аналогичная проблема может возникнуть в Python: XKCD имеет известный пример того, как это может выглядеть

Python окружающая среда для устранения неполадок комикс

Проверьте версию Rust

В интересах сохранения вашего и нашего здравомыслия, убедитесь, что у вас есть правильная версия cargo в паре с правильной версией rustc. Текущее рабочее пространство вверх потока заявляет: rust-version = "1.92" и забивает канал цепочки инструментов в rust-toolchain.toml. Чтобы показать версии, сделать

bash
$ cargo -V
$ cargo 1.93.1 (...)

И тогда

bash
$ rustc --version
$ rustc 1.93.1 (...)

Если у вас есть более высокие версии, вы в порядке. Если у вас меньшие версии, Вы можете запустить следующую команду для обновления:

bash
$ rustup toolchain update stable

Проверяйте место установки

Если вы получите более низкие номера версий и обновляете цепочку инструментов, и это не сработало... давайте просто скажем, что это общая проблема, но у нее нет общих решений.

Во-первых, вы должны определить, где установлена версия, которую вы хотите использовать:

bash
$ rustup which rustc
$ rustup which cargo

Использовательские установки цепей инструментов обычно находятся в ~/.rustup/toolchains/stable-*/bin/.

bash
$ rustup toolchain update stable

и это должно решить ваши проблемы.

Проверьте исходную версию Rust

Другой вариант заключается в том, что у вас есть обновленная stable цепочка инструментов, но она не установлена как по умолчанию.

bash
$ rustup default stable

Установка версии nightly или установка конкретной версии Rust без последующего ее отключения может вызвать эту проблему.

Проверьте, есть ли другие версии Rust

Продолжая работу по устранению неисправностей в кроличьей дыре, мы могли бы использовать псевдонимы:

bash
$ type rustc
$ type cargo

Если они указывают на другие места, кроме тех, которые вы видели при запуске rustup which *, то у вас есть проблема. Обратите внимание, что добавления таких псевдонимов недостаточно:

bash
$ alias rustc "~/.rustup/toolchains/stable-*/bin/rustc"
$ alias cargo "~/.rustup/toolchains/stable-*/bin/cargo"

Внутренняя логика по-прежнему может ломаться, независимо от того, как вы организуете свои псевдонимные названия.

Проще всего удалить неиспользуемые версии.

Однако это проще сказать, чем сделать, поскольку предполагает отслеживание всех установленных и доступных вам версий rustup. Версия системного менеджера пакетов и версия, которая была установлена в стандартном месте в вашей домашней папке, когда вы запустили команду в начале этого учебника. для первой, ознакомьтесь с вашим (Линукс) руководство по распределению, apt remove rust .

bash
$ rustup toolchain list

И затем, для каждого <toolchain> (без угловых скобков, конечно):

bash
$ rustup remove <toolchain>

После удаления цепочек инструментов эта команда должна сообщить об ошибке с командой "не найдены":

bash
$ cargo --help

Эта ошибка подтверждает, что не установлена активная Rust цепочка инструментов.

bash
$ rustup toolchain install stable

Устранение неполадок Python цепь инструментов

При установке пакета колес Python с использованием pip во время настройки клиента Python, вы можете столкнуться с ошибкой, такой как: "iroha_python-*.whl не является поддерживаемым колесом на этой платформе".

Эта ошибка означает, что pip устарела, поэтому вам нужно обновить его. Прежде всего, рекомендуется проверить ваш OS на предмет обновлений и провести обновление системы.

Если это не работает, вы можете попробовать обновить pip для вашего каталога пользователей.

python -m pip install --upgrade pip

Убедитесь, что pip установлен в домашнем каталоге. Для этого запускайте whereis pip и проверьте, находится ли /home/username/.local/bin/pip среди путей. Если нет, обновляйте переменную вашей оболочки PATH.

Если проблема продолжается, пожалуйста. связаться с нами и сообщать о результатах.

python --version
python3 --version
pip --version
pip3 --version