User Tag List

Resultados 1 al 8 de 8

Tema: Compilacion cruzada driver wifi

  1. #1

    Fecha de ingreso
    Sep 2005
    Ubicación
    Madri
    Mensajes
    438
    Mencionado
    1 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    13
    Agradecer Thanks Received 
    13
    Thanked in
    Agradecido 6 veces en [ARG:2 UNDEFINED] posts

    Compilacion cruzada driver wifi

    Buenas amigos!

    Ando intentando hacer una compilacion cruzada desde mi Ubuntu para obtener el .ko para ARM de un driver para un usb wifi rtl8188eu.
    El caso es que nunca lo he hecho y no acabo de conseguirlo.
    Me he traido los fuentes con git, he instalado gcc-arm-linux-gnueabi y estoy intentando compilar con el Makefile que trae los fuentes pero añadiendo el flag para la compilacion cruzada:

    Si no fuera cruzada indican hacer esto
    Código:
    CONFIG_RTL8188EU=m make -C /usr/src/linux-`uname -r` M=`pwd`
    y yo añado
    Código:
    ARCH=arm CROSS_COMPILE=/usr/bin/arm-linux-gnueabi-
    Pero me da error:
    Código:
    include/uapi/asm-generic/int-ll64.h:11:29: error fatal: asm/bitsperlong.h: No existe el archivo o el directorio
    que por lo que he leido es porque debería usar el kernel "objetivo" (vamos, el arm) y esta tirando del kernel de mi PC.

    Sabéis por donde estoy fallando y por donde debería tirar??? Es que ando sin ideas.

    Gracias!!!

  2. #2

    Fecha de ingreso
    Apr 2004
    Mensajes
    1,010
    Mencionado
    39 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    119
    Agradecer Thanks Received 
    95
    Thanked in
    Agradecido 68 veces en [ARG:2 UNDEFINED] posts
    Me da que vas a necesitar las fuentes del kernel para el cual estás intentando compilar el módulo. O, por lo menos, las headers.
    make -f Makefile.wiz

  3. #3

    Fecha de ingreso
    Sep 2005
    Ubicación
    Madri
    Mensajes
    438
    Mencionado
    1 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    13
    Agradecer Thanks Received 
    13
    Thanked in
    Agradecido 6 veces en [ARG:2 UNDEFINED] posts
    He visto que usan pacman para instalar los headers del sistema objetivo...
    Pero debe ser otro pacman porque con un apt-get me instala el jueguecito

    ¿Como puedo conseguir las fuentes o las headers de mi kernel arm?

  4. #4
    Torneos ganados: 1

    Fecha de ingreso
    Jul 2005
    Ubicación
    Avilés
    Mensajes
    6,167
    Mencionado
    58 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    765
    Agradecer Thanks Received 
    773
    Thanked in
    Agradecido 460 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por crossmax Ver mensaje
    He visto que usan pacman para instalar los headers del sistema objetivo...
    Pero debe ser otro pacman porque con un apt-get me instala el jueguecito

    ¿Como puedo conseguir las fuentes o las headers de mi kernel arm?
    ¿pacman, instalar? pacman es el gestor de paquetes de Archlinux (no se si estoy siendo pedante o era ese el problema ).

    "Toda opinión vertida por este usuario intentá estar en concordancia con la física y matemáticas vigentes. En caso de no aceptar ambas, en parte o su totalidad, por favor, abstengase de iniciar una discusión dado que los sistemas son incompatibles".

  5. #5

    Fecha de ingreso
    Sep 2005
    Ubicación
    Madri
    Mensajes
    438
    Mencionado
    1 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    13
    Agradecer Thanks Received 
    13
    Thanked in
    Agradecido 6 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por Dullyboy Ver mensaje
    ¿pacman, instalar? pacman es el gestor de paquetes de Archlinux (no se si estoy siendo pedante o era ese el problema ).
    Ni pedante ni ese era el problema soy yo que estoy medio tonto. Cierto es que lo que he estado leyendo en varios sitios era para Archlinux y tonto de mi lo he instalado en mi Ubuntu. Logicamente el repositorio me ha localizado el magnifico juego pacman

    El caso es que no se como hacer uso de las fuentes o headers del ARM en mi PC para hacer una compilacion cruzada correcta

  6. #6
    Torneos ganados: 1

    Fecha de ingreso
    Jul 2005
    Ubicación
    Avilés
    Mensajes
    6,167
    Mencionado
    58 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    765
    Agradecer Thanks Received 
    773
    Thanked in
    Agradecido 460 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por crossmax Ver mensaje
    Ni pedante ni ese era el problema soy yo que estoy medio tonto. Cierto es que lo que he estado leyendo en varios sitios era para Archlinux y tonto de mi lo he instalado en mi Ubuntu. Logicamente el repositorio me ha localizado el magnifico juego pacman

    El caso es que no se como hacer uso de las fuentes o headers del ARM en mi PC para hacer una compilacion cruzada correcta
    Decía el problema con lo de que instalase el comecocos . El problema original, si no puedes hacer el paso que viste cambiando pacman por apt-get, está fuera del mi conocimiento computeril .

    "Toda opinión vertida por este usuario intentá estar en concordancia con la física y matemáticas vigentes. En caso de no aceptar ambas, en parte o su totalidad, por favor, abstengase de iniciar una discusión dado que los sistemas son incompatibles".

  7. #7

    Fecha de ingreso
    Dec 2005
    Mensajes
    8,005
    Mencionado
    43 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    643
    Agradecer Thanks Received 
    635
    Thanked in
    Agradecido 410 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    52
    En el ARM tienes unas versión del kernel determinada, y en tu PC tienes otra distinta. La última vez que hice compilaciín cruzada fue de SPARC64 a SPARC32 y eso fue como hace diez años, normalmente compilo en la propia máquina destino así tarde un siglo.

    El uname -r no lo puedes usar porque sólo te vale para la versión local.

    Asi como ejemplo te diré que si ejecuto eso en mi equipo me devuelve:

    Código:
    samuel@buttercup:~$ uname -r 
    3.14-2-samuelman.3
    Porque obviamente es un kernel que me he compilado yo mismo para mi equipo, pero la versión que vas a instalar en tu dispositivo ARM no es esa. Así que en el -C tienes que indicar la ruta a los fuentes del kernel que vas a usar para el ARM. Ya sé que no vas a compilar un kernel entero, sólo quieres un módulo, pero necesitas los fuentes igual.

    Con respecto a que no encuentra el fichero asm/bitsperlong.h seguramente haya cambiado de nombre o de ruta. Probablemente ahora esté en asm-generic/bitsperlong.h

    De todas maneras el código para los SoC ARM tarda mucho en ser incluído en la rama principal del kernel de Linux. Es recomendable descargar las fuentes de algún otro proyecto que sea específico de gente que yua ha inclúido el código para ARM en versiones recientes.

    Si el dispositivo ARM que tienes entre manos es una rasperry pi puedes mirar y considerar usar rpi-build
    A veces hago cosas

  8. #8

    Fecha de ingreso
    Sep 2005
    Ubicación
    Madri
    Mensajes
    438
    Mencionado
    1 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    13
    Agradecer Thanks Received 
    13
    Thanked in
    Agradecido 6 veces en [ARG:2 UNDEFINED] posts
    Buenas, muchas gracias por tu comentario.
    No, no ando con una raspberry, aunque bien me vendría porque hay mucho más para ella y con raspbian tienes prácticamente un Linux de escritorio.
    El problema es que no se de donde sacar las fuentes del kernel para poder compilar con ellas y no coja las de mi Pc. Con el módulo embebido me venía un BP que básicamente es una imagen virtual de un kubuntu del año de la pera y un eclipse personalizado que se supone hace las compilaciones cruzadas. Pero no se como puedo tirar de ahí para compilar los fuentes del wifi y sacarme el ko que necesito.

    Y por tirar por otro lado, si busco el gcc para el Linux embebido, como debería estar preconizado para que me funcione en mi ARM920T? Es decir, cualquier gcc para arm9 me servirá? O depende de más cosas (quizás la versión de mi kernel) ?

    Mil gracias

Etiquetas para este tema

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •