absolinux

Sujet : LFS 7.2 : 5.7. Glibc-2.16.0
posté par whytkanzaki 5 messages     le  18-10-2012  à  12:15citer
Bonjour, voilà j'ai un petit problème concernant la compilation du paquet Glibc-2.16.0 croisée pass1
En effet, après la création du répertoire Glibc-build et m'être placé dans le dit répertoire.
Je dois lancer la commande :
../glibc-2.16.0/configure                            \
      --prefix=/tools                                \
      --host=$LFS_TGT                                \
      --build=$(../glibc-2.16.0/scripts/config.guess) \
      --disable-profile                              \
      --enable-add-ons                                \
      --enable-kernel=2.6.25                          \
      --with-headers=/tools/include                  \
      libc_cv_forced_unwind=yes                      \
      libc_cv_ctors_header=yes                        \
      libc_cv_c_cleanup=yes

le terminal me retourne la sortie suivante :

root@debian:/mnt/lfs/sources/glibc-build# ../glibc-2.16.0/configure                            \
>      --prefix=/tools                                \
>      --host=$LFS_TGT                                \
>      --build=$(../glibc-2.16.0/scripts/config.guess) \
>      --disable-profile                              \
>      --enable-add-ons                                \
>      --enable-kernel=2.6.25                          \
>      --with-headers=/tools/include                  \
>      libc_cv_forced_unwind=yes                      \
>      libc_cv_ctors_header=yes                        \
>      libc_cv_c_cleanup=yes
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking for gcc... gcc
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking how to run the C preprocessor... gcc -E
checking for g++... no
checking for c++... no
checking for gpp... no
checking for aCC... no
checking for CC... no
checking for cxx... no
checking for cc++... no
checking for cl.exe... no
checking for FCC... no
checking for KCC... no
checking for RCC... no
checking for xlC_r... no
checking for xlC... no
checking whether we are using the GNU C++ compiler... no
checking whether g++ accepts -g... no
checking for sysdeps preconfigure fragments... x86_64 checking whether gcc compiles in -mx32 mode by default... no

configure: running configure fragment for add-on libidn
configure: running configure fragment for add-on nptl
checking for assembler gnu_indirect_function symbol type support... yes
checking whether .text pseudo-op must be used... yes
checking for assembler global-symbol directive... .globl
checking for assembler .type directive prefix... @
checking sysdep dirs... sysdeps/unix/sysv/linux/x86_64/64/nptl sysdeps/unix/sysv/linux/x86_64/64 nptl/sysdeps/unix/sysv/linux/x86_64 nptl/sysdeps/unix/sysv/linux/x86 sysdeps/unix/sysv/linux/x86 sysdeps/unix/sysv/linux/x86_64 sysdeps/unix/sysv/linux/wordsize-64 nptl/sysdeps/unix/sysv/linux nptl/sysdeps/pthread sysdeps/pthread sysdeps/unix/sysv/linux sysdeps/gnu sysdeps/unix/inet nptl/sysdeps/unix/sysv sysdeps/unix/sysv sysdeps/unix/x86_64 nptl/sysdeps/unix sysdeps/unix sysdeps/posix nptl/sysdeps/x86_64/64 sysdeps/x86_64/64 sysdeps/x86_64/fpu/multiarch sysdeps/x86_64/fpu sysdeps/x86/fpu sysdeps/x86_64/multiarch nptl/sysdeps/x86_64 sysdeps/x86_64 sysdeps/x86 sysdeps/ieee754/ldbl-96 sysdeps/ieee754/dbl-64/wordsize-64 sysdeps/ieee754/dbl-64 sysdeps/ieee754/flt-32 sysdeps/wordsize-64 sysdeps/ieee754 sysdeps/generic
checking for a BSD-compatible install... /usr/bin/install -c
checking whether ln -s works... yes
checking whether as is GNU as... yes
checking whether ld is GNU ld... yes
checking for as... as
checking version of as... 2.20.1, ok
checking for ld... ld
checking version of ld... 2.20.1, ok
checking for gcc... gcc
checking version of gcc... 4.4.5, ok
checking for gnumake... no
checking for gmake... no
checking for make... make
checking version of make... 3.81, ok
checking for gnumsgfmt... no
checking for gmsgfmt... no
checking for msgfmt... no
checking for makeinfo... makeinfo
checking version of makeinfo... 4.13, ok
checking for sed... sed
checking version of sed... 4.2.1, ok
checking for readelf... readelf
checking for nm... nm
checking for autoconf... no
configure: WARNING:
*** These auxiliary programs are missing or incompatible versions: msgfmt autoconf
*** some features will be disabled.
*** Check the INSTALL file for required versions.
checking LD_LIBRARY_PATH variable... ok
checking whether GCC supports -static-libgcc... -static-libgcc
checking for bash... /bin/bash
checking for gawk... no
checking for mawk... mawk
checking for perl... /usr/bin/perl
checking for install-info... /usr/sbin/install-info
checking for bison... no
checking for libc-friendly stddef.h... yes
checking whether we need to use -P to assemble .S files... no
checking for .set assembler directive... yes
checking for assembler gnu_unique_object symbol type... yes
checking for .symver assembler directive... yes
checking for ld --version-script... yes
checking for .previous assembler directive... yes
checking for .protected and .hidden assembler directive... yes
checking whether __attribute__((visibility())) is supported... yes
checking for broken __attribute__((visibility()))... no
checking for broken __attribute__((alias()))... no
checking whether to put _rtld_local into .sdata section... no
checking for .preinit_array/.init_array/.fini_array support... yes
checking whether to use .ctors/.dtors header and trailer... (cached) yes
checking for libunwind-support in compiler... no
checking for -z nodelete option... yes
checking for -z nodlopen option... yes
checking for -z initfirst option... yes
checking for -z relro option... no
configure: error: linker with -z relro support required

