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

Problema Con Headers De Kernel Compilado

Estas en el tema de Problema Con Headers De Kernel Compilado en el foro de Unix / Linux en Foros del Web. Buenas. Resulta que compilé un kernel con las herramientas de kernel-package.La línea exacta para compilar fué esta: make-kpkg --initrd --zImage kernel_image kernel_headers. Bueno, la cosa ...
  #1 (permalink)  
Antiguo 04/03/2012, 20:32
 
Fecha de Ingreso: julio-2009
Ubicación: La Plata
Mensajes: 233
Antigüedad: 15 años, 5 meses
Puntos: 8
Problema Con Headers De Kernel Compilado

Buenas.
Resulta que compilé un kernel con las herramientas de kernel-package.La línea exacta para compilar fué esta:
make-kpkg --initrd --zImage kernel_image kernel_headers.
Bueno, la cosa es que después de compilar e instalar el kernel con éxito con dpkg -i linux-headers-3.3-rc6.deb y dpkg -i linux-image-3.3-rc6.deb me encuentro con que los ficheros /lib/modules/3.3-rc6/build y /lib/modules/3.3-rc6/source apuntan hacia las fuentes con las que compilé el kernel. Sin embargo, creo yo, tendrían que apuntar a los headers creados con make-kpkg.Si no ¿qué sentido tendría compilar los kernels a la debian si tengo que tener a mano los sources con los que los compilé?.
La estructura en mi carpeta /usr es ésta:
linux-headers-3.3-rc6 #La carpeta que instala kernel-headers-3.3-rc6.deb.
linux-3.3-rc6 #La carpeta en la que compilé el kernel.

Y los archivos source y build apuntan a /usr/src/linux-3.3-rc6

Esto me da conflictos porque:
-No son lo suficientemente portables los kernels.
-Me estoy haciendo un live DVD y los sources ocupan como 3gb mientras que los headers ocupan 37 MB.
-No puedo instalar los drivers privativos de Nvidia ya que en los headers no se encuentra la carpeta include.

Lo anterior lo se porque ya probé cambiar las rutas de los archivos source y build a los headers y no funcionó.
Así que en resumen...¿Uds como hacen cuando compilan un kernel a la debian?
¿Estoy haciendo algo mal?
¿Hay alguna manera de usar sólo los headers y no las fuentes?
Espero no haberlos confundido o cansado.
Gracias de antemano y salu2.
  #2 (permalink)  
Antiguo 06/03/2012, 19:47
 
Fecha de Ingreso: julio-2009
Ubicación: La Plata
Mensajes: 233
Antigüedad: 15 años, 5 meses
Puntos: 8
Respuesta: Problema Con Headers De Kernel Compilado

Lo solucionè...
En primer lugar, estaba equivocado, el paquete fuente descargado en donde se compiló el kernel se puede portabilizar agregando la opción kernel_source a la línea de make-kpkg.
El problema es que si compilamos con éxito e instalamos, los driver de nvidia no nos van a funcionar...
Eso es por (Creo) un cambio en el sistema de directorios de los kernels 3.X.
Si uno hace una instalación normal de un kernel actual como éste y quiere instalar los driver nvidia debe hacer ésto:

cd /usr/src/linux/arch/x86/include; cp generated/asm/*.h ./asm/

y el paquete fuente creado por make-kpkg no contiene el directorio generated, por lo tanto:
-No hay que eliminar la carpeta donde compilamos los fuentes.
-Hay que extraer el paquete generado con make-kpkg ;descomprimir el fichero usr/src/linux-source-XXX.tar.bz2.
Ahì tenemos los fuentes originales, asì que hay que agregarle la carpeta generated a éstos.
Ahora volvemos a comprimir la carpeta linux-source-XXX en formato .tar.bz2
-Y volver a comprimir el paquete deb con dpkg -b linux-source-XXX linux-source-XXX.deb
Lesto!!!!, drivers nvidia 100% instalables y kernel 100% portable y si queremos borramos el fuente donde compilamos.

Espero no haberlos mareado, parece complicado pero no lo es. Espero que a alguien le sirva...La verdad es que no se como hará la gente que compila sus propios kernels a la debian que tengan gráficas Nvidia. Me parece raro que mucha otra gente no tenga el mismo problema que yo pero bueno, acá mi grano de arena.

Y respecto a los links source y build, make-kpkg no es capaz de hacerlos correctamente así que también se puede modificar los paquetes geerados por éste descomprimiendolos, modificando y volviendo a comprimir como en el caso anterior.

Así que en resumen, tengo headersy sources livianos (Antes de 3g, ahora de 700MB) y los puedo instalar, desinstalar, reinstalar....,ja.

Salu2 y suerte!!!

Etiquetas: compila, fuentes, headers, kernel, ruta
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:46.