View previous topic :: View next topic |
Author |
Message |
Antares-1 Tux's lil' helper
Joined: 02 Dec 2005 Posts: 105
|
Posted: Fri Dec 16, 2005 9:16 pm Post subject: [Compilación] Error con una Extraña libreria (Abierto) |
|
|
Este es un error General que me surgio al querer emerger el soporte para DirectFB del Mplayer, El Programa para KDE "Karamba" y el Emulador de Neo-geo "Gngeo".
Lo pongo ahora para futuras referencias y problemas con el Emerge.
Todos estos errores son similares en todos los emerges:
Este es del Gngeo, empieza a compilar.... y cuando llega el libstdc++.la:
Code: | grep: /usr/lib/gcc-lib/i386-pc-linux-gnu/3.3.5-20050130/libstdc++.la: No such file or directory
/bin/sed: can't read /usr/lib/gcc-lib/i386-pc-linux-gnu/3.3.5-20050130/libstdc++.la: No such file or directory
libtool: link: `/usr/lib/gcc-lib/i386-pc-linux-gnu/3.3.5-20050130/libstdc++.la' is not a valid libtool archive
make: *** [libSDL_image.la] Error 1
!!! ERROR: media-libs/sdl-image-1.2.4 failed.
!!! Function src_compile, Line 38, Exitcode 2
!!! emake failed
!!! If you need support, post the topmost build error, NOT this status message. |
Con el Karamba:
Code: | libtool: link: cannot find the library `/usr/lib/gcc-lib/i386-pc-linux-gnu/3.3.5-20050130/libstdc++.la'
make[3]: *** [karamba] Error 1
make[3]: Leaving directory `/var/tmp/portage/karamba-0.17-r2/work/karamba-0.17/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/karamba-0.17-r2/work/karamba-0.17/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/karamba-0.17-r2/work/karamba-0.17'
make: *** [all] Error 2 |
Y algo similar pasa con el DirectFb para el soporte de mplayer (Cosa que le hago un -directfb en las use, pero no va al caso porque lo voy a necesitar).
Lo mas extraño es que:
Code: | usuario@HOSTNAME ~ $ ls /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/
cc1 crtendS.o install-tools libgcc.a libstdc++.so.5
cc1plus f771 libfrtbegin.a libgcc_eh.a libstdc++.so.5.0.7
collect2 hardened.specs libg2c.a libgcc_s.so libstdc++_pic.a
crtbegin.o hardenednopie.specs libg2c.la libgcc_s.so.1 libsupc++.a
crtbeginS.o hardenednopiessp.specs libg2c.so libstdc++.a libsupc++.la
crtbeginT.o hardenednossp.specs libg2c.so.0 libstdc++.la specs
crtend.o include libg2c.so.0.0.0 libstdc++.so vanilla.specs |
El archivo esta. A ver si me tiran una manita con esto. |
|
Back to top |
|
|
LinuxBlues l33t
Joined: 26 Mar 2005 Posts: 892
|
|
Back to top |
|
|
Antares-1 Tux's lil' helper
Joined: 02 Dec 2005 Posts: 105
|
Posted: Fri Dec 16, 2005 11:02 pm Post subject: |
|
|
Lo que pasa es que con el Inglés me llevo fatal...
¿¿¿Me podrias traducir la parte de los comandos basicos??? (Esta parte solamente)
Quote: | A: This typically happens because some packages have hard coded the path to libstdc++.la. RunCódigo:
fix_libtool_files.sh <old_version>
to fix it. Note that you may have to run Código:
env-update && source /etc/profile
first. Note also that you may run into problems if you have changed the default root umask.
Q: That's all nice, but the CHOST (i686-pc-linux-gnu above) is incorrect as well.
A: Then you have to pass the --oldarch flag to fix_libtool_files.sh:Código:
fix_libtool_files.sh <old_version> --oldarch <incorrect_CHOST>
Note that if you're thinking about changing the CHOST setting in /etc/make.conf it should be made with caution. |
En especial donde dice old version no se que parametro utilizar... saludos y gracias por la molestia. |
|
Back to top |
|
|
LinuxBlues l33t
Joined: 26 Mar 2005 Posts: 892
|
Posted: Sat Dec 17, 2005 11:27 am Post subject: |
|
|
Si has actualizado GCC es completamente normal que te ocurra eso, espero que hayas seguido la Guía de actualización de GCC en Gentoo Linux. Aquí lo tienes explicado claramente y en español.
Normalmente <old-version> se refiere a la última versión de GCC que usaste antes de actualizar.
Mostrará una lista con todas las versiones disponibles, ignora todas las entradas 3.4.4 y la siguiente versión que aparezca es la que debes elegir. No doy por hecho que hayas seguido la trayectoria normal de actualización, podrías haber pasado de una 2004.x a actualizar el sistema directamente, pero lo más normal sería haber pasado de gcc-3.3.6 a 3.4.4 Por tanto, en este caso sería:
Code: | fix_libtool_files.sh 3.3.6 |
Cambia 3.3.6 por la versión que muestre gcc-config anterior a la 3.4.4. En cuanto ejecutes ese comando todo debería compilar perfectamente si haces un
Code: | env-update && source /etc/profile |
Yo volvería a compilar todo lo que hayas compilado con el problema en las libtool, porque imagino que antes o después fallará. |
|
Back to top |
|
|
Antares-1 Tux's lil' helper
Joined: 02 Dec 2005 Posts: 105
|
Posted: Mon Dec 19, 2005 3:16 pm Post subject: |
|
|
Que yo sepa, nunca actualize los GCC, de hecho, esto vino directamente con el Stage 3 de Gentoo Linux 2005.1...
Asi que seguro hoy a la tarde pruebo para ver si lo puedo solucionar con la guía que me diste.
GRACIAS. |
|
Back to top |
|
|
Antares-1 Tux's lil' helper
Joined: 02 Dec 2005 Posts: 105
|
Posted: Mon Dec 19, 2005 9:59 pm Post subject: |
|
|
Lo que hice fue esto:
y me tiro esto:
Code: | [1] i686-pc-linux-gnu-3.3.5-20050130 *
[2] i686-pc-linux-gnu-3.3.5-20050130-hardened
[3] i686-pc-linux-gnu-3.3.5-20050130-hardenednopie
[4] i686-pc-linux-gnu-3.3.5-20050130-hardenednopiessp
[5] i686-pc-linux-gnu-3.3.5-20050130-hardenednossp |
Si me guio por la explicación hice esto:
Code: | fix_libtool_files.sh 3.3.5 (MEPA que acá esta el error)
* Scanning libtool files for hardcoded gcc library paths...
* [1/7] Scanning /lib ...
* [2/7] Scanning /usr/lib ...
* FIXING: /usr/lib/libdb_cxx-4.2.la ...[]
* [3/7] Scanning /usr/games/lib ...
* [4/7] Scanning /usr/i686-pc-linux-gnu/lib ...
* [5/7] Scanning /usr/kde/3.4/lib ...
* [6/7] Scanning /usr/local/lib ...
* [7/7] Scanning /usr/qt/3/lib ...
env-update && source /etc/profile |
y de NUUUUEVOOOO el mismo error:
Code: | /bin/sed: can't read /usr/lib/gcc-lib/i386-pc-linux-gnu/3.3.5-20050130/libstdc++.la: No such file or directory
libtool: link: `/usr/lib/gcc-lib/i386-pc-linux-gnu/3.3.5-20050130/libstdc++.la' is not a valid libtool archive
make: *** [libSDL_image.la] Error 1
!!! ERROR: media-libs/sdl-image-1.2.4 failed.
!!! Function src_compile, Line 38, Exitcode 2
!!! emake failed |
Como te decia antes, jamas actualize nada, solamente instale Gentoo Linux 2005.1 y el error ya vino con el. Por otra parte, hasta ahora son pocos los programas que me origina este error, pero es mejor prevenirlo ahora que andar sufriendo a futuro. |
|
Back to top |
|
|
LinuxBlues l33t
Joined: 26 Mar 2005 Posts: 892
|
Posted: Mon Dec 19, 2005 10:14 pm Post subject: |
|
|
Nekki-Basara wrote: | Lo que hice fue esto:
y me tiro esto:
Code: | [1] i686-pc-linux-gnu-3.3.5-20050130 * |
Code: | /bin/sed: can't read /usr/lib/gcc-lib/i386-pc-linux-gnu/3.3.5-20050130/libstdc++.la |
|
Bien, observa que el primero pone i686-pc-linux-gnu y el seguno i386-pc-linux-gnu... Es completamente normal que no lo encuentre, ¿te importaría compartir tu CHOST en /etc/make.conf?
Los devs de gentoo se han aburrido de crear package-cds para todos los procesadores y ahora sólo hay binarios que únicamente funcionan si no cambias el CHOST que al parecer dejan por defecto en los stage3 ahora: i386-pc-linux-gnu. Lamentable, pero cierto.
Cambia tu CHOST a CHOST="i686-pc-linux-gnu" en /etc/make.conf y espero que se resuelvan tus problemas. Si busca libstdc++ en i386, seguro que no lo puede encontrar con esa salida de gcc-config -l |
|
Back to top |
|
|
Antares-1 Tux's lil' helper
Joined: 02 Dec 2005 Posts: 105
|
Posted: Tue Dec 20, 2005 8:45 pm Post subject: |
|
|
Como te decía antes, nunca instalé ni actualize GCC... lo que si te puedo decir es que mi variable CHOST intacta en el make.conf estubo siempre asi:
Code: | USE="dvdr vcd dvd cdr cdparanoia -X opengl xv fbcon -directfb gpm gphoto2 alsa -arts kde qt gtk aalib ncurses sd1 svga gif jpeg png tiff avi mpeg quicktime divx4linux mp3 msn icq mpeg off oggvorbis oss sse 3dnow mmx vorbis xmms xvid yahoo -gnome bzip2 mozilla encode"
CFLAGS="-march=athlon -O3 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
ACCEPT_KEYWORDS="~x86"
PORTAGE_TMPDIR=/var/tmp
PORTDIR=/usr/portage
DISTDIR=${PORTDIR}/distfiles
PKGDIR=${PORTDIR}/packages
AUTOCLEAN="yes" |
A ver si me puedes tirar UNA MANITO mas con esto. |
|
Back to top |
|
|
|