Le configure devrait normalement créer des fichiers dans le répertoire -build (i.e un makefile, etc...) or nous n'avons rien à part un config.log.
Ce qui nous empeche d'effectuer le make suivant !

Je vous remercie par avance pour l'aide que vous m'apporterez

Cordialement
posté par Myou 99 messages     le  18-10-2012  à  13:20citer
Bonjour,

Est ce que les commandes avant le ./configure ont bien été lancée ?
if [ ! -r /usr/include/rpc/types.h ]; then
  su -c 'mkdir -p /usr/include/rpc'
  su -c 'cp -v sunrpc/rpc/*.h /usr/include/rpc'
fi

et

sed -i 's/ -lgcc_s//' Makeconfig

Et aussi est ce que le script des prérequis (http://lfs.traduc.org/view/lfs-stable/prologue/hostreqs.html)  a été lancé pour vérifier que tout était ok sur la distribution hôte ?

Cordialement

Denis @ Myou
Coordinateur traduction BLFS
posté par whytkanzaki 5 messages     le  18-10-2012  à  13:34citer
Oui pardon j'ai oublié de rpéciser que les instructions préalables ont bien été suivies.
le if et le sed ont été correctement exécuté

Cependant, de quel script parlez-vous ?

Merci encore !
posté par Myou 99 messages     le  18-10-2012  à  14:31citer
voir en bas de la page du lien donné dans mon précédent message.

Cordialement
posté par whytkanzaki 5 messages     le  18-10-2012  à  14:59citer
oui j'ai bien effectué ce test et toutes les versions sont valides sur ma distribution hôte.
posté par Myou 99 messages     le  18-10-2012  à  18:32citer
il y a du avoir un pb pendant le test ...

checking for gawk... no
checking for bison... no

alors que gawk et bison sont des prérequis.

Merci de refaire le test et de passer le résultat ici ;o))

a+
posté par whytkanzaki 5 messages     le  21-10-2012  à  11:22citer
bonjour !

pardon pour le temps de réponse, voici le résultat du test :

