Hahah ! il y a 5+ "librairies atomiques standard" (+ support du noyau) c'est loin d'être de l'atomique mais n'en tenez pas compte, ce n'est qu'une distraction opportune.
Donc vous construisez, c'est à dire la glibc et vous obtenez cette erreur (c'est mon cas).
glibc-2.11.x s'attend à ce que gcc-4.4.x le définisse en interne, et vous avez gcc sans bu Il est probable que vous n'ayez pas spécifié l'arc que gcc accepte (à cause des directives lacunaires). glibc aime le 786, gcc veut du 386 et des chiffres 786 peut-etre. utiliser "nativ opt(march) et opt(mtune) SONT NON OPTIONNELS gcc construit mal sans eux (probablement). sans eux (probablement)
vous ne trouverez pas d'en-tête ou de libfoo qui le définisse (pour ainsi dire)
pour linux-gnu vous pouvez utiliser (une construction simple pour moi)
cd gcc-4.4.foo
./configure --with-glibc-version=2.11 --enable-threads=posix \
--disable-cloog --disable-ppl --disable-libssp --enable-__cxa_atexit \
--disable-rpath --disable-nls --disable-bootstrp --disable-multilib \
--with-system-libunwind
IMPORTANT : si vous compilez gcc sans mtune march correctement, gcc ne définira pas sync_fetch_and_add (p.s. glibc sync_fetch_and_add_4 est juste une macro pour sync_fetch_and_add qui, aga glibc s'attend à ce qu'il soit défini)
De plus, si vous remplacez gcc-3.foo par gcc-4.4.foo et que vous compilez, vous pouvez avoir besoin de :
[ -n "$newgnu" ] && CFLAGS="$CFLAGS -march=native -mtune=native "
[ -n "$newgnu" ] && \
CFLAGS="$CFLAGS -std=gnu89 " && CPPFLAGS="$CPPFLAGS -std=gnu89 "
Je viens d'en avoir besoin (newgnu) pour construire binutils-ver/ : -Wstrict-aliasing=0
cd glibc-2.foo/
./configure --with-headers=/usr/src/linux/usr/include \
--enable-kernel=2.2.foo \
--disable-profile --disable-sanity-checks --with-tls \
--disable-rpath --disable-nls
-
Merci au gars en Hollande d'avoir posté --std qui pourrait être un problème pour les utilisateurs de gcc !
-
non grâce aux comités qui changent continuellement et créent aussi des "standards" qui rendent les dépendances problématiques dans gcc :( utilisez .h ou .c de manière appropriée pour foo "builtin" pour ajouter des fonctionnalités que vous voulez dans votre code comme tout le monde ! !!
Amusez-vous bien :)