error fatal: netlink / genl / genl.h: No existe tal archivo o directorio

10

Estoy compilando hostapd para openwrt. Me estoy poniendo fatal error: netlink/genl/genl.h: No such file or directory. Ya tengo instalado libnl-3.2.24. Si compilo directamente (no compilación cruzada), hostapd está compilando correctamente sin ningún error.

Rafal
fuente
2
¿Para qué ARCO?
AB

Respuestas:

23

Puede buscar el paquete correcto con este comando:

apt-file search /netlink/genl/genl.h

En mi caso, la salida es:

libnl-3-dev: /usr/include/libnl3/netlink/genl/genl.h

Esto significa que tengo que instalar el paquete libnl-3-dev:

sudo apt-get install libnl-3-dev

Y necesitas libnl-genl-3-dev

sudo apt-get install libnl-genl-3-dev

Luego abra el configarchivo:

nano hostap/hostapd/.config

y descomentar la línea:

CONFIG_LIBNL32=y

Comience de makenuevo.

AB
fuente
"Si compilo directamente (no compilación cruzada), hostapd está compilando correctamente sin ningún error". - Dudo que OP no tenga este paquete.
Muru
@muru Ahora funciona, recién probado.
AB
estás compilando en forma cruzada?
Muru
@muru hmm, no hay compilación cruzada. ¿Para qué arquitectura?
AB
@muru, por ejemplo, esto funciona:make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-
AB
0

El archivo de encabezado .../netlink/genl/genl.hse encuentra en el libnl-3-devpaquete

Instálelo usando:

sudo apt-get install libnl-3-dev
Maythux
fuente
"Si compilo directamente (no compilación cruzada), hostapd está compilando correctamente sin ningún error". - Dudo que OP no tenga este paquete.
Muru
0

Asegúrese de que su cadena de herramientas de compilación cruzada tenga libnl y libnl-genl integrados. Además, asegúrese de que su proyecto pueda encontrar las bibliotecas, por ejemplo, utilizando los directorios include y lib correctos al compilar. A menudo termino especificándolos usando CFLAGS = "- I $ (STAGING_DIR) / usr / include" y LDFLAGS = "- L $ (STAGING_DIR) / usr / lib"

Andreas Søvik Nilsen
fuente