the dreaded 64-bit compile
Posted: Fri Apr 12, 2013 4:37 pm
Plugging on, compiling the source on 64-bit linux mint everything was going fine until I ran into the following.
So... would it be safe to change the typedefs in core.h?
(I didn't actually realize you could say "long long int" without the compiler barfing)
In file included from ./src/core.cpp:16:0:
./../libcore/include/core.h:214:55: error: ‘operator new’ takes type ‘size_t’ (‘long unsigned int’) as first parameter [-fpermissive]
In file included from /usr/include/string.h:34:0,
from /usr/include/c++/4.7/cstring:44,
from ./src/core.cpp:18:
/usr/lib/gcc/x86_64-linux-gnu/4.7/include/stddef.h:213:23: error: conflicting declaration ‘typedef long unsigned int size_t’
In file included from ./src/core.cpp:16:0:
./../libcore/include/core.h:45:22: error: ‘size_t’ has a previous declaration as ‘typedef unsigned int size_t’
In file included from /usr/include/stdlib.h:320:0,
from /usr/include/c++/4.7/cstdlib:66,
from ./src/core.cpp:19:
/usr/include/x86_64-linux-gnu/sys/types.h:198:1: error: conflicting declaration ‘typedef long int int64_t’
In file included from ./src/core.cpp:16:0:
./../libcore/include/core.h:34:26: error: ‘int64_t’ has a previous declaration as ‘typedef long long int int64_t’
In file included from ./src/core.cpp:146:0:
/usr/include/unistd.h:268:20: error: conflicting declaration ‘typedef __intptr_t intptr_t’
In file included from ./src/core.cpp:16:0:
./../libcore/include/core.h:60:17: error: ‘intptr_t’ has a previous declaration as ‘typedef int64_t intptr_t’
make[1]: *** [../_cache/linux/debug/libcore/core.o] Error 1
make[1]: Leaving directory `/home/mwieder/Revolution/versions/livecode/libcore'
make: *** [libcore] Error 2
So... would it be safe to change the typedefs in core.h?
(I didn't actually realize you could say "long long int" without the compiler barfing)
In file included from ./src/core.cpp:16:0:
./../libcore/include/core.h:214:55: error: ‘operator new’ takes type ‘size_t’ (‘long unsigned int’) as first parameter [-fpermissive]
In file included from /usr/include/string.h:34:0,
from /usr/include/c++/4.7/cstring:44,
from ./src/core.cpp:18:
/usr/lib/gcc/x86_64-linux-gnu/4.7/include/stddef.h:213:23: error: conflicting declaration ‘typedef long unsigned int size_t’
In file included from ./src/core.cpp:16:0:
./../libcore/include/core.h:45:22: error: ‘size_t’ has a previous declaration as ‘typedef unsigned int size_t’
In file included from /usr/include/stdlib.h:320:0,
from /usr/include/c++/4.7/cstdlib:66,
from ./src/core.cpp:19:
/usr/include/x86_64-linux-gnu/sys/types.h:198:1: error: conflicting declaration ‘typedef long int int64_t’
In file included from ./src/core.cpp:16:0:
./../libcore/include/core.h:34:26: error: ‘int64_t’ has a previous declaration as ‘typedef long long int int64_t’
In file included from ./src/core.cpp:146:0:
/usr/include/unistd.h:268:20: error: conflicting declaration ‘typedef __intptr_t intptr_t’
In file included from ./src/core.cpp:16:0:
./../libcore/include/core.h:60:17: error: ‘intptr_t’ has a previous declaration as ‘typedef int64_t intptr_t’
make[1]: *** [../_cache/linux/debug/libcore/core.o] Error 1
make[1]: Leaving directory `/home/mwieder/Revolution/versions/livecode/libcore'
make: *** [libcore] Error 2