# [Résolu] [emerge] Problème de compilation

## OXiDiUS

Bonjour à toutes et à tous,

Après une installation non réussi, j'ai nettoyé gentoo en suivant les indications ici.

Aujourd'hui je tente d'installer mldonkey mais j'obtiens l'erreur suivante :

```
localhost / # emerge net-p2p/mldonkey

Calculating dependencies... done!

>>> Emerging (1 of 2) dev-lang/ocaml-3.09.2 to /

 * ocaml-3.09.2.tar.bz2 MD5 ;-) ...                                              [ ok ]

 * ocaml-3.09.2.tar.bz2 RMD160 ;-) ...                                           [ ok ]

 * ocaml-3.09.2.tar.bz2 SHA1 ;-) ...                                             [ ok ]

 * ocaml-3.09.2.tar.bz2 SHA256 ;-) ...                                           [ ok ]

 * ocaml-3.09.2.tar.bz2 size ;-) ...                                             [ ok ]

 * checking ebuild checksums ;-) ...                                             [ ok ]

 * checking auxfile checksums ;-) ...                                            [ ok ]

 * checking miscfile checksums ;-) ...                                           [ ok ]

 * checking ocaml-3.09.2.tar.bz2 ;-) ...                                         [ ok ]

 * 

 * Building ocaml with unsafe CFLAGS can have unexpected results

 * Please retry building with safer CFLAGS before reporting bugs

 * Likewise, building with a hardened gcc is not possible.

 * 

>>> Unpacking source...

>>> Unpacking ocaml-3.09.2.tar.bz2 to /var/tmp/portage/dev-lang/ocaml-3.09.2/work

>>> Source unpacked.

>>> Compiling source in /var/tmp/portage/dev-lang/ocaml-3.09.2/work/ocaml-3.09.2 ...

...

** Objective Caml configuration completed successfully **

cd byterun; make all

make[1]: Entering directory `/var/tmp/portage/dev-lang/ocaml-3.09.2/work/ocaml-3.09.2/byterun'

sed -n -e '/^  /s/ \([A-Z]\)/ \&\&lbl_\1/gp' \

               -e '/^}/q' instruct.h > jumptbl.h

gcc -DCAML_NAME_SPACE -O -fno-defer-pop -Wall -D_FILE_OFFSET_BITS=64 -D_REENTRANT -march=athlon-xp -O2 -mtune=i686 -pipe fomit-frame-pointer   -c -o interp.o interp.c

gcc: fomit-frame-pointer: No such file or directory

interp.c: In function 'caml_interprete':

interp.c:229: warning: dereferencing type-punned pointer will break strict-aliasing rules

make[1]: *** [interp.o] Error 1

make[1]: Leaving directory `/var/tmp/portage/dev-lang/ocaml-3.09.2/work/ocaml-3.09.2/byterun'

make: *** [coldstart] Error 2

!!! ERROR: dev-lang/ocaml-3.09.2 failed.

Call stack:

  ebuild.sh, line 1614:   Called dyn_compile

  ebuild.sh, line 971:   Called qa_call 'src_compile'

  environment, line 3255:   Called src_compile

  ocaml-3.09.2.ebuild, line 47:   Called die

!!! (no error message)

!!! If you need support, post the topmost build error, and the call stack if relevant.

!!! A complete build log is located at '/var/tmp/portage/dev-lang/ocaml-3.09.2/temp/build.log'.

```

Voici le résultat de emerge --info

```
Portage 2.1.2-r9 (default-linux/x86/no-nptl, gcc-4.1.1, glibc-2.5-r0, 2.6.19-gentoo-r5 i686)

=================================================================

System uname: 2.6.19-gentoo-r5 i686 AMD Athlon(TM) XP 2000+

Gentoo Base System release 1.12.9

Timestamp of tree: Tue, 13 Mar 2007 06:00:01 +0000

dev-lang/python:     2.4.3-r4

dev-python/pycrypto: 2.0.1-r5

sys-apps/sandbox:    1.2.17

sys-devel/autoconf:  2.13, 2.61

sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10

sys-devel/binutils:  2.16.1-r3

sys-devel/gcc-config: 1.3.14

sys-devel/libtool:   1.5.22

virtual/os-headers:  2.6.17-r2

ACCEPT_KEYWORDS="x86"

AUTOCLEAN="yes"

CBUILD="i686-pc-linux-gnu"

CFLAGS="-march=athlon-xp -O2 -mtune=i686 -pipe fomit-frame-pointer"

CHOST="i686-pc-linux-gnu"

CONFIG_PROTECT="/etc"

CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo"

CXXFLAGS="-march=athlon-xp -O2 -mtune=i686 -pipe fomit-frame-pointer"

DISTDIR="/usr/portage/distfiles"

FEATURES="autoconfig distlocks metadata-transfer sandbox sfperms strict"

GENTOO_MIRRORS="ftp://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/ http://gentoo.modulix.net/gentoo/ http://ftp.club-internet.fr/pub/mirrors/gentoo ftp://gentoo.imj.fr/pub/gentoo/ ftp://ftp.free.fr/mirrors/ftp.gentoo.org/ "

MAKEOPTS="-j2"

PKGDIR="/usr/portage/packages"

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

SYNC="rsync://rsync.gentoo.org/gentoo-portage"

USE="X alsa apm arts berkdb bitmap-fonts cdr cli cracklib crypt cups dri dvd eds emboss encode foomaticdb fortran gdbm gif gpm gstreamer gtk2 iconv imlib ipv6 isdnlog jpeg libg++ libwww mad midi mikmod motif mp3 mpeg ncurses nls ogg opengl oss pam pcre perl png pppd python qt qt3 qt4 quicktime readline reflection sdl session spell spl ssl tcpd truetype truetype-fonts type1-fonts vorbis x86 xml xorg xv zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="apm ark ati chips cirrus cyrix dummy fbdev glint i128 i740 i810 imstt mga neomagic nsc nv rendition s3 s3virge savage siliconmotion sis sisusb tdfx tga trident tseng v4l vesa vga via vmware voodoo"

Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY

```

