Устранение неполадок: от установки до реализации

Изолируйте неудачные шаги и сузьте причину с помощью воспроизводимой информации.

Wave Foundation

Во-первых, различайте стадии неудачи.

наблюдаемое явление Сначала проверьте следующее действие
wavec Команда не найдена PATH и расположение исполняемого файла. Запустите абсолютный путь и установите PATH.
Не могу найти файлы, необходимые для запуска В папке установки отсутствуют какие-либо файлы? Распакуйте и установите весь пакет заново
std import Ошибка wavec print std-path Соответствие: Установите std или укажите --std-root
Расположение источника и вывод ошибок типа wavec check main.wave Исправьте первую ошибку и проверьте еще раз
Сбой сборки для других целей OS·CPU Указан target и целевая среда. Настройки кросс-сборки Подтвердить
Выполнение завершается сбоем после успешной сборки код выхода, ввод, рабочий каталог Среда выполнения и проверка ошибок API

Небольшой диагностический пример

Вот вся программа, которая намеренно неверна:

fun main() {
    var count: i32 = 1;
    println("{}", missing);
}

wavec check main.wave должно указывать на необъявленное имя missing. Измените имя переменной на count, затем проверьте и запустите снова. Сосредоточьтесь на файле, местоположении и причине, а не на всем диагностическом тексте. Последующие ошибки могут быть результатом первоначальной ошибки.

Когда исполняемый файл дает сбой

В оболочке Linux/macOS код выхода проверяется сразу после выполнения как echo $?, а в PowerShell — $LASTEXITCODE. Ошибка ввода и явное return 1 не являются одной и той же причиной. Неверные значения времени выполнения для количества смен или реального преобразования могут вызвать trap. Посмотрите правила эксплуатации.

На относительные пути к файлам влияет рабочий каталог исполняемого файла, а не расположение исходного файла. Не рассматривайте ошибку чтения файла как строку длиной 0, сначала проверьте возвращаемую ошибку. Ошибки сетевого подключения проверяются посредством поиска адреса, ожидания сервера, разрешений и тайм-аутов.

Информация, необходимая для сообщения о проблеме

  1. wavec --version Вывод и точная команда.
  2. target. указывается отдельно от хоста OS·архитектура
  3. Исходный код компилятора, используемый с выбранным путем std.
  4. Минимальный исходный код, входные данные и необходимые файлы для воспроизведения проблемы.
  5. Ожидаемые результаты, фактические результаты, коды диагностики и выхода.

Пароли, токены и содержимое личных файлов удаляются. Если проблема исчезнет, ​​когда вы сократите минимальный пример, подсказкой станет последний удаленный элемент. --error-format=json доступен, когда инструмент собирает диагностические данные.

Установка · команда компилятора · Цели и ссылки