Am 22.10.2011 20:07, schrieb Roger Cruz:
I'm attempting to cross-compile Wine for ARM and during the compilation of the first file, I get the following error about some strings.h routines not being portable. I have tracked this down to the redefinitions for these routines in include/port.h.
How do I get around this issue? Is there a certain #define that needs to be enabled to allow me to use the native strings.h without redefinition (namely this #define NO_LIBWINE_PORT). What is the purpose of having these redefined? Any insight would be most welcome.
gcc -c -I/home/rcruz/sandbox/dev-branch/tools -I. -I/home/rcruz/sandbox/dev-branch/include -I../include -D__WINESRC__ -Wall -pipe -fno-strength-reduce -fno-strict-aliasing -Wdeclaration-after-statement -Wempty-body -Wstrict-prototypes -Wtype-limits -Wwrite-strings -Wpointer-arith -Wlogical-op -g -O2 -o makedep.o /home/rcruz/sandbox/dev-branch/tools/makedep.c In file included from /home/rcruz/sandbox/tools/toolchain9/bin/../sysroot/usr/include/stdlib.h:42, from /home/rcruz/sandbox/dev-branch/tools/makedep.c:29: /home/rcruz/sandbox/tools/toolchain9/bin/../sysroot/usr/include/strings.h:49: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'ffs_is_not_portable' /home/rcruz/sandbox/tools/toolchain9/bin/../sysroot/usr/include/strings.h:52: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'strcasecmp_is_not_portable' /home/rcruz/sandbox/tools/toolchain9/bin/../sysroot/usr/include/strings.h:53: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'strncasecmp_is_not_portable'
After some discussion last month i'd guess you are trying to crosscompile wine to android. In this special case the toolchain is a bit weird and you need to comment these 3 files out of the crosscompilers strings.h I'll send you some more hacks i made in private.