[Devel] [ openser-Bugs-1388186 ] Compile failure on AMD64
SourceForge.net
noreply at sourceforge.net
Thu Dec 22 17:45:32 CET 2005
Bugs item #1388186, was opened at 2005-12-22 16:45
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=743020&aid=1388186&group_id=139143
Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: core
Group: ver devel
Status: Open
Resolution: None
Priority: 5
Submitted By: Norman Brandinger (goestelecom)
Assigned to: Nobody/Anonymous (nobody)
Summary: Compile failure on AMD64
Initial Comment:
This problem appears related to the following thread,
at least that is where soem compiler warnings were
first noticed.
http://openser.org/pipermail/devel/2005-November/001122.html
On an AMD64 based machine, the following compile
failure happens:
Compiling items.c
gcc -g -O9 -funroll-loops -Wcast-align -Wall
-minline-all-stringops -falign-loops -Werror
-DNAME='"openser"' -DVERSION='"1.1.0-dev4 "'
-DARCH='"x86_64"' -DOS='"freebsd"' -DCOMPILER='"gcc
3.4"' -D__CPU_x86_64 -D__OS_freebsd
-DCFG_DIR='"/usr/local/etc/openser/"' -DPKG_MALLOC
-DSHM_MEM -DSHM_MMAP -DDNS_IP_HACK -DUSE_IPV6
-DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES
-DF_MALLOC -DFAST_LOCK -DADAPTIVE_WAIT
-DADAPTIVE_WAIT_LOOPS=1024 -DHAVE_SOCKADDR_SA_LEN
-DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN
-DHAVE_SCHED_YIELD -DHAVE_MSGHDR_MSG_CONTROL
-DHAVE_CONNECT_ECONNRESET_BUG -c items.c -o items.o
items.c: In function `xl_get_content_length':
items.c:908: warning: cast from pointer to integer of
different size
gmake: *** [items.o] Error 1
The simple test program below was run on both Intel and
AMD processors
#include <stdio.h>
main() {
char *ptr;
printf("Size of int: %d\n", sizeof(int));
printf("Size of char: %d\n", sizeof(char));
printf("Size of char*: %d\n", sizeof(ptr));
printf("Size of long: %d\n", sizeof(long));
printf("Size of void*: %d\n", sizeof(void*));
return;
}
AMD64 Results:
Size of int: 4
Size of char: 1
Size of char*: 8
Size of long: 8
Size of void*: 8
Intel Results:
Size of int: 4
Size of char: 1
Size of char*: 4
Size of long: 4
Size of void*: 4
It looks like the difference between the 4 byte int
size and the 8 byte pointer sizes on the AMD based
machines is causing the problem.
Regards,
Norm
p.s. I believe that a couple of other modules (other
than items.c) are effected by this.
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=743020&aid=1388186&group_id=139143
More information about the Devel
mailing list