`проверка размера mp_limb_t... 0` и `configure: error: К сожалению, mp_limb_t, похоже, не работает` при компиляции компиC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 `проверка размера mp_limb_t... 0` и `configure: error: К сожалению, mp_limb_t, похоже, не работает` при компиляции компи

Сообщение Anonymous »


Я не могу этого понять. Я пытаюсь создать кросс-компилятор GCC для микроконтроллера Microchip XC32 PIC32.

Чтобы попробовать самому (вот как я понял ошибку, на которой застрял):
[*]
В Windows 10 или Windows 11: включите «режим разработчика», чтобы разрешить символические ссылки. Ключ Windows -> найдите «Использовать функции разработчика», нажмите кнопку (теперь синяя на изображении ниже), чтобы включить ее:
[img]https://i.stack. imgur.com/OfBnZ.png[/img]

[*]
Клонируйте мой репозиторий здесь: https://github.com/ElectricRCAircraftGu ... 2_Compiler
[*]
Установите MSYS2 и откройте оболочку MSYS2 UCRT64. При желании следуйте моим полным инструкциям по установке MSYS2 здесь.
[*]
Установите зависимости через pacman, вот так: скопируйте и вставьте весь этот объект сразу в терминал:

# ============ СДЕЛАЙТЕ ЭТО, ЧТОБЫ УСТАНОВИТЬ ВСЕ ЗАВИСИМОСТИ ОДНОВРЕМЕННО! ============= #UCRT64 if [ "$MSYSTEM" != "UCRT64" ]; затем echo "ОШИБКА: этот сценарий необходимо запустить на терминале MSYS2 ucrt64!" выход 1 фи список_пакетов=( "mingw-w64-ucrt-x86_64-gcc" # конкретная версия для MSYS2 ucrt64 "делать" "бинутилс" "автоконф" "автоген" "бизон" "дежанью" "гибкий" "глазать" "гперф" "сжать" # "nsis" # общий; должен быть конкретным; отсюда и строка ниже "mingw-w64-ucrt-x86_64-nsis" # конкретная версия для MSYS2 ucrt64 "перл" "мошенники" "ткл" "тексинфо" "wget" "молния" # "texlive" # generic; должен быть конкретным; отсюда и строка ниже "mingw-w64-ucrt-x86_64-texlive-core" # конкретная версия для MSYS2 ucrt64 # "texlive-extra-utils" # generic; должен быть конкретным; отсюда и строка ниже "mingw-w64-ucrt-x86_64-texlive-extra-utils" # специальная версия для MSYS2 ucrt64 ) # Устанавливайте пакеты только в том случае, если они еще НЕ установлены. для пакета в "${package_list[@]}"; делать если ! pacman -Qs $package > /dev/null; затем echo -e "\n=== $пакет не установлен. Установка... ===" pacman -S --noconfirm $пакет еще echo -e "\n=== $пакет уже установлен. ===" фи сделанный echo -e "\n=== Установка пакетов завершена! ===\n" [*]Запустите сценарий сборки: build-xc32-v4.35m.sh:

время ./build-xc32-v4.35m.sh [*]Примерно через 20 минут происходит сбой при компиляции gcc и настройке GMP. Обратите внимание: чтобы получить чистые ошибки, вы должны изменить сценарий сборки, чтобы использовать -j1 вместо -j$(nproc), здесь, в первой строке, иначе вы получить многопоточный вывод, искаженный друг над другом в терминале:

time make -j$(nproc) all-gcc \ STAGE1_LIBS="-lexpat -lmchp -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic" \ CPPFLAGS="-I${hostinstalldir}/include -imacros хост-defs.h" \ LDFLAGS=-L${hostinstalldir}/lib сделать установку-gcc Вот моя неудача. Кажется, что настройка GMP не удалась, когда он ищет mp_limb_t. Я отметил некоторые примечания/строки с помощью
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

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

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»