iphone - apple - icloud
¿Se puede compilar libpcap para iPhone/armv6? (1)
pcap.c
no es la fuente de libpcap, es uno de los archivos fuente de libpcap. Tendría que compilar todos los archivos fuente y compilarlos en una biblioteca.
Obra
CFLAGS="-I /Users/abnev/libpcap/include -arch armv6 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.1.3.sdk" ./configure
podría producir un Makefile que compilaría de forma cruzada libpcap para iOS.
Supongo que instalará libpcap o la aplicación creada con él en un iPhone con jailbreak, al menos si va a capturar paquetes, porque necesitaría acceso de administrador para que libpcap pueda abrir un dispositivo BPF para poder capturar
Intentando compilar un programa básico que usa pcap.h. Configuré el entorno en mi caja Mac OSX que usa el iPhone 3.1.3 SDK para un iPhone 3GS. También instalé libpcap en ~ / libpcap para poder decirle a gcc dónde buscar los encabezados usando el indicador -I. Sin embargo, falla con una advertencia ld diciendo que el archivo no es de la arquitectura requerida.
Estoy compilando con la siguiente línea:
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc -I /Users/abnev/libpcap/include -arch armv6 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.1.3.sdk -o pcap pcap.c -lpcap
El error que se genera es:
ld: warning: in /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.1.3.sdk/usr/lib/libpcap.dylib, file is not of required architecture
Undefined symbols:
"_pcap_geterr", referenced from:
_main in ccOL3e0B.o
_main in ccOL3e0B.o
"_pcap_open_live", referenced from:
_main in ccOL3e0B.o
"_pcap_next", referenced from:
_main in ccOL3e0B.o
"_pcap_lookupdev", referenced from:
_main in ccOL3e0B.o
"_pcap_setfilter", referenced from:
_main in ccOL3e0B.o
"_pcap_lookupnet", referenced from:
_main in ccOL3e0B.o
"_pcap_close", referenced from:
_main in ccOL3e0B.o
"_pcap_compile", referenced from:
_main in ccOL3e0B.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
Supongo que ahora necesito recompilar libpcap para la arquitectura armv6 (iPhone), pero verificar las opciones ./configure no ayuda. Intenté buscar en Google esto, pero hay muy poco por ahí.