Domanda

Ho scritto un programma fornol.c che utilizza la libreria curl, e quindi include quanto segue:

#include <curl/curl.h>

Voglio correre splint sul mio programma, ma questo è l'errore che ottengo:

$ 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 linea di sospetto nel look curlbuild.h in questo modo:

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

Qualora sia stata CURL_TYPEOF_CURL_SOCKLEN_Td #define di essere socklen_t.

sto facendo qualcosa di sbagliato qui? Cosa bandiere dovrei passare a stecca per farlo funzionare sul mio programma?

È stato utile?

Soluzione

Penso che ho trovato la soluzione. Scopre che non è sotto sys/socket.h /usr/include sulla mia macchina (che ho recentemente aggiornato a Ubuntu 11.10).

ho dovuto aggiungere il seguente bandiera per splint:

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

E poi ha funzionato.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top