# Portage muy muy roto [Solucionado]

## natrix

Hola a todos!!!

Hace unos días estuve haciendo algo de limpieza de programas que no usaba, y cuando inicie el mantenimiento de Portage empezaron a saltar errores por todos lados:

Primero, cuando ejecuto "emerge --update --deep @world" me salta todo esto

http://pastebin.com/8H1D4mFS

donde lo mas llamativo es un dependencia circular que no logro levantar:

```

(dev-ruby/racc-1.4.9::gentoo, ebuild scheduled for merge) depends on

(dev-ruby/rdoc-4.0.1-r1::gentoo, ebuild scheduled for merge) (buildtime)

(dev-ruby/racc-1.4.9::gentoo, ebuild scheduled for merge) (buildtime)

```

Y otro problema es que mucho programas que quiero instalar fallan en este punto

* emerge dev-tex/svninfo-0.7.4

http://pastebin.com/bsvPdgVw

* emerge app-emulation/wine-9999

http://pastebin.com/LiDYP5J4

Para el wine tengo instalado el 1.5.22

El principal problema es que no puedo instalar soft nuevo (texlive, virtualbox, gcdemu, etc)

Alguien tiene una idea de como arreglar esto? (que no sea reinstalar gentoo,   :Crying or Very sad:  )

Desde ya gracias por cualquier ayuda!!!!Last edited by natrix on Tue Sep 17, 2013 11:57 am; edited 1 time in total

----------

## i92guboj

```

...

[ebuild     U  ]  sys-devel/llvm-9999:0/9999 [3.1-r2:0/0] USE="doc%* libffi python%* static-analyzer%* -clang% -debug -gold -multitarget -ocaml {-test} -udis86 (-vim-syntax%)" ABI_X86="(64%*) -32% (-x32)" PYTHON_TARGETS="python2_7%* (-pypy1_9) -pypy2_0% (-python2_5) -python2_6%" VIDEO_CARDS="-radeon%" 0 kB

...

[nomerge       ]  dev-lang/yasm-9999 [1.2.0] USE="nls python" PYTHON_TARGETS="python2_7%* -python2_6%" 

...

[ebuild     U  ] media-video/mplayer2-9999 [2.0_p20130126] USE="X alsa cdio doc* dvd dvdnav enca gif iconv ipv6 jpeg lcms libass mmx mng mp3 network opengl png postproc quvi* shm sse sse2 ssse3 threads%* unicode xinerama xscreensaver xv -3dnow -3dnowext (-altivec) (-aqua) -bluray -bs2b -cddb -cpudetection -debug -directfb -dvb -ftp -jack -joystick -ladspa -libcaca -lirc -md5sum -mmxext -oss -pnm -portaudio -pulseaudio -pvr -radio -samba -symlink -tga -v4l -vcd -vdpau -yuv4mpeg (-a52%*) (-dts%*) (-dv%*) (-faad%*) (-fbcon%) (-mad%*) (-nut%) (-rar%*) (-rtc%*) (-sdl%*) (-speex%*) (-theora%*) (-vorbis%*) (-xanim%) (-xvid%*)" 0 kB

[ebuild     U  ] www-client/firefox-23.0 [17.0.7] USE="alsa bindist dbus jit libnotify minimal startup-notification -custom-cflags -custom-optimization -debug -gstreamer (-pgo) -pulseaudio% (-selinux) -system-cairo% -system-jpeg% -system-sqlite -wifi" LINGUAS="-af -ak -ar -as -ast -be -bg -bn_BD -bn_IN -br -bs -ca -cs -csb -cy -da -de -el -en_GB -en_ZA -eo -es_AR -es_CL -es_ES -es_MX -et -eu -fa -fi -fr -fy_NL -ga_IE -gd -gl -gu_IN -he -hi_IN -hr -hu -hy_AM -id -is -it -ja -kk -km -kn -ko -ku -lg -lt -lv -mai -mk -ml -mr -nb_NO -nl -nn_NO -nso -or -pa_IN -pl -pt_BR -pt_PT -rm -ro -ru -si -sk -sl -son -sq -sr -sv_SE -ta -ta_LK -te -th -tr -uk -vi -zh_CN -zh_TW -zu" 113,114 kB

...

```

