Hi Detlef,
On Friday 03 Mar 2006 22:49, Detlef Riekenberg wrote:
Hi.
The latest Winetest-Binaries are outdated ( http://www.astro.gla.ac.uk/users/paulm/WRT/CrossBuilt/?N=D ).
Yup.
I'm trying to migrate from the old computer (an old RH-7.3 box much like Frankenstein's monster) to a more manageable machine (running Debian etch). Cross-building isn't working on the new machine yet and is currently broken on the old one.
Winetest (ELF) compiled again recently ( http://www.astro.gla.ac.uk/users/paulm/WRT/wrt.php ), but the crossbuilds are still missing.
That's true: the two builds are independent. The wine tests had a different problem, for which I've a work-around now.
Is there anything that we can do for help?
Yes. The autoconf-generated script seems to be getting confused when cross-compiling.
When cross-compiling, I do something similar to the following: 1. get the source-code and move to directory wine-cross-source
2. In directory wine-cross-elf, do: ../wine-cross-source/configure && make depend && make tools
3. In directory wine-cross-pe, do: ../wine-cross-source/configure --host=i686-mingw32msvc \ --with-wine-tools=../wine-cross-elf
After that, it does a "make depend" and a bunch of other stuff to get winetest.exe, the DLLs and other EXEs.
Step 3 is failing. It looks as if the configure script becomes confused between cross-building and native environments, in particular with OpenGL libraries. Although the code is cross-compiling, it seems to pick up the native GL libraries and header files. Then, when the cross-compiler fails (to link some glx symbol, iirc), the configure script dies.
When it fails, the configure script gives a hint that the file /usr/X11R6/lib/libGL.a should be removed. Doing this certainly fixes the cross-compilation and the ELF compilation still works as it links against the .so version. However, removing the xlibmesa-gl-dev package isn't feasible as its need by many other -dev packages and would break OpenGL compilation.
This looks like a bug in configure.ac, as why should a native static library break cross-compilation.
Any clues?
Cheers,
Paul.
config.log is available from: http://www.astro.gla.ac.uk/users/paulm/config.log
The last few lines from running configure are: ... checking for GL/gl.h... yes checking for GL/glx.h... yes checking for GL/glext.h... yes checking for up-to-date OpenGL version... yes checking for glXCreateContext in -lGL... no configure: error: /usr/X11R6/lib/libGL.a is present on your system. This prevents linking to OpenGL. Delete the file and restart configure.