2011-10-19 91 views
0

我寫了一個使用curl庫,因此包含fornol.c程序如下:爲什麼不用splint解析curl/curlbuild.h?

#include <curl/curl.h> 

我想在我的程序運行splint,但是這是我得到的錯誤:

$ 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. 

curlbuild.h犯罪嫌疑人行看起來是這樣的:

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

CURL_TYPEOF_CURL_SOCKLEN_T已被#define d爲socklen_t

我在這裏做錯了什麼?我應該將哪些標誌傳遞給夾板以使其適用於我的程序?

回答

1

我想我找到了解決方案。原來sys/socket.h沒有在我的機器上(我最近升級到Ubuntu 11.10)的/usr/include下。

我有以下標誌添加到splint

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

然後它的工作。