Compilar el Driver de ZT DVBTSTUSB falla y no lo comprendo...

Imagen de Scorpyo82
-2 puntos

Hola a todos.
He colocado este hilo en "Kernel linux" porque creo que las instrucciones que estoy siguiendo son para eso.

Resulta que me he comprado recelosamente un receptor DVB por USB de la marca Zaapa que es compatible con linux.

El caso es que no paro de darle vueltas al tema, googleando y revisando las instrucciones... pero nada de nada.
Para empezar el CD no tiene drivers, con lo que tuve que acudir a la página de soporte de Zaapa.
En la página de soporte, tras percatarme de que el enlace estaba roto para la descarga del driver de linux me di cuenta de que el enlace que tienen puesto está mal escrito (eso le pasa a otro que no entienda mucho y se vuelve loco buscando el driver) total, que lo descargo y esta son las instrucciones para compilarlo:

Driver Installation in Linux

1 Copy the folder '080821_rtd2831u_driver' to the desktop.

2 Click 'Applications' -> 'Accessories' -> 'Terminal' to enter the console mode.

3 Type 'cd /root/Desktop/080821_rtd2831u_driver' to enter the folder.

4 In the folder '080821_rtd2831u_driver', type the following command to compile & install.

a. Type 'cp -f *.* /usr/src/linux-$(uname -r)'/drivers/media/dvb/dvb-usb' to copy all files into linux kernel code.

b. add the following lines to Makefile in /usr/src/linux-$(uname -r)'/drivers/media/dvb/dvb-usb.

dvb-usb-rtl2831u-objs = math_mpi.o foundation_2831u.o demod_rtl2830.o tuner_demod_io.o tuner_mxl5005s.o mt_spuravoid.o \

mt_userdef.o mt2060_basic.o tuner_ah.o MT2060Tuner.o rtd2830.o rtd2830u.o

obj-$(CONFIG_DVB_USB_RTL2831U) += dvb-usb-rtl2831u.o

c. add the following lines to Kconfig in /usr/src/linux-$(uname -r)'/drivers/media/dvb/dvb-usb.

config DVB_USB_RTL2831U

tristate "Realtek RTL2831U DVB-T USB2.0 support"

depends on DVB_USB

help

Realtek RTL2831U DVB-T driver.

d. Type 'cd /usr/src/linux-$(uname -r)' and type 'make menuconfig'

Device Drivers --->

Multimedia devices --->

Digital Video Broadcasting Devices --->

[*] DVB For Linux

DVB Core Support

...................

Support for various USB DVB devices----->

.................................

Realtek RTL2831U DVB-T USB2.0 support

And 'YES' to save your new kernel configuration.

e. Type 'make modules'

f. Type 'make modules_install'

5 Plug in our DVB-T USB device;

6 Type 'lsmod | grep dvb', and it will show

dvb_usb_rtl2831u

dvb_usb

dvb_core

i2c_core

Your driver has been installed successfully.

PS.You may try to install the applications --'Xine'and 'linuxtv-dvb-apps'.

Q&A:

1. how to switch two IR types?

modify "rtd2830u.c" in Line 11 and Line 12

ex1 : (support NEC)

#define RTL2831U_NEC_PROTOCOL

//#define RTL2831U_RC5_PROTOCOL

ex2 : (support RC5)

//#define RTL2831U_NEC_PROTOCOL

#define RTL2831U_RC5_PROTOCOL

2. how to edit IR keymap?

modify "rtd2830u.c"

static struct dvb_usb_rc_key rtd2831u_nec_keys[] ==> NEC keymap

static struct dvb_usb_rc_key rtd2831u_rc5_keys[] ==> RC5 keymap

you should edit the IR reveived key codes and its mapping keyboard key(the last one) in the above two structure.

ex:

static struct dvb_usb_rc_key rtd2831u_nec_keys [] =

{

{ 0x86, 0x79, KEY_A }, // " 0x4f, 0x50, 0x86, 0x79" IR code is mapped to keyboard key "A"

{ 0x93, 0x6c, KEY_B }, // " 0x4f, 0x50, 0x93, 0x6c" IR code is mapped to keyboard key "B"

{ 0x8f, 0x70, KEY_UP },

{ 0x9d, 0x62, KEY_DOWN},

};

****When receiving "0x4f, 0x50, 0x86, 0x79" IR codes, this driver ONLY checked the last two codes("0x86, 0x79") and mapped it to keyboard key "A".

Cuando llego al punto de crear los modulos con "make modules" (todo como root) porque así parece indicarlo las intrucciones... me sale lo siguiente:

  CHK     include/linux/version.h
  CHK     include/generated/utsrelease.h
make[1]: *** No hay ninguna regla para construir el objetivo «kernel/bounds.c», necesario para «kernel/bounds.s».  Alto.
make: *** [prepare0] Error 2

Tengo instalado:
libncurses5-dev
kernel-package
build-essential

Pero nada.
Seguí las instrucciones de:
http://helpdesk.gnserver.org/index.php/manuales/linux/146-drivers-rtl2831u-zaapa-tdt-usb-zt-dvbtstusb-en-ubuntu-karmic
Son practicamente las mismas instrucciones con alguna diferencia, pero nada.

De todas formas, yo lo estoy intentando compilarlo en la carpeta /usr/src/linux-headers-2.6.35-30-generic-pae puesto que la carpeta a la que apunta el comando de las intrucciones tanto para copiar los archivos como para moverme a el no existe.

Apuntaría a la carpeta: /usr/src/linux-2.6.35-30-generic-pae/

Y las que tengo son estas:

root@pc:/usr/src# ls
fglrx-8.780                          linux-headers-2.6.35-30
linux-headers-2.6.35-22              linux-headers-2.6.35-30-generic
linux-headers-2.6.35-22-generic      linux-headers-2.6.35-30-generic-pae
linux-headers-2.6.35-28              linux-source-2.6.35
linux-headers-2.6.35-28-generic      linux-source-2.6.35.tar.bz2
linux-headers-2.6.35-28-generic-pae  virtualbox-ose-3.2.8

Esto con un lsusb:

root@pc:/usr/src# lsusb
Bus 002 Device 009: ID 1d19:1102 Dexatek Technology Ltd. DK mini DVB-T Dongle
Bus 002 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 04f2:b128 Chicony Electronics Co., Ltd 
Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root h

ub

Ya no sé que mas datos daros, uso la distro de ubuntu 10.10 con el nucleo 2.6.35-30-generic-pae y nada, no lo consigo, a ver si alguien sabe decirme que me falta.

Un saludo y gracias de antemano.

PD: Perdonar por el tocho, pero incluso así, faltarán datos despues.. jejeje

Imagen de furtaxi
+1
0
-1

(He acabado por odiar profundamente la TV, por lo que jamás me compraría algo así) :)

Así que no puedo comprobarlo, pero he visto alguna cosa en tu "resumen" :)

Al principio del tutorial, se dice que lo guardes en el escritorio. Bien, antes, era /home/_usuario_/Desktop, pero en la versión en castellano de Ubuntu, ahora es /home/_usuario_/Escritorio

Es posible que no estés trabajando donde debes.

Por otro lado, ésto:
linux-$(uname -r)'
lo debes substituir por el nombre completo de tu kernel actual. En realidad, ésto es un "comodín" que el terminal substituye por el contenido de una variable, que indica el kernel, pero si, antes de empezar, haces un

uname -r

y lo copias y pegas aun archivo de texto, luego lo puedes poner bien, con más copy/pastes, en las órdenes para el terminal.

Ten cuidado, porque no todo son órdenes directas en terminal, sino que tienes que editar algunos archivos, usa gedit para ello (punto b, por ejemplo).

Y creo (no estoy seguro) que antes del paso de contectar el aparato, conviene reiniciar, para que se ponga en marcha el kernel con los módulos añadidos.

+1
0
-1

Mi web : www.vigovideo.es
Buscar es más rápido que esperar una respuesta.

Imagen de Scorpyo82
+1
0
-1

Gracias furtaxi, todo eso lo sé, de hecho pasé de trabajar en el escritorio, lo tengo en ~/Descargas/00bla-bla-bla jejeje
El caso, es que la carpeta que enfocaría sería la:
/usr/src/linux-2.6.35-30-generic-pae
Y esta no existe, así que estoy trabajando en:
/usr/src/linux-headers-2.6.35-30-generic-pae

No sé si será correcto.

Gracias.

PD: Ya he modificado con gedit lo demás. ;D

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de rioport
+1
0
-1

Estas trabajando sobre los headers, no creo que logres algo ahí.
Que lo que vas a hacer es compilar un kernel, un poco de ayuda acá.

+1
0
-1

-- GC --

Imagen de rioport
+1
0
-1

En el punto a, es:

sudo cp -f *.* /usr/src/linux-source-2.6.35/drivers/media/dvb/dvb-usb

En el b, usando gedit para editar el makefile:

sudo gedit /usr/src/linux-source-2.6.35/drivers/media/dvb/dvb-usb/Makefile

Y agregas estas lineas:

dvb-usb-rtl2831u-objs = math_mpi.o foundation_2831u.o demod_rtl2830.o tuner_demod_io.o tuner_mxl5005s.o mt_spuravoid.o mt_userdef.o mt2060_basic.o tuner_ah.o MT2060Tuner.o rtd2830.o rtd2830u.o
obj-$(CONFIG_DVB_USB_RTL2831U) += dvb-usb-rtl2831u.o

Luego en el punto c:

sudo gedit /usr/src/linux-source-2.6.35/drivers/media/dvb/dvb-usb/Kconfig

Y agregas estas lineas:

config DVB_USB_RTL2831U
tristate "Realtek RTL2831U DVB-T USB2.0 support"
depends on DVB_USB
help
Realtek RTL2831U DVB-T driver.