Hay algún motivo por el cual hayas desenmascarado versiones live de estos programas? Que un ebuild -9999 falle al compilar es lo más normal del mundo, y no deberías estar usándolos a no ser que tengas una buena razón.

```

 * Error: circular dependencies:

(dev-ruby/racc-1.4.9::gentoo, ebuild scheduled for merge) depends on

 (dev-ruby/rdoc-4.0.1-r1::gentoo, ebuild scheduled for merge) (buildtime)

  (dev-ruby/racc-1.4.9::gentoo, ebuild scheduled for merge) (buildtime)

It might be possible to break this cycle

by applying the following change:

- dev-ruby/racc-1.4.9 (Change USE: -doc)

Note that this change can be reverted, once the package has been installed.

```

Has probado la solución propuesta? Este tipo de error muchas veces se soluciona desactivando una USE flag, lo cual rompe la dependencia circular. Una vez que el paquete ha sido instalado, si de verdad la necesitas, puedes volver a activarla y recompilarlo.

```

media-libs/libpng:0

  (media-libs/libpng-1.6.3-r1::gentoo, ebuild scheduled for merge) pulled in by

    >=media-libs/libpng-1.6.2:0= required by (app-text/ghostscript-gpl-9.09::gentoo, ebuild scheduled for merge)

  (media-libs/libpng-1.5.15::gentoo, installed) pulled in by

    >=media-libs/libpng-1.4:0/0= required by (dev-tex/luatex-0.76.0::gentoo, installed)

    media-libs/libpng:0/0= required by (media-libs/jbig2dec-0.11-r1::gentoo, installed)

    (and 1 more with the same problems)

```

Estás usando paquetes inestables, que requerirán de una versión inestable de libpng. Probablemente el problema se solucione solo si desinstalas libpng, y añades dicho paquete al keyword correspondiente ~arch en /etc/portage/package.keywords. Una vez hecho eso, el sistema debería introducir como dependencia las versiones inestables de libpng 1.5 y 1.6, que se pueden instalar una junto a la otra sin problema alguno. No es el caso de la 1.5.15. Pero todo depende de los paquetes concretos y de cómo sea tu árbol de dependencias.

```

app-text/poppler:0

  (app-text/poppler-0.22.2-r2::gentoo, ebuild scheduled for merge) pulled in by

    app-text/poppler:0/35=[xpdf-headers(+)] required by (dev-tex/luatex-0.76.0::gentoo, installed)

    >=app-text/poppler-0.12.3-r3:0/35= required by (app-text/texlive-core-2013-r1::gentoo, installed)

  (app-text/poppler-0.22.5::gentoo, ebuild scheduled for merge) pulled in by

    (no parents that aren't satisfied by other packages in this slot)

dev-libs/icu:0

  (dev-libs/icu-51.1::gentoo, ebuild scheduled for merge) pulled in by

    dev-libs/icu:0/51.1= required by (dev-libs/libxml2-2.9.1-r1::gentoo, installed)

    dev-libs/icu:0/51.1= required by (media-libs/raptor-2.0.9::gentoo, installed)

    dev-libs/icu:0/51.1= required by (sys-apps/gptfdisk-0.8.6::gentoo, installed)

  (dev-libs/icu-51.2::gentoo, ebuild scheduled for merge) pulled in by

    (no parents that aren't satisfied by other packages in this slot)

x11-libs/libnotify:0

  (x11-libs/libnotify-0.7.5-r1::gentoo, ebuild scheduled for merge) pulled in by

    (no parents that aren't satisfied by other packages in this slot)

  (x11-libs/libnotify-0.7.5-r1::gentoo, installed) pulled in by

    x11-libs/libnotify[introspection] required by (app-admin/system-config-printer-gnome-1.4.1::gentoo, ebuild scheduled for merge)

sys-libs/zlib:0

  (sys-libs/zlib-1.2.8-r1::gentoo, installed) pulled in by

    sys-libs/zlib[static-libs(+)] required by (media-gfx/splashutils-1.5.4.4-r3::gentoo, ebuild scheduled for merge)

  (sys-libs/zlib-1.2.8-r1::gentoo, ebuild scheduled for merge) pulled in by

    (no parents that aren't satisfied by other packages in this slot)

media-libs/freetype:2

  (media-libs/freetype-2.4.12::gentoo, ebuild scheduled for merge) pulled in by

    (no parents that aren't satisfied by other packages in this slot)

  (media-libs/freetype-2.4.12::gentoo, installed) pulled in by

    >=media-libs/freetype-2[static-libs] required by (media-gfx/splashutils-1.5.4.4-r3::gentoo, ebuild scheduled for merge)

```

