# emerge gcc si bloca senza errori?

## Azangod

A me succede una cosa alquanto singolare, ogni volta che provo a emergere gcc-4.1.1-r3 il pocesso si "frezza" alla fine della compilazione che avviene per intero senza errori...

Arriva a ">>> Source compiled." e rimane lì, l'unico sistema per uscirne è CTRL+C.

Allego emerge --info nella speranza che possa tornare utile.

```

Portage 2.1.2.2 (default-linux/x86/2006.1, gcc-4.1.1, glibc-2.5-r0, 2.6.18-gentoo-r2 i686)

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

System uname: 2.6.18-gentoo-r2 i686 Intel(R) Pentium(R) 4 CPU 1.60GHz

Gentoo Base System release 1.12.9

Timestamp of tree: Tue, 15 May 2007 17:30:09 +0000

dev-java/java-config: 1.3.7, 2.0.31-r5

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.16

sys-devel/libtool:   1.5.22

virtual/os-headers:  2.6.17-r2

ACCEPT_KEYWORDS="x86"

AUTOCLEAN="yes"

CBUILD="i686-pc-linux-gnu"

CFLAGS="-O2 -march=i686 -pipe"

CHOST="i686-pc-linux-gnu"

CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"

CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/php/apache1-php4/ext-active/ /etc/php/apache2-php4/ext-active/ /etc/php/cgi-php4/ext-active/ /etc/php/cli-php4/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c"

CXXFLAGS="-O2 -march=i686 -pipe"

DISTDIR="/usr/portage/distfiles"

FEATURES="distlocks metadata-transfer sandbox sfperms strict"

GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"

LANG="it_IT.utf8"

LC_ALL="it_IT.utf8"

LINGUAS="it en"

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 --filter=H_**/files/digest-*"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

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

USE="X a52 aac acpi alsa apache2 arts asf avi bash-completion berkdb bitmap-fonts bluetooth bzip2 cairo cdr cli cracklib crypt cups dbus divx4linux dri dts dvd exif ffmpeg flac flash foomaticdb fortran gdbm gif gpm gtk gtk2 hal iconv isdnlog java jpeg jpeg2k libg++ matroska midi mime mmx mp3 mpeg mysql ncurses nls nptl nptlonly nvidia ogg oggvorbis opengl pam pcre pdf perl png ppds pppd python qt3 qt4 quicktime readline reflection reiserfs samba session spl sse ssl svg tcpd tiff truetype truetype-fonts type1-fonts unicode usb userlocales v4l vcd vorbis win32codecs wmf x86 xorg xvid xvmc 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" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="it en" USERLAND="GNU" VIDEO_CARDS="nvidia"

Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY

```

Allego anche un grab di top dove sandbox viene dato per defunto

