Question

I'm using cygwin to compile a network tool(iffinder).

After ./configure and make i have a problem that i guess is related to struct icmp. Where is the icmp struct in header files. I searched for it in cygwin header files, but i didn't find anything.

How can i compile source codes which need icmp, in cygwin?

If it helps, you can find the source code of iffinder here

Note: I have ip_icmp.h in my cygwin's header files.


Compile error:

iffinder.c:1059: warning: "struct icmp" declared inside parameter list

iffinder.c:1059: warning: its scope is only this definition or

declaration, which is probably not what you want iffinder.c: In

function `handle_icmp_error': iffinder.c:1069: error: dereferencing

pointer to incomplete type

...

Was it helpful?

Solution

iffinder.c line 54 does #include <netinet/ip_icmp.h> - is this header file present on your system?

OTHER TIPS

In cygwin, the icmp.h is empty. I suggest you copy a icmp.h from a open source project, and compile it with your project. Maybe, you have many errors and you have to correct them, but you just need an icmp struct and it will solve your problem.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top