root@debian:/mnt/lfs# cat > version-check.sh << "EOF"
> #!/bin/bash
> # Simple script to list version numbers of critical development tools
> export LC_ALL=C
> bash --version | head -n1 | cut -d" " -f2-4
> echo "/bin/sh -> `readlink -f /bin/sh`"
> echo -n "Binutils: "; ld --version | head -n1 | cut -d" " -f3-
> bison --version | head -n1
> if [ -e /usr/bin/yacc ];
>  then echo "/usr/bin/yacc -> `readlink -f /usr/bin/yacc`";
>  else echo "yacc not found"; fi
> bzip2 --version 2>&1 < /dev/null | head -n1 | cut -d" " -f1,6-
> echo -n "Coreutils: "; chown --version | head -n1 | cut -d")" -f2
> diff --version | head -n1
> find --version | head -n1
> gawk --version | head -n1
> if [ -e /usr/bin/awk ];
>  then echo "/usr/bin/awk -> `readlink -f /usr/bin/awk`";
>  else echo "awk not found"; fi
> gcc --version | head -n1
> ldd --version | head -n1 | cut -d" " -f2- # glibc version
> grep --version | head -n1
> gzip --version | head -n1
> cat /proc/version
> m4 --version | head -n1
> make --version | head -n1
> patch --version | head -n1
> echo Perl `perl -V:version`
> sed --version | head -n1
> tar --version | head -n1
> echo "Texinfo: `makeinfo --version | head -n1`"
> xz --version | head -n1
> echo 'main(){}' > dummy.c && gcc -o dummy dummy.c
> if [ -x dummy ]
>  then echo "gcc compilation OK";
>  else echo "gcc compilation failed"; fi
> rm -f dummy.c dummy
> EOF
root@debian:/mnt/lfs# bash version-check.sh
bash, version 4.1.5(1)-release
/bin/sh -> /bin/dash
Binutils: (GNU Binutils for Debian) 2.20.1-system.20100303
version-check.sh: line 7: bison: command not found
yacc not found
bzip2,  Version 1.0.5, 10-Dec-2007.
Coreutils:  8.5
diff (GNU diffutils) 3.0
find (GNU findutils) 4.4.2
version-check.sh: line 15: gawk: command not found
/usr/bin/awk -> /usr/bin/mawk
gcc (Debian 4.4.5-8) 4.4.5
(Debian EGLIBC 2.11.3-4) 2.11.3
GNU grep 2.6.3
gzip 1.3.12
Linux version 2.6.32-5-amd64 (Debian 2.6.32-46) (dannf@debian.org) (gcc version 4.3.5 (Debian 4.3.5-4) ) #1 SMP Sun Sep 23 10:07:46 UTC 2012
m4 (GNU M4) 1.4.14
GNU Make 3.81
patch 2.6
Perl version='5.10.1';
GNU sed version 4.2.1
tar (GNU tar) 1.23
Texinfo: makeinfo (GNU texinfo) 4.13
xz (XZ Utils) 5.0.0
gcc compilation OK


merci encore pour votre aide,

Cordialement.
posté par Myou 99 messages     le  21-10-2012  à  11:43citer
bonjour,

Alors le résultat du test donne :
version-check.sh: line 7: bison: command not found (il faut installer bison)
yacc not found
version-check.sh: line 15: gawk: command not found

il faut donc résoudre ses pbs. (bison yacc et gawk). Les explications sont données sur la page des prérequis ;o)

Cordialement
Denis @ Myou
posté par whytkanzaki 5 messages     le  21-10-2012  à  16:06citer
nous avons essayé d'installer bison, or le script yacc n'est pas crée pour autant, en outre l'installation de bison crée un répertoire bison-2.3 dans le répertoire racine /

Et même après l'installation de bison, le test des versions retourne encore :
version-check.sh: line 7: bison: command not found
yacc not found
version-check.sh: line 15: gawk: command not found

Nous sommes perdu, je vous remercie beaucoup pour l'aide que vous nous donnez et j'espère que vous nous apporterez une solution.
posté par Myou 99 messages     le  22-10-2012  à  12:40citer
Bonjour,

Il semble que la distribution hôte utilisée soit debian, pour installer un paquet avec debian, je ne peux que conseiller la lecture de http://www.debian-facile.org/

il est donc necessaire d'installer bison et gawk.

Cependant je dois dire que l'installation d'un paquet sur debian, la lecture et la compréhension des messages du script des prérequis sont des bases incontournable à la construction de LFS. Et les questions posées m'inquiète par rapport aux problèmes futures qui seront rencontrés pendant la construction.

Je ne sais pas dans quel but vous souhaitez construire une LFS, mais il serait peut être préférable dans un premier temps d'approfondir l'utilisation d'un système Linux.

Et je ne peux que recommander la lecture de cette page http://lfs.traduc.org/view/lfs-stable/prologue/prerequisites.html.

cordialement

Denis @ Myou




répondre