Что вызывает ложную ошибку «<зависимость> должна быть доступна в формате rlib, но не найдена в этой форме»?

При запуске cargo check с новым каталогом target/ я получил эту ошибку:

crate `hyper` required to be available in rlib format, but was not found in this form

Никакой другой информации об этом предоставлено не было, а другие зависимости выше и ниже гипер были успешно проверены. Повторный запуск cargo check дал ту же ошибку и ничего не проверял повторно. Я знаю, что Hyper — это библиотека Rust, которая обязательно должна быть доступна как rlib. Внесение изменений в локальный пакет ничего не исправило. При этом использовался неизмененный файл Cargo.lock, который работал раньше.

Почему это так неудачно?

Я нашел эту проблему с грузом, но она была давно и решена.

kmdreko 03.06.2024 02:10
Почему Python в конце концов умрет
Почему Python в конце концов умрет
Последние 20 лет были действительно хорошими для Python. Он прошел путь от "просто языка сценариев" до основного языка, используемого для написания...
1
1
66
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий
cargo clean

кажется, исправил ошибку. Я нашел подобный пост на форуме пользователей Rust, где симптомы и решение были такими же.

Похоже, это был ложный сбой артефакта сборки. Возможно, он не записал файл .rlib? Может быть, какие-то другие метаданные потерялись? Как я уже сказал, когда оно впервые появилось, другого сообщения об ошибке не было, и с тех пор, как я cargo clean, я больше не могу исследовать состояние каталога target/.

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