En el d (debes tener idea de como configurar un kernel):

cd /usr/src/linux-source-2.6.35
sudo make menuconfig

Ahí se abrirá un menú, tienes que ir a:

Device Drivers —> Multimedia support —> DVB/ATSC adapters —> Realtek RTL2831U DVB-T USB2.0 support y pulsamos M para habilitar este modulo, guardas los cambios y cierras el menú.

ó

Device Drivers -> Multimedia devices -> Digital Video Broadcasting Devices ->
[*] DVB For Linux
DVB Core Support

Luego un:

make-kpkg --initrd kernel_image kernel_headers

Eso tardará algo (dependiendo de la potencia de tú PC), al final deberías tener dos archivos deb en /usr/src.

Nota: no tengo el kernel 2.6.35, por lo tanto lo que esta entre blockquote lo debes deducir tú, también puede que te de un bonito kernel panic, en fin suerte.

+1
0
-1

-- GC --

Imagen de Scorpyo82
+1
0
-1

Todo eso ya lo hice y en el paso último me sale un montón de texto de que está trabajando hasta que llega un punto en el que sale:

make[3]: *** No hay ninguna regla para construir el objetivo «kernel/bounds.c», necesario para «kernel/bounds.s».  Alto.
make[2]: *** [prepare0] Error 2
make[2]: se sale del directorio «/usr/src/linux-headers-2.6.35-30-generic-pae»
make[1]: *** [debian/stamp/conf/kernel-conf] Error 2
make[1]: se sale del directorio «/usr/src/linux-headers-2.6.35-30-generic-pae»
make: *** [debian/stamp/conf/minimal_debian] Error 2
Failed to create a ./debian directory: Descriptor de fichero erróneo at /usr/bin/make-kpkg line 984.

Es parecido el error.

Un saludo y gracias.

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de rioport
+1
0
-1

Haber yo encontré este archivo acá, y se llama 080821_rtd2831u_linux_driver.tar.gz

Cuando lo descargue me quedo en /home/rioport/Descargas y como esto es Ubuntu, pues le dí en extraer aquí y me creó una carpeta que se llama 080821_rtd2831u_linux_driver, por tanto la ruta fue:
/home/rioport/Descargas/080821_rtd2831u_linux_driver

Entonces me dirijo a esa carpeta con:

cd /home/rioport/Descargas/080821_rtd2831u_linux_driver

Por tanto cambiemos un poco el punto a, ahora es:

sudo cp -f *.c *.h /usr/src/linux-source-2.6.35/drivers/media/dvb/dvb-usb/

Lo demás es igual a lo que escribí antes.

+1
0
-1

-- GC --

Imagen de Scorpyo82
+1
0
-1

Yo te lo agradezco rioport, el caso es que todo eso me sale bien, el problema es a la hora de compilar.

Con el tema de las rutas no me suelo liar, se en todo momento donde estoy y donde están las cosas, no suelo liarme, ya me acostumbré de sobra con las rutas en linux y como tratar a los comandos según en que ruta esté.

Ahora estoy intentando como me comentaste arriba, he descargado el codigo fuente, lo estoy descompriendo y voy a hacerlo todo cambiando todo hacia esa ruta.

Ya os cuento...

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de rioport
+1
0
-1

Si te da error al encontrar los directorios entonces te falta extraer el contenido del archivo (pues es lo primero que debes hacer antes de empezar a copiar archivos). Lo haces con esto:

sudo tar xvjf /usr/src/linux-source-2.6.35/linux-source-2.6.35.tar.bz2
+1
0
-1

-- GC --

Imagen de Scorpyo82
+1
0
-1

Ya lo hice gracias :D
Voy por el paso de
make modules
Y sorpresa! por ahora no falla (aún está trabajando el comando) , así que ahora os cuento.

Gracias.

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de Scorpyo82
+1
0
-1

Pues nada, me salió esto al final:

In file included from drivers/media/dvb/dvb-usb/tuner_mxl5005s.h:429, from drivers/media/dvb/dvb-usb/tuner_mxl5005s.c:13: drivers/media/dvb/dvb-usb/tuner_base_2831u.h:16: fatal error: foundation.h: No existe el fichero o el directorio compilation terminated. make[4]: *** [drivers/media/dvb/dvb-usb/tuner_mxl5005s.o] Error 1 make[3]: *** [drivers/media/dvb/dvb-usb] Error 2 make[2]: *** [drivers/media/dvb] Error 2 make[1]: *** [drivers/media] Error 2 make: *** [drivers] Error 2
+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de rioport
+1
0
-1

Ese es otro problema que no tiene que ver con lo que hiciste, se soluciona editando el archivo que da error, con:

sudo gedit /usr/src/linux-source-2.6.35/drivers/media/dvb/dvb-usb/tuner_base_2831u.h

Busca la linea que dice:

#include “foundation.h”

y cambiala por:

#include "foundation_2831u.h"

Guardas, cierras gedit y de nuevo:

