error: Size of "void *" is less than size of "long"

Jeremie Le Hen jeremie at le-hen.org
Wed Feb 10 10:30:17 UTC 2010


Philip,

On Wed, Feb 10, 2010 at 11:14:57AM +0100, Jeremie Le Hen wrote:
> Hi Philip,
> 
> On Tue, Feb 09, 2010 at 09:12:33PM -0500, Philip M. Gollucci wrote:
> > On 2/9/2010 5:21 PM, Jeremie Le Hen wrote:
> > > Forgot the attachments :).
> > 
> > Your system is confused!! The problem isn't the port is something local
> > in your system or config or some odd cross compile foobar.
> > 
> > $ ./size
> > sizeof(long)  = 4
> > sizeof(void*) = 4
> > 
> > Can you run this please and post your output ?
> > 
> > #include <stdio.h>
> > 
> > int main (int argc, char **argv) {
> > 
> >   (void)fprintf(stdout, "sizeof(long)  = %d\n", sizeof(long));
> >   (void)fprintf(stdout, "sizeof(void*) = %d\n", sizeof(void*));
> > 
> >   return 0;
> > }
> > 
> > If either of them are '8' I'd look towards cross compile foobars.
> 
> Actually, I had already extracted the guilty test from the configure
> script and it didn't return an error when run manually:
> 
>     axl# cat /tmp/test.c
>     int main(void)
>     {
> 	return sizeof(void *) < sizeof(long);
>     }
>     axl# gcc -o /tmp/test /tmp/test.c
>     axl# /tmp/test ; echo $?
>     0
> 
> Here is your test program:
> 
>     axl# cat > /tmp/test2.c
>     #include <stdio.h>
> 
>     int main (int argc, char **argv) {
> 
>       (void)fprintf(stdout, "sizeof(long)  = %d\n", sizeof(long));
>       (void)fprintf(stdout, "sizeof(void*) = %d\n", sizeof(void*));
> 
>       return 0;
>     }
>     ^Daxl# gcc -o /tmp/test2 /tmp/test2.c
>     axl# /tmp/test2
>     sizeof(long)  = 4
>     sizeof(void*) = 4
> 
> I am utterly puzzled.  I don't have any local change.

Actually, the error message was misleading.  I've found the following
error message in the config.log file:

  /usr/local/lib/libpcre.so: undefined reference to `__stack_chk_fail_local'

I don't know why it happens since we have this symbol in libc.  I'm
rebuilding devel/pcre right now, I think it will fix the problem.

Regards,
-- 
Jeremie Le Hen

Humans are born free and equal.  But some are more equal than the others.
					    Coluche


More information about the freebsd-apache mailing list