Sobre estas poco te puedo decir por ahora. Vamos a paso a paso. Pero te sugiero que hagas limpieza en tu /etc/portage, que te asegures de no tener contenido viejo o archivos de copia de seguridad que haya dejado tu editor al editar el contenido de ese directorio. Mezclar paquetes inestables en la rama estable siempre requiere de un mantenimiento más complejo. 

```

dev-lang/ghc:0

  (dev-lang/ghc-7.4.2::gentoo, ebuild scheduled for merge) pulled in by

    >=dev-lang/ghc-6.10.4:0/7.4.2= required by (dev-haskell/cabal-1.16.0.3::gentoo, installed)

  (dev-lang/ghc-7.6.3-r1::gentoo, ebuild scheduled for merge) pulled in by

    >=dev-lang/ghc-7.6.1:= required by (dev-haskell/haddock-2.13.2-r1::gentoo, ebuild scheduled for merge)

```

Mi consejo en este caso es que desinstales todo lo que tenga que ver con haskell, incluído ghc, y que luego lo dejes reinstalar con sus dependencias. En estos casos en los que un compilador va tan ligado a paquetes externos y librerías, lo más normal es que portage no te deje desinstalar la librería vieja porque la está usando el compilador actual, y por tanto, tampoco puedes instalar la nueva, que es la que requerirá el nuevo compilador. GHC es una molestia eterna y sin fin. Este es el tipo de paquete que al final acabo manteniendo a mano cuando lo necesito. Otra opción es, una vez que des con una combinación de paquetes estable, bloquear las actualizaciones de ghc y sus dependencias a partir de las versiones instaladas en ese momento, usando package.mask

```

net-misc/npapi-sdk:0

  (net-misc/npapi-sdk-0.27::gentoo, installed) pulled in by

    <net-misc/npapi-sdk-0.27.1 required by (app-admin/packagekit-base-0.7.4::gentoo, ebuild scheduled for merge)

  (net-misc/npapi-sdk-9999::gentoo, ebuild scheduled for merge) pulled in by

    (no parents that aren't satisfied by other packages in this slot)

```

Te digo lo mismo: hay algún motivo por el que necesites la versión live de este paquete?

Repasa tu configuración, sobre todo package.unmask y package.keywords. Elimina toda la basura que haya en esos archivos, y, si estás usando overlays, elimínalos a no ser que tengas un buen motivo para ello. En todo caso, asegúrate de que portage y los overlays, en caso de tener que usarlos, están actualizados.

----------

## natrix

Obviamente, la principal causa del problema es mi falta de experiencia en Portage. Todavía no se cumple un mes de que instalé gentoo y mis horas de estudios apuntaron a la instalación.

El primer programa que instale fuera de portage es el R(cran) porque la versión del “emerge” todavía no fue actualizada y no compila unos paquetes que necesitaba. Luego, en otro foro vi como arreglaban unos problemas de circularidad agregando los live; y ahí es cuando perdí el control y cuando quise volver para atrás ya no pude, o por lo menos no supe cómo.

Con respecto a tus comentarios, prove la solución  propuesta (la del -doc), leí todo el post que está más arriba y la sección “cuando portage se queja” del handbook, cuando vi que nada servía me subí al foro.

Muchas gracias por tus respuestas, ahora me pongo a seguirlo. Pero por lo que veo me va a llevar bastante tiempo, jaja.

Nuevamente gracias

----------

## natrix

ECCE HOMO: Después de mucho trabajo finalmente tengo funcionando portage.   :Very Happy:   :Very Happy:   :Very Happy: 

Solo me quedan dos problemas:

1) Cuando corro "emerge --update --deep @wolrd" salta este error

```

checking for mv... /bin/mv

checking for sendmail... /usr/sbin/sendmail

checking for time... time

checking verbose time flag... 

checking for socket in -lsocket... no

checking for t_accept in -lnsl... no

checking if ssl is wanted... yes

configure: error: Cannot find ssl libraries

!!! Please attach the following file when seeking support:

!!! /var/tmp/portage/www-misc/htdig-3.2.0_beta6-r3/work/htdig-3.2.0b6/config.log

 * ERROR: www-misc/htdig-3.2.0_beta6-r3 failed (compile phase):

 *   econf failed

 * 

 * Call stack:

 *          ebuild.sh, line   93:  Called src_compile

 *        environment, line 2980:  Called econf '--with-config-dir=/etc/htdig' '--with-default-config-file=/etc/htdig/htdig.conf' '--with-database-dir=/var/lib/htdig/db' '--with-cgi-bin-dir=/var/www/localhost/cgi-bin' '--with-search-dir=/var/www/localhost/htdocs/htdig' '--with-image-dir=/var/www/localhost/htdocs/htdig' '--without-ssl'

 *   phase-helpers.sh, line  521:  Called die

 * The specific snippet of code:

 *                      die "econf failed"

 * 

 * If you need support, post the output of `emerge --info '=www-misc/htdig-3.2.0_beta6-r3'`,

 * the complete build log and the output of `emerge -pqv '=www-misc/htdig-3.2.0_beta6-r3'`.

 * The complete build log is located at '/var/tmp/portage/www-misc/htdig-3.2.0_beta6-r3/temp/build.log'.

 * The ebuild environment file is located at '/var/tmp/portage/www-misc/htdig-3.2.0_beta6-r3/temp/environment'.

 * Working directory: '/var/tmp/portage/www-misc/htdig-3.2.0_beta6-r3/work/htdig-3.2.0b6'

 * S: '/var/tmp/portage/www-misc/htdig-3.2.0_beta6-r3/work/htdig-3.2.0b6'

>>> Failed to emerge www-misc/htdig-3.2.0_beta6-r3, Log file:

>>>  '/var/tmp/portage/www-misc/htdig-3.2.0_beta6-r3/temp/build.log'

 * Messages for package www-misc/htdig-3.2.0_beta6-r3:

 * ERROR: www-misc/htdig-3.2.0_beta6-r3 failed (compile phase):

 *   econf failed

 * 

 * Call stack:

 *          ebuild.sh, line   93:  Called src_compile

 *        environment, line 2980:  Called econf '--with-config-dir=/etc/htdig' '--with-default-config-file=/etc/htdig/htdig.conf' '--with-database-dir=/var/lib/htdig/db' '--with-cgi-bin-dir=/var/www/localhost/cgi-bin' '--with-search-dir=/var/www/localhost/htdocs/htdig' '--with-image-dir=/var/www/localhost/htdocs/htdig' '--without-ssl'

 *   phase-helpers.sh, line  521:  Called die

 * The specific snippet of code:

 *                      die "econf failed"

 * 

 * If you need support, post the output of `emerge --info '=www-misc/htdig-3.2.0_beta6-r3'`,

 * the complete build log and the output of `emerge -pqv '=www-misc/htdig-3.2.0_beta6-r3'`.

 * The complete build log is located at '/var/tmp/portage/www-misc/htdig-3.2.0_beta6-r3/temp/build.log'.

 * The ebuild environment file is located at '/var/tmp/portage/www-misc/htdig-3.2.0_beta6-r3/temp/environment'.

 * Working directory: '/var/tmp/portage/www-misc/htdig-3.2.0_beta6-r3/work/htdig-3.2.0b6'

 * S: '/var/tmp/portage/www-misc/htdig-3.2.0_beta6-r3/work/htdig-3.2.0b6'

```

2) Y esto cuando quiero instalar Avogadro: "emerge avogadro"

