Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

635
Vistas
No se puede compilar el programa bpf de muestra, falta bpf/bpf.h

Estoy tratando de compilar el programa bpf de muestra en el código fuente de Linux. Así que descargué el código fuente actual del kernel e ingresé a la carpeta samples/bpf

 apt source linux cd linux-*/samples/bpf

Luego traté de compilar un programa de muestra con gcc:

 # gcc sock_example.c sock_example.c:29:10: fatal error: bpf/bpf.h: No such file or directory 29 | #include <bpf/bpf.h> | ^~~~~~~~~~~ compilation terminated.

Y no puedo encontrar bpf/bpf.h con apt-file

 # apt-file find bpf/bpf.h (no output)

¿Que está mal?

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Necesitas instalar libbpf :

 git clone --depth 1 https://github.com/libbpf/libbpf cd src sudo make install
over 4 years ago · Santiago Trujillo Denunciar

0

Las muestras de Linux eBPF vienen con un Makefile bastante largo. Maneja muchos casos y se integra bien con el flujo de trabajo de construcción del kernel, pero hace que sea más complicado construir las muestras fuera del árbol del kernel.

Por ejemplo, este Makefile agrega una serie de directorios incluidos, como TPROGS_CFLAGS += -I$(srctree)/tools/lib/ , lo que significa que bpf/bpf.h no se obtendrá de las bibliotecas de su sistema operativo sino de tools/lib/ bajo su repositorio de kernel.

Aquí hay algunas opciones que puede considerar para compilar su programa:

  • Ajuste el Makefile existente para usarlo para crear sus propios programas, por ejemplo, agregando su código de kernel al objetivo tprogs-y .
  • Instale libbpf desde el repositorio del kernel ( sudo make -C tools/lib/bpf install ) o desde su espejo GitHub . Esto debería instalar los encabezados, y gcc debería poder encontrarlos.
  • Ajuste su opción de compilación para decirle a gcc dónde buscar el encabezado ( gcc -I <path/to/linux>/tools/lib ).
  • (Ajuste la ruta de inclusión en #include <bpf/bpf.h> para que apunte a su biblioteca).
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda