Foros del Web » Administración de Sistemas » Unix / Linux »

gcc, driver SpeedTouch y Linux para 64 bits.

Estas en el tema de gcc, driver SpeedTouch y Linux para 64 bits. en el foro de Unix / Linux en Foros del Web. Hola a todos. Siendo que mi anterior Motherboard no quizo arrancar mas, tuve que comprarme uno nuevito y de paso actualice procesador y memorias. Adquiri ...
  #1 (permalink)  
Antiguo 26/09/2005, 12:27
Avatar de AleSanchez
Colaborador
 
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires, Argentina
Mensajes: 3.692
Antigüedad: 20 años, 2 meses
Puntos: 47
gcc, driver SpeedTouch y Linux para 64 bits.

Hola a todos.
Siendo que mi anterior Motherboard no quizo arrancar mas, tuve que comprarme uno nuevito y de paso actualice procesador y memorias.
Adquiri un precioso AMD Sempron 2400+ de 64 bits.

El problema viene al querer instalar una distribucion Linux para 64 bits.

Yo venia con Mandrake 2005 para i586 y andaba de maravillas. El tema es que el 2005 para x86_64 solo trae un CD en el que quedan muchas aplicaciones afuera, entre ellas la que mas me interesa, el gcc y todas las librerias de desarrollo, incluido los fuentes del kernel.
Los repositorios en internet traen todo lo que necesito pero instalarlo se vuelve una tarea de monos, al tener que ir a rpmfind.net, fijarme las dependencias, bajar los paquetes que necesito y volver al linux para encontrar que me falta algo mas.

Preguta 1: Hay alguna manera de que URPMI me diga las dependencias de cierto paquete a instalar sin tener que bajarme todo el FTP y armar un repositorio local?

Otro tema. Tengo que compilar la aplicacion que maneja el driver de mi modem ADSL USB, un Zyxel 630 C1 con chiptet conexant. El tema es que esta aplicacion me pide ciertas librerias de 32 bits que no estan en los repositorios de 32 bits.

Pregunta 2: Es necesario instalar librerias de 32 bits sobre el sistema 64?

Por ahora nada mas. Saludos.

Última edición por AleSanchez; 26/09/2005 a las 14:53
  #2 (permalink)  
Antiguo 26/09/2005, 12:35
Avatar de -Defero-
Colaborador
 
Fecha de Ingreso: julio-2004
Ubicación: Guipúzcoa
Mensajes: 4.776
Antigüedad: 20 años, 4 meses
Puntos: 76
Cita:
Iniciado por AleSanchez
(...) Preguta 1: Hay alguna manera de que URPMI me diga las dependencias de cierto paquete a instalar sin tener que bajarme todo el FTP y armar un repositorio local? (...)
Se me ocurre una posible solución, en plan "idea de bombero". Desde otro equipo (u otro sistema operativo) te bajas los archivos de los índices de los repositorios, y te montas un repositorio local que no contenga los archivos RPM, sino sólo los índices. Haces como si fueras a instalar desde ese repositorio, y URPMI te dirá "se instalarán los paquetes A, B, y C para satisfacer dependencias". En ese momento abortas la instalación dado que no dispones en tu pseudo-repositorio de dichos paquetes, y entonces te los descargas desde otro equipo (o sistema operativo).

No sé exactamente cómo habría que hacerlo, y ni siquiera sé si funcionará, pero por probar no pierdes más que algo de tiempo y parte de tu paciencia.
__________________
abogado en Errenteria + procuradora en San Sebastián = equipo imparable
  #3 (permalink)  
Antiguo 26/09/2005, 13:37
Avatar de Koveart
Colaborador
 
Fecha de Ingreso: julio-2002
Ubicación: Colombia
Mensajes: 4.407
Antigüedad: 22 años, 4 meses
Puntos: 29
creo que lo que necesitas es urpmf pero no estoy seguro, revisa vien la documentación del gestor en cuestión.

saludos
__________________
“Los soñadores no existen, se lo dice un soñador que ha tenido el privilegio de ver realidades que ni siquiera fue capaz de soñar”
  #4 (permalink)  
