Почему Splint parse curl/curlbuild.h?
Вопрос
Я написал fornol.c
Программа, которая использует библиотеку скручивания, и, следовательно, включает в себя следующее:
#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
.
Я здесь что -то не так? Какие флаги мне следует передать в Splint, чтобы заставить его работать над моей программой?
Решение
Я думаю, что нашел решение. Получается что sys/socket.h
не под /usr/include
На моей машине (которую я недавно обновил до Ubuntu 11.10).
Я должен был добавить следующий флаг в splint
:
-I/usr/include/x86_64-linux-gnu
И тогда это сработало.
Не связан с StackOverflow