Wine's configure script when cross-compiling
roger_r_cruz at yahoo.com
Wed Oct 26 00:33:40 CDT 2011
So far that autoconf script has been a nightmare. It doesn't include string.h (where strerror.h is defined) directly BUT I did include unistd.h in order to get autoconf to find getpagesize().
I'm building under the Android development which uses GCC for cross-compiling for ARM.
I decided to continue making progress on my project by taking autoconf's output (config.h) and hand tweaking the #define HAVE_xxx functions that I know the cross-compile environment provide. I get a lot farther now but a new error arises, for which I have no clues yet on how to fix.
make: Entering directory `/development/rcruz/sandbox/wine-builds/winearm3/dlls/acledit'
arm-linux-androideabi-gcc -c -I/home/rcruz/sandbox/wine-dev-branch/dlls/acledit -I. -I/home/rcruz/sandbox/wine-dev-branch/include -I../../include -D__WINESRC__ -D_REENTRANT -fPIC -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 main.o
/home/rcruz/sandbox/wine-builds/wine32-dev/tools/winegcc/winegcc -b arm-linux-androideabi -B/home/rcruz/sandbox/wine-builds/wine32-dev/tools/winebuild --sysroot=../.. -fasynchronous-unwind-tables -shared /home/rcruz/sandbox/wine-dev-branch/dlls/acledit/acledit.spec main.o -o acledit.dll.so ../../libs/port/libwine_port.a
../../dlls/winecrt0/libwinecrt0.a(dll_entry.o): In function `__wine_spec_dll_entry':
/home/rcruz/sandbox/wine-dev-branch/dlls/winecrt0/dll_entry.c:42: undefined reference to `_fini'
/home/rcruz/sandbox/wine-dev-branch/dlls/winecrt0/dll_entry.c:37: undefined reference to `_init'
/home/rcruz/sandbox/tools/toolchain9/bin/../lib/gcc/arm-linux-androideabi/4.4.3/../../../../arm-linux-androideabi/bin/ld: acledit.dll.so: hidden symbol `_init' isn't
/home/rcruz/sandbox/tools/toolchain9/bin/../lib/gcc/arm-linux-androideabi/4.4.3/../../../../arm-linux-androideabi/bin/ld: final link failed: Nonrepresentable section on output
collect2: ld returned 1 exit status
winegcc: arm-linux-androideabi-gcc failed
make: *** [acledit.dll.so] Error 2
make: Leaving directory `/development/rcruz/sandbox/wine-builds/winearm3/dlls/acledit'
From: Dan Kegel <dank at kegel.com>
To: wine-devel at winehq.org
Cc: roger_r_cruz at yahoo.com
Sent: Wednesday, October 26, 2011 12:49 AM
Subject: re: Wine's configure script when cross-compiling
Welcome to the wonderful world of autoconf!
> The code that generates conftest.c does not provide for an argument to strerror. Why doesn't it? And how does the configure script succeed when compiling for x86?
If I recall correctly:
Because conftest.c doesn't include the .h file that declares strerror(),
and C doesn't have typesafe linkage, checking for the
presence of a function by linking to it with a totally bogus call
with no arguments should work fine.
It's not clear why the compiler is complaining -
did it somehow see a .h file that declared strerror()?
What compiler are you using?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the wine-devel