Sponsored Content
Top Forums UNIX for Dummies Questions & Answers Build Error: error: dereferencing pointer to incomplete type Post 302307896 by quirkasaurus on Thursday 16th of April 2009 03:00:42 PM
Old 04-16-2009
omg -- this is actual open source code? that's amazing.

Well -- one error at a time. Fix one -- on to the next.
That first suggestion did what it was supposed to do.

This statement:
Code:
iphdr = (struct iphdr *)((char *)ethhdr + sizeof(struct ethhdr));

Is complete insane. It's relying on typecasting a pointer of a structure,
jumping over the size of itself and assuming that the next spot in memory
is a pointer to iphdr. This simply is dreaming. Although it ~could~ happen,
given that the compiler writer places his variables on after the other in
memory but if it did... that means that the memory must've been explicitly
declared somewhere and if so... why not explicitly cast that memory here?

But whatever. The same problem exists, more or less. But to get it to compile,
try this:


Code:
iphdr = (struct iphdr *)((long)&ethhdr + (long)sizeof(struct ethhdr));

or:

Code:
iphdr = (void *)((long)&ethhdr + (long)sizeof(struct ethhdr));

good luck with this!
 

10 More Discussions You Might Find Interesting

1. Programming

Accesing structure member:Error:dereferencing pointer to incomplete type

$ gcc -Wall -Werror struct.c struct.c: In function `main': struct.c:18: error: dereferencing pointer to incomplete type $ cat struct.c #include <stdio.h> #include <stdlib.h> #include <string.h> /*Declaration of structure*/ struct human { char *first; char gender; int age; } man,... (3 Replies)
Discussion started by: amit4g
3 Replies

2. Programming

array type has incomplete element type

Dear colleagues, One of my friend have a problem with c code. While compiling a c program it displays a message like "array type has incomplete element type". Any body can provide a solution for it. Jaganadh.G (1 Reply)
Discussion started by: jaganadh
1 Replies

3. Programming

error: field has incomplete type

Hello there, Here is how it goes - I have written a small test driver as an exercise to "Linux Device Drivers" and as a preparation for writing a real, functional driver. For the sake of seeing how far I got it working (I already implemented the open(0, read(), write() and ioctl() calls) I... (4 Replies)
Discussion started by: boyanov
4 Replies

4. Solaris

make[2]: warning: Clock skew detected. Your build may be incomplete.

dear all when i compile any file under solaris it gives the below warning how can i disable it -bash-3.00$ make GNLPFT177 make: Warning: File `GNLPFT177.rc' has modification time 36 s in the future make GNLPFT177.c make: Entering directory `/devapp/jordev/batch/source' make: Warning: File... (3 Replies)
Discussion started by: murad.jaber
3 Replies

5. Programming

error: field `fatx_i' has incomplete type

I'm trying to compile a 2.4.26 kernel but I have to apply two patches to it. The patches are: linux-2.4.26-xbox.patch openMosix-2.4.26-1 This is the reason that it doesn't compile. There is only one error but I'm not familiar with C or C++(Unfortunately only Java and some lower-level... (2 Replies)
Discussion started by: lateralus01
2 Replies

6. Programming

Dereferencing pointer to incomplete type

// Hello all, I am having this error "Dereferencing pointer to incomplete type " on these 2 lines: xpoint = my_point->x; ypoint = my_point->y; I am having no clue y this is happening. Any help would be greately appreciated!!!! #include<stdio.h> #include<string.h>... (2 Replies)
Discussion started by: mind@work
2 Replies

7. Programming

Dereferencing pointer to a shared memory struct

I have what should be a relatively simple program (fadec.c) that maps a struct from an included header file (fadec.h) to a shared memory region, but I’m struggling accessing members in the struct from the pointer returned by shmat. Ultimately, I want to access members in the shared memory structure... (2 Replies)
Discussion started by: arette
2 Replies

8. UNIX for Advanced & Expert Users

find -exec with 2 commands doesn't work (error incomplete staement)

Hi Gurues, I need to modify an existing script that uses find to search a folder, and then move its contents to a folder. What I need to do is run gzip on each file after it's moved. So, I ran this little test: Put a ls.tar file on my $HOME, mkdir tmp, and then: virtuo@tnpmprd01: find .... (3 Replies)
Discussion started by: llagos
3 Replies

9. Programming

Compilation Error: dereferencing pointer to incomplete type

I am getting a dereferencing pointer to incomplete type error when i compile the following code on lines highlighted in red. Can anyone help me in identifying what is wrong in the code? #include<stdio.h> #include<stdlib.h> typedef struct{ int info; struct node* link ; } node; void... (3 Replies)
Discussion started by: sreeharshasn
3 Replies

10. Programming

Warning: pointer type mismatch

Hi all, I'm new programming in C, so I had the next message in my code: Dual.c:88:20: warning: pointer type mismatch in conditional expression : &clientSa.sin6.sin6.sin6_addr, Any help would be great #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> #include... (1 Reply)
Discussion started by: godna
1 Replies
index(3C)						   Standard C Library Functions 						 index(3C)

NAME
index, rindex - string operations SYNOPSIS
#include <strings.h> char *index(const char *s, int c); char *rindex(const char *s, int c); DESCRIPTION
The index() and rindex() functions operate on null-terminated strings. The index() function returns a pointer to the first occurrence of character c in string s. The rindex() function returns a pointer to the last occurrence of character c in string s. Both index() and rindex() return a null pointer if c does not occur in the string. The null character terminating a string is considered to be part of the string. USAGE
On most modern computer systems, you can not use a null pointer to indicate a null string. A null pointer is an error and results in an abort of the program. If you wish to indicate a null string, you must use a pointer that points to an explicit null string. On some machines and with some implementations of the C programming language, a null pointer, if dereferenced, would yield a null string. Though often used, this practice is not always portable. Programmers using a null pointer to represent an empty string should be aware of this portability issue. Even on machines where dereferencing a null pointer does not cause an abort of the program, it does not necessarily yield a null string. ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ |ATTRIBUTE TYPE |ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Standard | +-----------------------------+-----------------------------+ SEE ALSO
bstring(3C), malloc(3C), string(3C), attributes(5), standards(5) SunOS 5.11 24 Jul 2002 index(3C)
All times are GMT -4. The time now is 10:46 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy