Pregunta

Escribí un fornol.c programa que usa la biblioteca curl y, por lo tanto, incluye lo siguiente:

#include <curl/curl.h>

quiero correr splint En mi programa, pero este es el error que recibo:

$ splint fornol.c
Splint 3.1.2 --- 03 May 2009

/usr/include/curl/curlbuild.h:165:33: Parse Error:
    Suspect missing struct or union keyword: socklen_t :
    int. (For help on parse errors, see splint -help parseerrors.)
*** Cannot continue.

La línea sospechosa en curlbuild.h Se ve como esto:

/* Data type definition of curl_socklen_t. */
typedef CURL_TYPEOF_CURL_SOCKLEN_T curl_socklen_t;

Dónde CURL_TYPEOF_CURL_SOCKLEN_T ha sido #defineD para ser socklen_t.

¿Estoy haciendo algo mal aquí? ¿Qué banderas debo pasar a la férula para que funcione en mi programa?

¿Fue útil?

Solución

Creo que encontré la solución. Resulta que sys/socket.h no esta debajo /usr/include en mi máquina (que recientemente actualicé a Ubuntu 11.10).

Tuve que agregar la siguiente bandera a splint:

-I/usr/include/x86_64-linux-gnu

Y luego funcionó.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top