```

top - 23:23:02 up 1 day, 14:09,  2 users,  load average: 0.39, 0.45, 0.67

Tasks: 102 total,   4 running,  97 sleeping,   0 stopped,   1 zombie

Cpu(s): 11.6%us,  1.7%sy,  0.0%ni, 86.0%id,  0.0%wa,  0.7%hi,  0.0%si,  0.0%st

Mem:    905340k total,   893892k used,    11448k free,    46476k buffers

Swap:  2008116k total,   389328k used,  1618788k free,   369948k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND

 5072 root      15   0  172m  46m 3896 S  3.3  5.3  29:21.07 X

31171 root      15   0  2204 1148  856 R  0.3  0.1   0:00.04 top

    1 root      15   0  1560  484  460 S  0.0  0.1   0:00.18 init

    2 root      34  19     0    0    0 S  0.0  0.0   0:00.06 ksoftirqd/0

    3 root      10  -5     0    0    0 S  0.0  0.0   0:00.12 events/0

    4 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 khelper

    5 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kthread

    8 root      10  -5     0    0    0 S  0.0  0.0   0:00.04 kblockd/0

    9 root      20  -5     0    0    0 S  0.0  0.0   0:00.00 kacpid

   69 root      12  -5     0    0    0 S  0.0  0.0   0:00.00 kseriod

   72 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 khubd

  155 root      15   0     0    0    0 S  0.0  0.0   0:01.00 pdflush

  157 root      10  -5     0    0    0 S  0.0  0.0   0:13.98 kswapd0

  158 root      20  -5     0    0    0 S  0.0  0.0   0:00.00 aio/0

  159 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 cifsoplockd

  160 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 cifsdnotifyd

  762 root      19  -5     0    0    0 S  0.0  0.0   0:00.00 kpsmoused

  841 root      10  -5     0    0    0 S  0.0  0.0   0:00.58 reiserfs/0

 1024 root      18  -4  1788  408  408 S  0.0  0.0   0:00.28 udevd

 3811 root      15   0  1936  488  400 S  0.0  0.1   0:00.10 syslog-ng

 4419 root      25   0  3960  620  532 S  0.0  0.1   0:00.01 sshd

 4475 root      18   0 45948 1076 1052 S  0.0  0.1   0:00.24 apache2

 4606 root      18   0  4308  880  832 S  0.0  0.1   0:00.02 cupsd

 4722 root      16   0  2756  604  604 S  0.0  0.1   0:00.01 hald-runner

 4741 root      16   0  1780  460  440 S  0.0  0.1   0:01.09 hald-addon-stor

 4743 root      18   0  1780  444  428 S  0.0  0.0   0:04.61 hald-addon-stor

 4932 root      18   0  3120  608  560 S  0.0  0.1   0:00.00 cron

 5011 root      23   0  2380  744  744 S  0.0  0.1   0:00.01 login

 5012 root      18   0  1600  532  532 S  0.0  0.1   0:00.00 agetty

 5013 root      18   0  1596  532  532 S  0.0  0.1   0:00.00 agetty

 5014 root      18   0  1596  532  532 S  0.0  0.1   0:00.00 agetty

 5028 root      18   0  1600  532  532 S  0.0  0.1   0:00.00 agetty

 5031 root      18   0  1596  532  532 S  0.0  0.1   0:00.00 agetty

 5146 root      18   0  1400  112   92 S  0.0  0.0   0:00.12 start_kdeinit

 5472 root      18   0  3432  824  824 S  0.0  0.1   0:00.02 su

 5475 root      15   0  4080 1104  980 S  0.0  0.1   0:00.04 bash

18144 root      18   0 28476 7984 2340 S  0.0  0.9   1:32.90 emerge

24720 root      16   0     0    0    0 S  0.0  0.0   0:00.08 pdflush

28364 root      18   0  1548  388  356 S  0.0  0.0   0:00.99 tee

28365 root      19   0     0    0    0 Z  0.0  0.0   0:00.01 sandbox <defunct>

23731 root      18   0  4200 1652 1124 S  0.0  0.2   0:00.03 sh

31028 root      16   0  6760 2140 1740 S  0.0  0.2   0:00.08 sshd

```

Siccome mi sono accorto solamente ora (mentre sto scrivendo) del problema con sandbox sto provvedendo a riemergerlo e subito dopo riproverò con gcc della speranza che rappresenti la soluzione del problema.

A nessun'altro è mai capitato qualcosa del genere?

----------

## lucapost

non è che compili in ram è non hai spazio sufficiente?

----------

## Azangod

Niente da fare, anche dopo aver riemerso sandbox fa esattamente come prima.

Per quanto riguarda il discorso ram... come faccio a verificare se effettivamente ne vorrebbe di più vista la (ottima) tendenza del kernel di usare tutta la ram disponibile?

Nel momento del 'blocco' top dava la ram per satura:

```
Mem:    905340k total,   893892k used,    11448k free,    46476k buffers

Swap:  2008116k total,   389328k used,  1618788k free,   369948k cached 
```

Però stiamo comunque di quasi un giga di ram, sul portatile ne monto la metà e non ho mai avuto problemi di questo genere.

----------

## Onip

puoi verificare se la colpa è del montaggio in ram usando

```
#df -h
```

 quando si freeza, se è al 100% (o giù di lì) il problema è quasi sicuramente quello.

