Невозможно скомпилировать библиотеку CRC в ржавчине include! (Concat! (Env! ("OUT_DIR"), "/crc16_constants.rs")); - PullRequest
0 голосов
/ 11 мая 2018

Недавно я нашел очень интересную библиотеку под названием Exonum, которая использует библиотеку CRC .

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

error: couldn't read "C:\\Users\\XXXXXX\\OUTDIR/crc16_constants.rs": The 
system cannot find the file specified. (os error 2)
 --> src\crc16.rs:8:1
  |
8 | include!(concat!(env!("OUT_DIR"), "/crc16_constants.rs"));
  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: Could not compile `crc`.

Я попытался установить out_dir, но это не помогло. Кажется, в этой библиотеке есть файл build.rs, который должен экспортировать этот файл, но он не делает этого перед сборкой. У кого-нибудь есть такая же проблема?

EDIT1:

После того, как в комментариях я удалил переменную окружения OUT_DIR и изменил строку в источнике, проблема все еще остается. Вывод из компиляции выглядит следующим образом:

error: environment variable `OUT_DIR` not defined
 --> crc16.rs:8:18
  |
8 | include!(concat!(env!("OUT_DIR"), "\\crc16_constants.rs"));
  |                  ^^^^^^^^^^^^^^^

error: couldn't read "0\\crc16_constants.rs": The system cannot find the file specified. (os error 2)
 --> crc16.rs:8:1
  |
8 | include!(concat!(env!("OUT_DIR"), "\\crc16_constants.rs"));
  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: Could not compile `crc`.

1 Ответ

0 голосов
/ 11 мая 2018

Как указано в комментариях, решение было просто обновить Rust и проверить PATH для более старых cargo.exe.

...