```

make -j5 GLEW_DEST=/usr AR=x86_64-pc-linux-gnu-ar STRIP=true CC=x86_64-pc-linux-gnu-gcc 'LD=x86_64-pc-linux-gnu-gcc -Wl,-O1 -Wl,--as-needed' M_ARCH= LDFLAGS.EXTRA= 'POPT=-O2 -march=native -pipe' 

/bin/sh: line 0: test: too many arguments

Makefile:40: *** "Platform 'cdr dbus dvdr lzo sse sse2 threads udev logrotate' not supported".  Stop.

 * ERROR: media-libs/glew-1.9.0 failed (compile phase):

 *   emake failed

 * 

 * If you need support, post the output of `emerge --info '=media-libs/glew-1.9.0'`,

 * the complete build log and the output of `emerge -pqv '=media-libs/glew-1.9.0'`.

 * The complete build log is located at '/var/tmp/portage/media-libs/glew-1.9.0/temp/build.log'.

 * The ebuild environment file is located at '/var/tmp/portage/media-libs/glew-1.9.0/temp/environment'.

 * Working directory: '/var/tmp/portage/media-libs/glew-1.9.0/work/glew-1.9.0'

 * S: '/var/tmp/portage/media-libs/glew-1.9.0/work/glew-1.9.0'

>>> Failed to emerge media-libs/glew-1.9.0, Log file:

>>>  '/var/tmp/portage/media-libs/glew-1.9.0/temp/build.log'

 * Messages for package media-libs/glew-1.9.0:

 * ERROR: media-libs/glew-1.9.0 failed (compile phase):

 *   emake failed

 * 

 * If you need support, post the output of `emerge --info '=media-libs/glew-1.9.0'`,

 * the complete build log and the output of `emerge -pqv '=media-libs/glew-1.9.0'`.

 * The complete build log is located at '/var/tmp/portage/media-libs/glew-1.9.0/temp/build.log'.

 * The ebuild environment file is located at '/var/tmp/portage/media-libs/glew-1.9.0/temp/environment'.

 * Working directory: '/var/tmp/portage/media-libs/glew-1.9.0/work/glew-1.9.0'

 * S: '/var/tmp/portage/media-libs/glew-1.9.0/work/glew-1.9.0'

```

Alguien se le ocurre que puede ser?

Nuevamente muchas gracias!!!!!

----------

## i92guboj

En cuanto al primero, parece ser un bug.

https://bugs.gentoo.org/show_bug.cgi?id=314835

Puedes probar a activar el USE "ssl" para htdig.

En cuanto al segundo, esta línea:

```
Makefile:40: *** "Platform 'cdr dbus dvdr lzo sse sse2 threads udev logrotate' not supported".
```

Parece sugerir que hay un par de comillas mal puestas en algún lugar. También podría ser un bug en el ebuild, aunque sería raro porque glew es un paquete de uso relativamente común. Revisa tu make.conf, a ser posible, con un editor de texto que soporte resaltado de sintaxis.

----------

## natrix

Solucionado!!!!!!!!!!    :Very Happy:   :Very Happy:   :Very Happy:   :Very Happy: 

Para el htdig tuve que agregar SSL al package.use. Lo raro es que en otros casos emerge me avisaba que tenia que hacerlo pero esta vez nada.

Para glew fue raro (de mi parte), desactive varios USE del make.conf hasta que se instalo, luego reactive los USE pero cuando actualice world no hizo ningún escándalo.

Gracias i92guboj!!! te debo otra

----------

## i92guboj

 *natrix wrote:*   

> Solucionado!!!!!!!!!!      
> 
> Para el htdig tuve que agregar SSL al package.use. Lo raro es que en otros casos emerge me avisaba que tenia que hacerlo pero esta vez nada.
> 
> 

 

Es un bug en el ebuild. Los avisos en realidad son " errores controlados" ,es otra forma de verlo jeje  :Wink: 

 *Quote:*   

> Para glew fue raro (de mi parte), desactive varios USE del make.conf hasta que se instalo, luego reactive los USE pero cuando actualice world no hizo ningún escándalo.
> 
> Gracias i92guboj!!! te debo otra

 

De nada. Lo mejor de esta vida en el lado libre de la fuerza es que nadie debe nada a nadie.   :Wink: 

----------