Tra l'altro mi pare che un giga per gcc non sia sufficiente...

Byez

----------

## Azangod

Questo è il df -h rilevato nel momento dell'errore, vale a dire mentre sandbox è defunct

```

Filesystem         Dimens. Usati Disp. Uso% Montato su

/dev/hda3              47G   44G  2,8G  95% /

udev                  443M  2,6M  440M   1% /dev

/dev/hda4              64G   62G  1,9G  98% /store

shm                   443M     0  443M   0% /dev/shm

```

top

```

top - 12:44:25 up 2 days,  3:31,  3 users,  load average: 0.06, 0.11, 0.05

Tasks: 109 total,   3 running, 105 sleeping,   0 stopped,   1 zombie

Cpu(s):  6.6%us,  1.3%sy,  0.0%ni, 92.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st

Mem:    905340k total,   888368k used,    16972k free,    39304k buffers

Swap:  2008116k total,   470516k used,  1537600k free,   383876k cached

```

GCC4 l'ho montato anche sul portatile (512MB di ram) e su un vecchio fossile (256MB di ram), e lo avevo già compilato anche sulla macchina in questione infatti trattasi di un update.

gcc -v

```

Using built-in specs.

Target: i686-pc-linux-gnu

Configured with: /var/tmp/portage/gcc-4.1.1-r3/work/gcc-4.1.1/configure --prefix=/usr --bindir=/usr/i686-pc-linux-gnu/gcc-bin/4.1.1 --includedir=/usr/lib/gcc/i686-pc-linux-gnu/4.1.1/include --datadir=/usr/share/gcc-data/i686-pc-linux-gnu/4.1.1 --mandir=/usr/share/gcc-data/i686-pc-linux-gnu/4.1.1/man --infodir=/usr/share/gcc-data/i686-pc-linux-gnu/4.1.1/info --with-gxx-include-dir=/usr/lib/gcc/i686-pc-linux-gnu/4.1.1/include/g++-v4 --host=i686-pc-linux-gnu --build=i686-pc-linux-gnu --disable-altivec --enable-nls --without-included-gettext --with-system-zlib --disable-checking --disable-werror --enable-secureplt --disable-libunwind-exceptions --disable-multilib --disable-libmudflap --disable-libssp --disable-libgcj --enable-languages=c,c++,fortran --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu

Thread model: posix

gcc version 4.1.1 (Gentoo 4.1.1-r3)

```

Spero che questi nuovi dati possano gettare una nuova luce sul problema, nel frattempo non posso far altro che ringraziare tutti.

----------

## Azangod

Niente...

ho provato a cambiare profilo (2007.0), a terminare tutti i servizi e a fare l'emerge da shell (prima lavoravo sotto X)... ancora lo stesso risultato

stavolta top mi dice che ci sono 140MB di ram disponibili,

```
top - 22:08:07 up 2 days, 12:55,  2 users,  load average: 0.16, 0.19, 0.70

Tasks:  63 total,   2 running,  60 sleeping,   0 stopped,   1 zombie

Cpu(s):  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st

Mem:    905340k total,   765584k used,   139756k free,   112448k buffers

Swap:  2008116k total,    96308k used,  1911808k free,   522668k cached
```

e df mi dice che c'è ancora spazio disponibile sul disco

```
Filesystem         Dimens. Usati Disp. Uso% Montato su

/dev/hda3              47G   45G  1,8G  97% /

udev                  443M  2,6M  440M   1% /dev

/dev/hda4              64G   62G  1,9G  98% /store

shm                   443M     0  443M   0% /dev/shm
```

e sandbox è sempre nello stato defunct...

nella disperazione ho provato anche col revdep-rebuild ma è tutto maledettamente a posto...

e non riesco ancora a fare emerge -u sys-devel/gcc

sperando possa essere di aiuto posto anche il log di emerge

```
1179340573:  >>> emerge (1 of 23) sys-devel/gcc-4.1.1-r3 to /

1179340573:  === (1 of 23) Cleaning (sys-devel/gcc-4.1.1-r3::/usr/portage/sys-devel/gcc/gcc-4.1.1-r3.ebuild)

1179340625:  === (1 of 23) Compiling/Merging (sys-devel/gcc-4.1.1-r3::/usr/portage/sys-devel/gcc/gcc-4.1.1-r3.ebuild)

1179346341:  *** terminating.
```