sudo make-kpkg --initrd kernel_image kernel_headers

Acá un poco más de información:
http://helpdesk.gnserver.org/index.php/manuales/linux/146-drivers-rtl283...
http://metalzonix.wordpress.com/2009/11/05/instalar-drivers-rtl2831u-zt-...

Aunque no hay que hacerlo como receta de cocina pues hay que aplicar un poco de sentido común y tener paciencia para probar.

+1
0
-1

-- GC --

Imagen de Scorpyo82
+1
0
-1

Hummm eso no lo hice, estaba ya solo mirando las instrucciones que vienen con el paquete, voy a probar y te cuento.

Gracias.

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de Scorpyo82
+1
0
-1

Está en ello.... si esto furula, me tengo que hacer un script porque tiene una historia que flipas... jajaja

A mi me gusta aprender a hacer las cosas, pero el tema es que lo de cambiar esos parámetros, como que no es algo que se haga habitualmente creo yo.

Lo de compilar si lo haré a mano, para no perder la costumbre, porque supongo que con cada actualización del núcleo tendré que hacerlo.... ¿o no?

Bueno, está compilando, ahora os digo.

Mil gracias.

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de Scorpyo82
+1
0
-1

Nada...

[............etc................]
c087f00f 00c59301   R_386_32 c07eba40  jiffies
c087f1f3 00c59301   R_386_32 c07eba40  jiffies
c087f555 00c59301   R_386_32 c07eba40  jiffies
c087f971 00c59301   R_386_32 c07eba40  jiffies
c087fa81 00c59301   R_386_32 c07eba40  jiffies
c087fb74 00c59301   R_386_32 c07eba40  jiffies
c0881830 00c59301   R_386_32 c07eba40  jiffies

  GZIP    arch/x86/boot/compressed/vmlinux.bin.gz
  MKPIGGY arch/x86/boot/compressed/piggy.S
  AS      arch/x86/boot/compressed/piggy.o
  LD      arch/x86/boot/compressed/vmlinux
  ZOFFSET arch/x86/boot/zoffset.h
  AS      arch/x86/boot/header.o
  CC      arch/x86/boot/version.o
  LD      arch/x86/boot/setup.elf
  OBJCOPY arch/x86/boot/setup.bin
  OBJCOPY arch/x86/boot/vmlinux.bin
  BUILD   arch/x86/boot/bzImage