Antiguo 26/09/2005, 20:51
Avatar de AleSanchez
Colaborador
 
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires, Argentina
Mensajes: 3.692
Antigüedad: 20 años, 2 meses
Puntos: 47
Ya instale el gcc y esta funcionando ok.
Estoy tratando de compilar la aplicacion para manejar el modem, ya que el modulo del modem pude compilarlo correctamente. Anteriormente en el i686 me habia funcionado asi sin problemas.

Ahora, me di cuenta que al tratar de compilarlo el programa busca algunos archivos .h (usb.h por ejemplo) que lo busca en /usr/include, y yo los tengo en /usr/include/linux.

¿Hay alguna manera de decirle al gcc que trate de encontrar los archivos .h en otra ubicacion que no sea la predeterminada?

Yo habia podido compilarlo instalando el libusb y el libusb-devel desde un RPM sin distribucion especifica que me ponia los archivos directamente en /usr/include, pero ahora no puedo hacer eso porque son para i386.

PD: Pongo las preguntas en negrita porque siento que escribo mucho, para que puedan saltear si quieren toda las cosas que pongo...
  #5 (permalink)  
Antiguo 26/09/2005, 20:53
Avatar de Koveart
Colaborador
 
Fecha de Ingreso: julio-2002
Ubicación: Colombia
Mensajes: 4.407
Antigüedad: 22 años, 4 meses
Puntos: 29
No sé si ldd es lo que estás buscando... crea rutas hacia ciertas librerias pero para todo el SO no solamente para gcc...
Código:
man ldd
Saludos
__________________
“Los soñadores no existen, se lo dice un soñador que ha tenido el privilegio de ver realidades que ni siquiera fue capaz de soñar”
  #6 (permalink)  
Antiguo 27/09/2005, 04:29
Avatar de AleSanchez
Colaborador
 
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires, Argentina
Mensajes: 3.692
Antigüedad: 20 años, 2 meses
Puntos: 47
es de la familia del ldd, pero creo que el comando es ldconfig pero leyendo el man sirve para linkear librerias, no headers que es lo que yo necesito.

Saludos.
  #7 (permalink)  
Antiguo 27/09/2005, 06:59
Avatar de Koveart
Colaborador
 
Fecha de Ingreso: julio-2002
Ubicación: Colombia
Mensajes: 4.407
Antigüedad: 22 años, 4 meses
Puntos: 29
Efectivamente se hace con ldconfig pero a la larga ¿no lo probaste?

Saludos
__________________
“Los soñadores no existen, se lo dice un soñador que ha tenido el privilegio de ver realidades que ni siquiera fue capaz de soñar”
  #8 (permalink)  
Antiguo 27/09/2005, 14:04
Avatar de AleSanchez
Colaborador
 
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires, Argentina
Mensajes: 3.692
Antigüedad: 20 años, 2 meses
Puntos: 47
No lo probe, es que no entiendo bien como funciona.
Ahora que tengo el Linux con un router puedo pasarles bien los errores.

Actualmente tengo este error:
Código:
gcc -O2 -Wstrict-prototypes -fomit-frame-pointer -pipe -march='athlon64' -Wall -DLINUX -I../include -lusb -lpthread cxload.c -o cxload
cxload.c:132:17: usb.h: No such file or directory
Tuve que cambiarle la arquitectura a mano porque me detectaba "x86_64" y el gcc me daba error.

Estuve mirando por ahi, y por lo que entendi la opcion "-lusb" es la que trata de ubicar la famosa libreria que yo tengo en otro lado.
No se exactamente si estoy diagnosticando bien el problema o estoy entendiendo cualquier cosa.
Alquien que me ayude!!!! :-p
  #9 (permalink)  
Antiguo 27/09/2005, 14:21
Avatar de ociomax
Colaborador
 
Fecha de Ingreso: mayo-2002
Ubicación: Temuco, Chile
Mensajes: 5.595
Antigüedad: 22 años, 5 meses
Puntos: 35
¿Tienes instalado kernel-headers (o lo que corresponda a tu distribución)?
__________________
Christian González, "OCIOMax"
http://chgonzalez.blogspot.com
http://twitter.com/chgonzalez
  #10 (permalink)  
Antiguo 27/09/2005, 15:01
Avatar de AleSanchez
Colaborador
 
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires, Argentina
Mensajes: 3.692
Antigüedad: 20 años, 2 meses
Puntos: 47
Si es lo mismo que el kernel-source, si, uso Mandriva 2005 LE x86_64, y en los repositorios solo esta ese.
El usb.h viene en el paquete lib64usb, y por lo que veo el programa que quiero compilar lo busca en el /usr/include, y yo los tengo en /usr/include/linux.
Cuando pude compilarlo en el Mandriva 2005 LE i586 tuve que instalar unos paquetes libusb que baje de internet que me ponian los archivos en donde los buscaba el programa que estoy compilando.
El problema es que son para i586 y no me compila tampoco instalandolos ahora sobre el x86_64.

Me estoy volviendo loco!!!! voy a terminar comprandome un modem adsl Ethernet asi no joden mas con el USB.

Saludos.
  #11 (permalink)  
Antiguo 27/09/2005, 15:11
Avatar de ociomax
Colaborador
 
Fecha de Ingreso: mayo-2002
Ubicación: Temuco, Chile
Mensajes: 5.595
Antigüedad: 22 años, 5 meses
Puntos: 35
¿Y has probado copiar ese archivo al directorio /usr/include? O al menos crear un enlace simbólico...
__________________
Christian González, "OCIOMax"
http://chgonzalez.blogspot.com
http://twitter.com/chgonzalez
  #12 (permalink)  
Antiguo 27/09/2005, 16:29
Avatar de Koveart
Colaborador
 
Fecha de Ingreso: julio-2002
Ubicación: Colombia
Mensajes: 4.407
Antigüedad: 22 años, 4 meses
Puntos: 29
amigo AleSanchez tienes que editar el archivos /etc/ld.so.conf inclyendo el path donde está tu nueva librería. Meparece que es lo que tu necesitas defiitivamente. Si no existe créalo. Este archivo es muy útil cuando se compilan paquetes desde el código fuente o el kernel.

Te dejo este interesante enlace

Saludos
__________________
“Los soñadores no existen, se lo dice un soñador que ha tenido el privilegio de ver realidades que ni siquiera fue capaz de soñar”

Última edición por Koveart; 27/09/2005 a las 16:48
  #13 (permalink)  
Antiguo 28/09/2005, 07:15
Avatar de AleSanchez
Colaborador
 
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires, Argentina
Mensajes: 3.692
Antigüedad: 20 años, 2 meses
Puntos: 47
Me da verguenza contrarles esto pero el problema estaba entre la silla y el monitor. No estaba correctamente instalado el paquete lib64usb-devel. Lo instalé y compilo correctamente!!!

Ahora el problema es otro. El modem funciona con dos partes, una, el modulo del Kernel, y otra, la aplicacion que lo maneja.
La aplicacion funciona perfecto, el problema viene al querer levantar el modulo.
Luego de copiarlo dentro del /lib/modules y hacer un 'depmod -a' al levantarlo con modprobe da este error:

Código:
FATAL: Error inserting speedtch (/lib/modules/2.6.11-6mdk/kernel/drivers/usb/atm/speedtch.ko.gz): Input/output error
No se si tendrá algo que ver con la arquitectura del procesador al compilar, ya que para i586 andaba joya.
Es solo un archivo speedtch.c y su Makefile.

Makefile:
Código:
PACKAGE := speedtch
VERSION := 1.8z
SOURCES := Makefile speedtch.c
SPEEDTCH := speedtch.c
DIST_EXTRA :=
DISTFILES := $(SOURCES) $(DIST_EXTRA)
KERNEL_DIR := /lib/modules/$(shell uname -r)/build
distdir := $(PACKAGE)-$(VERSION)
obj-m := speedtch.o
ifndef KERNELRELEASE
all:    $(SOURCES)
        $(MAKE) modules -C $(KERNEL_DIR) SUBDIRS=$(shell pwd)
install:
        $(MAKE) modules_install -C $(KERNEL_DIR) SUBDIRS=$(shell pwd)
clean:
        -rm -f *.ko *.o
        -rm -f *.mod.* .*.cmd
endif
$(distdir): $(DISTFILES)
        mkdir -p $(distdir)
        cp -p $(DISTFILES) $(distdir)
dist:   $(distdir)
        tar czf $(distdir).tar.gz $(distdir)
        rm -rf $(distdir)
.DELETE_ON_ERROR:
Gracias por todo.
Saludos!!!

Última edición por AleSanchez; 28/09/2005 a las 07:29
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:57.