Qualcuno può darmi qualche suggerimento? qualche test? Qualsiasi cosa che possa in qualche modo avvicinarmi alla soluzione di questo fastidiosissimo problema?

Ringrazio tutti per la pazienza.

----------

## Azangod

Ho abbandonato il gcc-4.1.1-r3 in favore del gcc-4.1.2.

Fortunatamente questa volta mi da un log dell'errore:

```

(TARGET_MACHINE='i686-pc-linux-gnu'; srcdir=`cd /var/tmp/portage/sys-devel/gcc-4.1.2/work/gcc-4.1.2/gcc; ${PWDCMD-pwd}`; \

          SHELL='/bin/sh'; MACRO_LIST=`${PWDCMD-pwd}`/macro_list ; \

          export TARGET_MACHINE srcdir SHELL MACRO_LIST && \

          cd ../build-i686-pc-linux-gnu/fixincludes && \

          /bin/sh ./fixinc.sh ../../gcc/include \

            `echo /usr/include | sed -e :a -e "s,[^/]*/\.\.\/,," -e ta`  )

Fixing headers into /var/tmp/portage/sys-devel/gcc-4.1.2/work/build/gcc/include for i686-pc-linux-gnu target

Forbidden identifiers: i386 linux unix

Finding directories and links to directories

 Searching /usr/include/.

find: ././gtk-1.2/gtk/gtkmenuitem.h: Permission denied

find: ././gtk-1.2/gtk/gtkhscale.h: Input/output error

find: ././gtk-1.2/gtk/gtkvpaned.h: Input/output error

[...] *interminabile lista di Input/output error* [...]

mkdir: impossibile creare la directory `/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/gcc/include/./asm-generic': Input/output error

mkdir: impossibile creare la directory `/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/gcc/include/root': Input/output error

Making symbolic directory links

touch: cannot touch `/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/gcc/include/DONE': Input/output error

Fixing directory /usr/include into /var/tmp/portage/sys-devel/gcc-4.1.2/work/build/gcc/include

Cleaning up unneeded directories:

fixincludes is done

rm -f include/syslimits.h

rm: impossibile rimuovere `include/syslimits.h': Input/output error

make[2]: *** [stmp-fixinc] Error 1

make[2]: Leaving directory `/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/gcc'

make[1]: *** [stage1_build] Error 2

make[1]: Leaving directory `/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/gcc'

make: *** [profiledbootstrap] Error 2

!!! ERROR: sys-devel/gcc-4.1.2 failed.

Call stack:

  ebuild.sh, line 1615:   Called dyn_compile

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

  ebuild.sh, line 44:   Called src_compile

  ebuild.sh, line 1305:   Called toolchain_src_compile

  toolchain.eclass, line 26:   Called gcc_src_compile

  toolchain.eclass, line 1537:   Called gcc_do_make

  toolchain.eclass, line 1411:   Called die

!!! emake failed with profiledbootstrap

!!! 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/sys-devel/gcc-4.1.2/temp/build.log'.

Traceback (most recent call last):

  File "/usr/bin/emerge", line 5530, in ?

  File "/usr/bin/emerge", line 5525, in emerge_main

  File "/usr/bin/emerge", line 4992, in action_build

  File "/usr/bin/emerge", line 3165, in merge

  File "/usr/lib/portage/pym/portage_locks.py", line 20, in lockdir

  File "/usr/lib/portage/pym/portage_locks.py", line 54, in lockfile

OSError: [Errno 5] Input/output error: '/var/tmp/portage/.sys-devel.portage_lockfile'

emergelog(): [Errno 5] Input/output error: '/var/log/emerge.log'

```

Dopo che si verifica questo errore non posso fare altro che un reset fisico perchè a parte df (che mi da abbondante spazio disponibile sulle partizioni) tutto il resto da errore.

----------

