Ошибка: не удалось запустить команду пользовательской сборки для `gmp-mpfr-sys v1.4.0`

Я пытаюсь использовать коврик, поэтому скопировал rug = "1.11.0" в свой Cargo.toml файл в папке [dependencies]. Но я получил error: failed to run custom build command for gmp-mpfr-sys v1.4.0. У меня нет ошибок с другими зависимостями, почему возникает эта ошибка и как ее исправить?

Я использую Windows 10.

Полное сообщение об ошибке:

ошибка: не удалось запустить команду пользовательской сборки для gmp-mpfr-sys v1.4.0

Причина: процесс не завершился успешно: C:\Users\kimchi\OneDrive\Desktop\Rust\target\debug\build\gmp-mpfr-sys-9f6df87a2d8ae0bb\build-script-build (код выхода: 101) --- stdout cargo: rerun-if-env-changed = GMP_MPFR_SYS_CACHE $ mkdir -p C: \ Users \ kimchi \ OneDrive \ Desktop \ Rust \ target \ debug \ build \ gmp-mpfr-sys-dcad4e240d8aac65 \ out \ try_external_doc $ cd C: \ Users \ kimchi \ OneDrive \ Desktop \ Rust \ target \ debug \ build \ gmp-mpfr-sys-dcad4e240d8aac65 \ out \ try_external_doc print_external_d '% s' // try_ext ... ›C: \ Users \ kimchi \ OneDrive \ Desktop \ Rust \ target \ debug \ build \ gmp-mpfr-sys-dcad4e240d8aac65 \ out \ try_external_doc \ try_external_doc.rs $ rustc try_external_doc.rs --emit = dep-info, метаданные ›& / dev / null $ printf '% s' #! [функция ...› C: \ Users \ kimchi \ OneDrive \ Desktop \ Rust \ target \ debug \ build \ gmp- mpfr-sys-dcad4e240d8aac65 \ out \ try_external_doc \ try_external_doc.rs $ rustc try_external_doc.rs --emit = dep-info, метаданные ›& / dev / null $ rm -r C: \ Users \ kimchi \ OneDrive \ Desktop \ Rust \ target \ debug \ build \ gmp-mpfr-sys-dcad4e240d8aac65 \ out \ try_external_doc $ mkdir -p C: \ Users \ kimchi \ OneDrive \ Desktop \ Rust \ lab1b \ target \ debug \ build \ gmp-mpf r-sys-dcad4e240d8aac65 \ out \ lib $ mkdir -p C: \ Users \ kimchi \ OneDrive \ Desktop \ Rust \ target \ debug \ build \ gmp-mpfr-sys-dcad4e240d8aac65 \ out \ include

--- поток stderr 'main' запаниковал из-за того, что 'цель Windows MSVC не поддерживается (связывание не удастся)', C: \ Users \ kimchi.cargo \ registry \ src \ github.com-1ecc6299db9ec823 \ gmp-mpfr-sys-1.4 .0 \ build.rs: 951: 9 примечание: запускать с переменной среды RUST_BACKTRACE=1 для отображения обратной трассировки


person kaMOON    schedule 11.09.2020    source источник
comment
Добро пожаловать в Stack Overflow. Чтобы мы могли дать полные и актуальные ответы, отредактируйте вопрос, включив в него полное сообщение об ошибке. Здесь мы можем только догадываться о первопричине.   -  person Jmb    schedule 11.09.2020
comment
Ящики, имя которых заканчивается на -sys, обычно являются интерфейсами Rust для библиотек, написанных на C, или включают компонент, написанный на C. Ошибка, о которой вы сообщаете, связана с компонентом C, но я не могу сказать больше без полной ошибки.   -  person Jmb    schedule 11.09.2020


Ответы (1)


gmp-mpfr-sys недоступен в Windows при использовании серверной части компилятора MSVC по умолчанию (см. Windows MSVC target is not supported (linking would fail) в сообщении о панике).

Сначала вам необходимо установить MSYS2.

Затем в MSYS2 установите необходимые пакеты:

pacman -S pacman-mirrors
pacman -S diffutils make mingw-w64-x86_64-gcc

Создайте свой ящик внутри среды MSYS2 с cargo.

person Oleksii Filonenko    schedule 11.09.2020