Root device is (8, 5)
Setup is 13724 bytes (padded to 13824 bytes).
System is 4285 kB
CRC 659bdef
Kernel: arch/x86/boot/bzImage is ready  (#2)
make[1]: se sale del directorio «/usr/src/linux-source-2.6.35»
/usr/bin/make    ARCH=i386 \
			     modules
make[1]: se ingresa al directorio «/usr/src/linux-source-2.6.35»
  CHK     include/linux/version.h
  CHK     include/generated/utsrelease.h
  CALL    scripts/checksyscalls.sh
  CC [M]  drivers/media/dvb/dvb-usb/tuner_mxl5005s.o
drivers/media/dvb/dvb-usb/tuner_mxl5005s.c: In function ‘mxl5005s_SetRegMaskBits’:
drivers/media/dvb/dvb-usb/tuner_mxl5005s.c:628: warning: ‘RegByte’ may be used uninitialized in this function
  CC [M]  drivers/media/dvb/dvb-usb/mt_spuravoid.o
  CC [M]  drivers/media/dvb/dvb-usb/mt_userdef.o
  CC [M]  drivers/media/dvb/dvb-usb/mt2060_basic.o
  CC [M]  drivers/media/dvb/dvb-usb/tuner_ah.o
  CC [M]  drivers/media/dvb/dvb-usb/MT2060Tuner.o
  CC [M]  drivers/media/dvb/dvb-usb/rtd2830.o
  CC [M]  drivers/media/dvb/dvb-usb/rtd2830u.o
drivers/media/dvb/dvb-usb/rtd2830u.c:28: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:28: warning: (near initialization for ‘rtd2831u_nec_keys[0]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:29: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:29: warning: (near initialization for ‘rtd2831u_nec_keys[1]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:30: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:30: warning: (near initialization for ‘rtd2831u_nec_keys[2]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:31: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:31: warning: (near initialization for ‘rtd2831u_nec_keys[3]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:32: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:32: warning: (near initialization for ‘rtd2831u_nec_keys[4]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:33: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:33: warning: (near initialization for ‘rtd2831u_nec_keys[5]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:34: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:34: warning: (near initialization for ‘rtd2831u_nec_keys[6]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:35: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:35: warning: (near initialization for ‘rtd2831u_nec_keys[7]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:36: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:36: warning: (near initialization for ‘rtd2831u_nec_keys[8]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:37: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:37: warning: (near initialization for ‘rtd2831u_nec_keys[9]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:39: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:39: warning: (near initialization for ‘rtd2831u_nec_keys[10]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:40: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:40: warning: (near initialization for ‘rtd2831u_nec_keys[11]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:41: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:41: warning: (near initialization for ‘rtd2831u_nec_keys[12]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:43: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:43: warning: (near initialization for ‘rtd2831u_nec_keys[13]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:45: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:45: warning: (near initialization for ‘rtd2831u_nec_keys[14]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:46: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:46: warning: (near initialization for ‘rtd2831u_nec_keys[15]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:47: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:47: warning: (near initialization for ‘rtd2831u_nec_keys[16]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:49: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:49: warning: (near initialization for ‘rtd2831u_nec_keys[17]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:50: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:50: warning: (near initialization for ‘rtd2831u_nec_keys[18]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:51: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:51: warning: (near initialization for ‘rtd2831u_nec_keys[19]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:53: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:53: warning: (near initialization for ‘rtd2831u_nec_keys[20]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:54: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:54: warning: (near initialization for ‘rtd2831u_nec_keys[21]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:55: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:55: warning: (near initialization for ‘rtd2831u_nec_keys[22]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:57: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:57: warning: (near initialization for ‘rtd2831u_nec_keys[23]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:58: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:58: warning: (near initialization for ‘rtd2831u_nec_keys[24]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:60: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:60: warning: (near initialization for ‘rtd2831u_nec_keys[25]’)
drivers/media/dvb/dvb-usb/rtd2830u.c:61: warning: excess elements in struct initializer
drivers/media/dvb/dvb-usb/rtd2830u.c:61: warning: (near initialization for ‘rtd2831u_nec_keys[26]’)
drivers/media/dvb/dvb-usb/rtd2830u.c: In function ‘rtd2831u_rc_key_to_event’:
drivers/media/dvb/dvb-usb/rtd2830u.c:143: error: ‘struct dvb_usb_rc_key’ has no member named ‘custom’
drivers/media/dvb/dvb-usb/rtd2830u.c:143: error: ‘struct dvb_usb_rc_key’ has no member named ‘data’
make[5]: *** [drivers/media/dvb/dvb-usb/rtd2830u.o] Error 1
make[4]: *** [drivers/media/dvb/dvb-usb] Error 2
make[3]: *** [drivers/media/dvb] Error 2
make[2]: *** [drivers/media] Error 2
make[1]: *** [drivers] Error 2
make[1]: se sale del directorio «/usr/src/linux-source-2.6.35»
make: *** [debian/stamp/build/kernel] Error 2

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de rioport
+1
0
-1

Ese código trae sus errores que bueno!, yo diría que mejor te bajes uno de la página www.kernel.org, el 2.6.39 por ejemplo. Y sobre ese trabajes.


Acá según ya pudieron hacerlo funcionar:
http://ubuntuforums.org/showpost.php?p=10968147&postcount=77
+1
0
-1

-- GC --

Imagen de Scorpyo82
+1
0
-1

:S voy a investigar.. gracias por los links

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de rioport
+1
0
-1

En está página, hay un usuario que tiene una tarjeta con el mismo chip (1d19:1102) que el tuyo y logró hacerla funcionar y no es con este driver que estás intentando, pero:

  • Usa ubuntu Karmic Koala con Kernel 2.6.31 de 64 bits
  • No detalla bien cómo lo hizo

Aquí y aquí.

Creo que es todo lo que te puedo ayudar, si yo fuese tú ya lo hubiese tirado a la basura, pero espero que tú tengas más paciencia XD.

Saludos y también suerte.

+1
0
-1

-- GC --

Imagen de Scorpyo82
+1
0
-1

Nada, que no logro compilar el núcleo de ninguna manera... estoy cansado, son las 03:54 de la mañana aquí en España así que voy a acostarme.

Mañana será otro día, a ver si con la mente descansada se me ocurre algo.

Un saludo y gracias a todos.

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de rioport
+1
0
-1

Por acá he leído que solo se necesita el firmware, que no hace falta compilar todo el kernel.

Bien, para comprobarlo, has esto:

1: Desconecta el dispositivo

2: Limpia el bufer de dmesg

sudo dmesg -c

3: Conecta el dispositivo al puerto USB

4 consulta el bufer de dmesg:

dmesg

Ve si hay algún mensaje que de alguna pista, de todos modos pegalo acá para ver si lo reconoce, pero le falta el firmware, o si de plano no lo reconoce y hay que seguir compilando el kernel.

+1
0
-1

-- GC --

Imagen de Scorpyo82
+1
0
-1

Hola de nuevo :D

Esto es lo que me sale tras limpiar dmesg conectar el dvb y revisar el dmesg de nuevo.

scorpyo@pc:~$ dmesg 
[  363.238353] usb 2-1.4: new high speed USB device using ehci_hcd and address 4
[  365.370321] SetHwReg8192SE():HW_VAR_AC_PARAM eACI:0:a425

Y tras esperar un momento mas largo sale esto otro:

scorpyo@pc:~$ dmesg 
[  363.238353] usb 2-1.4: new high speed USB device using ehci_hcd and address 4
[  365.370321] SetHwReg8192SE():HW_VAR_AC_PARAM eACI:0:a425
[  393.446053] LPS leave: notify AP we are awaked ++++++++++ SendNullFunctionData
[  393.446187] ===>rtl8192se_link_change():ieee->iw_mode is 2
[  393.500255] =====>rtl8192_set_chan()====ch:1
[  393.612016] =====>rtl8192_set_chan()====ch:2
[  393.722629] =====>rtl8192_set_chan()====ch:3
[  393.834574] =====>rtl8192_set_chan()====ch:4
[  393.946603] =====>rtl8192_set_chan()====ch:5
[  394.058487] =====>rtl8192_set_chan()====ch:6
[  394.170466] =====>rtl8192_set_chan()====ch:7
[  394.282399] =====>rtl8192_set_chan()====ch:8
[  394.394377] =====>rtl8192_set_chan()====ch:9
[  394.506372] =====>rtl8192_set_chan()====ch:10
[  394.618278] =====>rtl8192_set_chan()====ch:11
[  394.730264] =====>rtl8192_set_chan()====ch:12
[  394.842221] =====>rtl8192_set_chan()====ch:13
[  394.954226] =====>rtl8192_set_chan()====ch:6
[  394.964347] ===>rtl8192se_link_change():ieee->iw_mode is 2
[  394.964358] rtl8192_update_cap(): WLAN_CAPABILITY_LONG_PREAMBLE
[  405.434629] SetHwReg8192SE():HW_VAR_AC_PARAM eACI:0:a425
[  425.467672] SetHwReg8192SE():HW_VAR_AC_PARAM eACI:0:a425

Es decir, se le añade solamente lo que está haciendo el wifi (que no me cuadra porque cambia mucho de canal, pero eso es otra historia)

Si te digo la verdad, he estado soñando que compilaba los drivers jajajjaa

Por cierto, estoy de acuerdo contigo, las instrucciones dan la impresión de que añaden los módulos al nucleo en caliente, no se si eso es posible, pero de la manera que aparecen parece eso enteramente.

Un saludo y gracias.

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de Scorpyo82
+1
0
-1

Ya no me fío de nada de lo que hago, no sé si debo compilar el kernel en la carpeta linux-source-2.6.35.30 o en la linux-headers-2.6.35.30-generic-pae o linux-headers-2.6.35-30 o yo que sé.

El caso es que si nos fijamos en las instrucciones cuando dice que haga un:
lsmod | grep dvb

Es como si fuese inmediatamente despues, sin instalar el núcleo... por eso me da la impresión de que lo añade al sistema en caliente, no se si eso es posible con estos tipos de archivos.

¿Alguna idea sobre eso?

Un saludo.

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de rioport
+1
0
-1

Para compilar solo algunos módulos son necesarios los headers, para compilar todo el kernel usas el linux-source.

http://studenik.varhoo.cz/blog/instalace-driveru-karty-msi-digivox-micro...

Ahí tienen los pasos para hacer funcionar una MSI Digivox que tiene el mismo chip que el tuyo, solo que en Ubuntu 10.10.

Bus 001 Device 016: ID 1d19:1102 Dexatek Technology Ltd. DK mini DVB-T Dongle 

Ahí lo hacen solo compilando módulos, no el kernel completo, pero por el chilaquil que has hecho te recomendaria purgar todos los paquetes referentes a linux-headers h, y una vez que hayas purgado los linux-headers, en /usr/src no debería haber ninguna carpeta que haga referencia a ellos, si la hay has un

cd /usr/src
sudo rm -rv linux-headers*

y los vuelves a instalar los linux-headers correspondientes a tu kernel para que pruebes lo de esa página.

+1
0
-1

-- GC --

Imagen de Scorpyo82
+1
0
-1

Gracias, me lo voy a mirar, a ver si son pasos distintos.
Gracias!

Ya te contaré.

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de Scorpyo82
+1
0
-1

Nada, lo intenté a noche y falla al compilar.

Si no la hago de andar esta tarde la descambio, el caso, es que me da coraje resignarme y más cuando elegí esta tarjeta por que era antigua y ponía compatible con linux...

Total.......

Un saludo.

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de Scorpyo82
+1
0
-1

El problema sigue siendo el mismo....

scripts/kconfig/conf -s arch/x86/Kconfig
  CHK     include/linux/version.h
  CHK     include/generated/utsrelease.h
make[1]: *** No hay ninguna regla para construir el objetivo «kernel/bounds.c», necesario para «kernel/bounds.s».  Alto.
make: *** [prepare0] Error 2

No entiendo que quiere decir y por más que googleo no encuentro la solución.
Incluso activé la cuenta root y nada de nada.
Por otro lado seguí las instrucciones (que no me hacen gracia puesto que usa repositorios no oficiales) de esta página y nada, parece que me acerco pero falla también...
http://crysol.org/es/node/1082#comment-5014
Si se os ocurre algo, por favor, postearmelo.

Gracias XD

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de Scorpyo82
+1
0
-1

A ver, cambio de planes y último intento.
Me he descargado la última versión estable del núcleo de Linux, la 2.6.39.3.
Ya he metido los módulos, y lo estoy compilando (sin fallos aún)
Si todo sale bien, lo instalaré y veré si anda el DVB-USB.

Por otro lado, estoy aprendiendo como compilar un nucleo de Linux de la manera sencilla claro... pero otra cosa que aprendo XD.

Estoy impaciente, ahora os cuento.

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de Scorpyo82
+1
0
-1

Me salió este error:

/usr/bin/make ARCH=i386 \ modules make[1]: se ingresa al directorio «/home/scorpyo/Descargas/linux-2.6.39.3» CHK include/linux/version.h CHK include/generated/utsrelease.h CALL scripts/checksyscalls.sh CC [M] drivers/media/dvb/dvb-usb/rtd2830u.o drivers/media/dvb/dvb-usb/rtd2830u.c:26: error: array type has incomplete element type drivers/media/dvb/dvb-usb/rtd2830u.c: In function ‘rtd2831u_rc_key_to_event’: drivers/media/dvb/dvb-usb/rtd2830u.c:128: error: ‘struct dvb_usb_device_properties’ has no member named ‘rc_key_map’ drivers/media/dvb/dvb-usb/rtd2830u.c:142: error: ‘struct dvb_usb_device_properties’ has no member named ‘rc_key_map_size’ drivers/media/dvb/dvb-usb/rtd2830u.c:143: error: invalid use of undefined type ‘struct dvb_usb_rc_key’ drivers/media/dvb/dvb-usb/rtd2830u.c:143: error: dereferencing pointer to incomplete type drivers/media/dvb/dvb-usb/rtd2830u.c:143: error: invalid use of undefined type ‘struct dvb_usb_rc_key’ drivers/media/dvb/dvb-usb/rtd2830u.c:143: error: dereferencing pointer to incomplete type drivers/media/dvb/dvb-usb/rtd2830u.c:145: error: invalid use of undefined type ‘struct dvb_usb_rc_key’ drivers/media/dvb/dvb-usb/rtd2830u.c:145: error: dereferencing pointer to incomplete type drivers/media/dvb/dvb-usb/rtd2830u.c: At top level: drivers/media/dvb/dvb-usb/rtd2830u.c:294: error: unknown field ‘rc_interval’ specified in initializer drivers/media/dvb/dvb-usb/rtd2830u.c:294: warning: initialization makes pointer from integer without a cast drivers/media/dvb/dvb-usb/rtd2830u.c:296: error: unknown field ‘rc_key_map’ specified in initializer drivers/media/dvb/dvb-usb/rtd2830u.c:297: error: unknown field ‘rc_key_map_size’ specified in initializer drivers/media/dvb/dvb-usb/rtd2830u.c:297: warning: type defaults to ‘int’ in declaration of ‘type name’ drivers/media/dvb/dvb-usb/rtd2830u.c:297: warning: type defaults to ‘int’ in declaration of ‘type name’ drivers/media/dvb/dvb-usb/rtd2830u.c:297: error: negative width in bit-field ‘’ drivers/media/dvb/dvb-usb/rtd2830u.c:304: error: unknown field ‘rc_query’ specified in initializer drivers/media/dvb/dvb-usb/rtd2830u.c:304: warning: missing braces around initializer drivers/media/dvb/dvb-usb/rtd2830u.c:304: warning: (near initialization for ‘rtd2831u_properties.rc’) drivers/media/dvb/dvb-usb/rtd2830u.c:304: error: incompatible types when initializing type ‘enum dvb_usb_mode’ using type ‘int (*)(struct dvb_usb_device *, u32 *, int *)’ drivers/media/dvb/dvb-usb/rtd2830u.c:362: error: unknown field ‘rc_interval’ specified in initializer drivers/media/dvb/dvb-usb/rtd2830u.c:362: warning: initialization makes pointer from integer without a cast drivers/media/dvb/dvb-usb/rtd2830u.c:364: error: unknown field ‘rc_key_map’ specified in initializer drivers/media/dvb/dvb-usb/rtd2830u.c:365: error: unknown field ‘rc_key_map_size’ specified in initializer drivers/media/dvb/dvb-usb/rtd2830u.c:365: warning: type defaults to ‘int’ in declaration of ‘type name’ drivers/media/dvb/dvb-usb/rtd2830u.c:365: warning: type defaults to ‘int’ in declaration of ‘type name’ drivers/media/dvb/dvb-usb/rtd2830u.c:365: error: negative width in bit-field ‘’ drivers/media/dvb/dvb-usb/rtd2830u.c:372: error: unknown field ‘rc_query’ specified in initializer drivers/media/dvb/dvb-usb/rtd2830u.c:372: warning: missing braces around initializer drivers/media/dvb/dvb-usb/rtd2830u.c:372: warning: (near initialization for ‘haihua_properties.rc’) drivers/media/dvb/dvb-usb/rtd2830u.c:372: error: incompatible types when initializing type ‘enum dvb_usb_mode’ using type ‘int (*)(struct dvb_usb_device *, u32 *, int *)’ make[5]: *** [drivers/media/dvb/dvb-usb/rtd2830u.o] Error 1 make[4]: *** [drivers/media/dvb/dvb-usb] Error 2 make[3]: *** [drivers/media/dvb] Error 2 make[2]: *** [drivers/media] Error 2 make[1]: *** [drivers] Error 2 make[1]: se sale del directorio «/home/scorpyo/Descargas/linux-2.6.39.3» make: *** [debian/stamp/build/kernel] Error 2

Lo que aparece en ese archivo es esto:
http://pastebin.ubuntu.com/642051/
Por lo menos parece que es otra cosa distinta.

Un saludo.

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de rioport
+1
0
-1

¿De donde sacaste ese archivo?, el kernel no lo trae, pues lo tengo y ya revise. El que tu adaptador usa es rtl2832u.c (entre otros).

+1
0
-1

-- GC --

Imagen de Scorpyo82
+1
0
-1

Ese archivo lo saqué del paquete que me bajé de la página de zaapa.

Ese es uno de los archivos que metí en //2.6.39.3/drivers/media/dvb/dvb-usb/

Total, que me puse a compilar y falló.
En las instrucciones (Que están arriba en el post) hace referencia a este, pero no lo comprendo bién.

Ahora estoy compilando de nuevo el núcleo, pero con el módulo desactivado, de esta forma, si consigo terminar con exito, a parte de tener un núcleo nuevo y estable, comprobaré si el problema para terminar de compilar es de los módulos que estoy añadiendo del paquete de zaapa.

Lleva un buen rato y sigue.. sigue.....

No creo que traiga soporte para mi modelo porque no lo he visto dentro de los módulos... pero en fín, todo es probar y cruzar los dedos.

Un saludo.

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de Scorpyo82
+1
0
-1

Me volvió a fallar....

make[1]: se ingresa al directorio «/home/scorpyo/Descargas/linux-2.6.39.3»
====== making target debian/stamp/install/linux-image-2.6.39.3 [new prereqs: ]======
This is kernel package version 12.033.
rm -f -r .//home/scorpyo/Descargas/linux-2.6.39.3/debian/linux-image-2.6.39.3 .//home/scorpyo/Descargas/linux-2.6.39.3/debian/linux-image-2.6.39.3.deb
install -p -d -o root -g root  -m  755 /home/scorpyo/Descargas/linux-2.6.39.3/debian/linux-image-2.6.39.3/etc/kernel/postinst.d /home/scorpyo/Descargas/linux-2.6.39.3/debian/linux-image-2.6.39.3/etc/kernel/preinst.d \
	                  /home/scorpyo/Descargas/linux-2.6.39.3/debian/linux-image-2.6.39.3/etc/kernel/postrm.d /home/scorpyo/Descargas/linux-2.6.39.3/debian/linux-image-2.6.39.3/etc/kernel/prerm.d
install: cannot change owner and permissions of «/home/scorpyo/Descargas/linux-2.6.39.3/debian/linux-image-2.6.39.3/etc/kernel/postinst.d»: Operación no permitida
install: cannot change owner and permissions of «/home/scorpyo/Descargas/linux-2.6.39.3/debian/linux-image-2.6.39.3/etc/kernel/preinst.d»: Operación no permitida
install: cannot change owner and permissions of «/home/scorpyo/Descargas/linux-2.6.39.3/debian/linux-image-2.6.39.3/etc/kernel/postrm.d»: Operación no permitida
install: cannot change owner and permissions of «/home/scorpyo/Descargas/linux-2.6.39.3/debian/linux-image-2.6.39.3/etc/kernel/prerm.d»: Operación no permitida
make[1]: *** [debian/stamp/install/linux-image-2.6.39.3] Error 1
make[1]: se sale del directorio «/home/scorpyo/Descargas/linux-2.6.39.3»
make: *** [kernel_image] Error 2

Ahora lo estoy haciendo con sudo
Porque puede que sea por eso....
El núcleo lo estoy compilando en la carpeta descargas de mi usuario, con lo que no usé sudo, pero puede que sea algo de eso.

Un saludo.

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.

Imagen de Scorpyo82
+1
0
-1

Con sudo pude compilarlo, luego lo instalé, pero no me pilla el wifi (y eso que está el módulo añadido) los drivers de la gráfica no se pueden instalar, da un fallo (no será compatible aún con el núcleo)

Total que lo he desinstalado y ahora estoy un poco cansado para seguir batallando... mañana veré.

Un saludo.

+1
0
-1

Si entro en Window$ estoy más tenso que en el bautizo de un gremlin.
Linux user: 545.017
Por favor, si solucionas el hilo añade [Solucionado] al título.