Je pense que l'erreur tourne autours de gcc et en particulier de glib puisqu'il m'est apparu plusieurs fois en erreur mais impossible de remettre la main sur les messages.

Une idée ?

Merci d'avance.

Bonne journée.Last edited by OXiDiUS on Sun Mar 18, 2007 11:05 pm; edited 1 time in total

----------

## SanKuKai

Salut.

 *OXiDiUS wrote:*   

> 
> 
> gcc: fomit-frame-pointer: No such file or directory
> 
> [...]
> ...

 

Dans ton /etc/make.conf, t'as du oublier le « - » devant fomit-frame-pointer.

Tes CFLAGS et CXXFLAGS devraient être :

```

CFLAGS="-march=athlon-xp -O2 -mtune=i686 -pipe -fomit-frame-pointer"

CXXFLAGS="-march=athlon-xp -O2 -mtune=i686 -pipe -fomit-frame-pointer"

```

----------

## loopx

Eh paf, manque plus qu'un tit résolu  :Very Happy: 

----------

## OXiDiUS

Ouch... quand je pense que j'ai cherché 3 longues heures...   :Confused: 

Merci pour ton aide SanKuKai  :Smile: 

Bonne soirée à vous deux.

----------

## boozo

 *loopx wrote:*   

> Eh paf, manque plus qu'un tit résolu 

 

```
Portage 2.1.2-r9 (default-linux/x86/no-nptl, gcc-4.1.1, glibc-2.5-r0, 2.6.19-gentoo-r5 i686) 
```

enfin... presque...   :Rolling Eyes: 

Tu as une raison particuliaire pour conserver ce profile ?

----------

## OXiDiUS

Qu'est-ce qui ne va pas avec mon profil ?   :Question: 

----------

## boozo

ben là tu n'utilises pas nptl c'est pas très courant sauf par exemple des serveurs pour des raisons bien précises donc je pose la question avant... mais je pense que tu as dû très certainement partir d'un mauvais stage3 lors de ton install me gourre-je ?

----------

## OXiDiUS

Je pense que non, j'ai bien suivi les conseils de la documentation, j'ai téléchargé le dernier portage 3.

Si j'ai bien compris j'ai un profil en trop ?

----------

## prentonmantoonsenva

Il y a un thread qui causait de ça il y a peu : https://forums.gentoo.org/viewtopic-t-547528-highlight-profil.html

Sinon un ptit lien venant du handbook made in gentoo : http://www.gentoo.org/doc/fr/handbook/hb-install-system.xml?glang=fr

T'inquiètes on te voit d'un bon profil  :Wink: 

----------

## OXiDiUS

 *prentonmantoonsenva wrote:*   

> Il y a un thread qui causait de ça il y a peu : https://forums.gentoo.org/viewtopic-t-547528-highlight-profil.html
> 
> Sinon un ptit lien venant du handbook made in gentoo : http://www.gentoo.org/doc/fr/handbook/hb-install-system.xml?glang=fr
> 
> T'inquiètes on te voit d'un bon profil 

 

Si j'ai bien compris, je devrais avoir : 

Portage 2.1.2-r9 (ddefault-linux/x86/2006.1, gcc-4.1.1, glibc-2.5-r0, 2.6.19-gentoo-r5 i686)

au lieu de 

Portage 2.1.2-r9 (default-linux/x86/no-nptl, gcc-4.1.1, glibc-2.5-r0, 2.6.19-gentoo-r5 i686)

 :Question: 

