Calculate Forum

Ошибка при сборке программы под X32 ABI

Пытаюсь собрать hello world под X32 ABI и получаю следующую ошибку. Сборка под x86 с флагом -m32 или под x64 проходит без ошибок. В какую сторону копать?

gcc -mx32 1.c -o 1
In file included from /usr/include/features.h:474,
         from /usr/include/bits/libc-header-start.h:33,
         from /usr/include/stdio.h:27,
         from 1.c:1: 
/usr/include/gnu/stubs.h:13:11: fatal error: gnu/stubs-x32.h: No such file or directory
   13 | # include <gnu/stubs-x32.h>
      |           ^~~~~~~~~~~~~~~~~
compilation terminated.

Подозреваю что проблема в этом

/usr/include/gnu/stubs.h:13:11: fatal error: gnu/stubs-x32.h: No such file or directory

Это изначально понятно. Этот файл должен идти в пакете sys-libs/glibc, но его нет. Я не вижу какого-то USE флага, который мог бы помочь. Этот пакет собран так

cat /var/db/pkg/sys-libs/glibc-2.30-r8/USE
abi_x86_64 amd64 caps crypt elibc_glibc kernel_linux multiarch multilib nscd ssp static-libs userland_GNU

Я думаю что надо в make.conf указать ABI_X86=“X32” тогда должна подтянутся нужная либа

Или usе флаг использовать abi_X32 // или как он там называется

тут пишут что abi_x86_x32 x32 Available in experimental x32 sub-profile.
https://wiki.gentoo.org/wiki/Project:Multilib/Concepts

Спасибо. Вызывал eselect profile set, emerge показал добаление нужного флага, пытаюсь пересобрать.

© 2007-2020 Calculate Ltd.
Mastodon Mastodon