edit: Si je change de profil, je ne risque pas d'avoir des problèmes avec les logiciels installés ou de perdre des configurations ?

----------

## _droop_

 *OXiDiUS wrote:*   

> edit: Si je change de profil, je ne risque pas d'avoir des problèmes avec les logiciels installés ou de perdre des configurations ?

 

Salut,

Non, celà va juste t'ajouter le USE="nptl nptlonly" par défaut, te forcer à utiliser un noyau "récent" (>2.6) et un glibc "récente" (>2.3 il me semble).

Après changement de profil (eselect profile -l et eselect profile -s), pour profiter de nptl, tu dois recompiler la glibc :

```
emerge -a1v glibc
```

Les logiciels actuelles ne doivent normalement pas être influencé par la précense ou non de nptl (ca change la gestion des threads au niveau de la glibc et du noyau mais c'est les mêmes interfaces au niveau des programmes).

Pour les fichiers de configuration, tu ne les perdras pas si tu utilises correctement dispatch-conf (mais pour la mise à jour de glibc, ça ne doit pas les toucher).

Bon courage.

----------

## OXiDiUS

Bonjour,

 *_droop_ wrote:*   

> Après changement de profil (eselect profile -l et eselect profile -s)

 

Impossible de faire eselect profile -l :

```
localhost ~ # eselect profile -l

!!! Error: Action -l unknown

Killed
```

Voici l'aide de eselect :

```
localhost ~ # eselect help  

Usage: eselect <global options> <module name> <module options>

Global options:

  --no-color,--no-colour    Disable coloured output

Built-in modules:

  help                      Display a help message

  list-modules              Find and display available modules

  usage                     Display a usage message

  version                   Display version information

Extra modules:

  bashcomp                  Manage contributed bash-completion scripts

  binutils                  Manage installed versions of sys-devel/binutils

  env                       Manage environment variables set in /etc/env.d/

  kernel                    Manage the /usr/src/linux symlink

  mailer                    Manage the mailwrapper profiles in /etc/mail

  profile                   Manage the /etc/make.profile symlink

  rc                        Manage /etc/init.d scripts in runlevels

```

Une idée ?

Bonne journée.

----------

## Mickael

```
eselect profile list

Available profile symlink targets:

  [1]   default-linux/x86/2006.1 *

  [2]   default-linux/x86/no-nptl

  [3]   default-linux/x86/no-nptl/2.4

  [4]   default-linux/x86/2006.1/desktop

  [5]   hardened/x86/2.6

  [6]   selinux/x86/2006.1

```

voilà  :Wink: 

----------

## OXiDiUS

```
localhost ~ # eselect profile list

Available profile symlink targets:

  [1]   default-linux/x86/2006.1

  [2]   default-linux/x86/no-nptl *

  [3]   default-linux/x86/no-nptl/2.4

  [4]   default-linux/x86/2006.1/desktop

  [5]   hardened/x86/2.6

  [6]   selinux/x86/2006.1

localhost ~ # eselect profile set 1

localhost ~ # eselect profile list

Available profile symlink targets:

  [1]   default-linux/x86/2006.1 *

  [2]   default-linux/x86/no-nptl

  [3]   default-linux/x86/no-nptl/2.4

  [4]   default-linux/x86/2006.1/desktop

  [5]   hardened/x86/2.6

  [6]   selinux/x86/2006.1
```

```
emerge -a1v glibc
```

Tout est bon maintenant non ?   :Question: 

edit:

 *_droop_ wrote:*   

> Non, celà va juste t'ajouter le USE="nptl nptlonly" par défaut, te forcer à utiliser un noyau "récent" (>2.6) et un glibc "récente" (>2.3 il me semble).

 

Au passage j'avais la version 2.5-r0 de glibc avant la sélection du profil...   :Exclamation:   :Question: 

----------

## _droop_

 *OXiDiUS wrote:*   

> 
> 
> edit:
> 
>  *_droop_ wrote:*   Non, celà va juste t'ajouter le USE="nptl nptlonly" par défaut, te forcer à utiliser un noyau "récent" (>2.6) et un glibc "récente" (>2.3 il me semble). 
> ...

 

Salut,

désolé pour la petite erreur sur eselect, mais je l'avais pas sous la main.

Sinon, je dis que le profil nptl te force à avoir une glibc récente, les autres profils ne l'empeche pas... Si tu tiens à jour ton système de temps en temps c'est normal que tu aies la version 2.5 (par contre sans nptl).

----------

## OXiDiUS

Bonsoir,

 *_droop_ wrote:*   

> Sinon, je dis que le profil nptl te force à avoir une glibc récente, les autres profils ne l'empeche pas... Si tu tiens à jour ton système de temps en temps c'est normal que tu aies la version 2.5 (par contre sans nptl).

 

Ok, merci pour ton aide.

Bonne soirée.

----------

