From: Michael K. <mic...@gm...> - 2008-09-25 21:20:55
|
Reini Urban wrote: > 2008/9/25 Reini Urban <ru...@x-...>: >> So it must be the linker pulling in the cygwin version for _errno(). > > The reason for this failure is > # **HACK**: utilities must run locally > UTILCC=cc > in Makefile. > Linking a mingw32 gllib/malloc.o with the cygwin compiled utils does > not work. And symlinks on a cygwin > host do work. So no need for that hack in a cygwin shell. > > Fixing that to > UTILCC=gcc -mno-cygwin > or > UTILCC=$(CC) > works fine. > > I also had to use in the cygwin shell the crosscompiler usage: > ./configure --cbc build-mingw --with-mingw --build=i686-pc-mingw32 Does not work for me, unfortunately. - Makefile is generated for cross compiling: # ./makemake --with-dynamic-ffi --win32gcc --srcdir=../src cross i686-pc-mingw32 - CC and XCC were left blank; I set them to gcc -mno-cygwin manually - config.log says we are _not_ cross copmiling: configure:3440: checking whether we are cross compiling configure:3442: result: no - win32.c is not linked in the build dir. In another attempt, I manually set UTILCC to gcc -mno-cygwin and changed build_triplet to i686-pc-mingw32 in gllib/Makefile. This fails too: | gcc -mno-cygwin -I/usr/local/include -Igllib -g -O2 -W -Wswitch -Wcomment -Wpoin | ter-arith -Wimplicit -Wreturn-type -Wmissing-declarations -Wno-sign-compare -O2 | -fexpensive-optimizations -falign-functions=4 -D_WIN32 -DUNICODE -DNO_TERMCAP_NC | URSES -DDYNAMIC_FFI -DNO_GETTEXT -I. -c spvwtabf.c | In file included from ../src/spvwtabf.d:7: | ../src/lispbibl.d:9143: warning: register used for two global register variables | | In file included from ../src/spvwtabf.d:32: | ../src/subr.d:1360: internal compiler error: Segmentation fault | Please submit a full bug report, | with preprocessed source if appropriate. | See <URL:http://cygwin.com/problems.html> for instructions. | make: *** [spvwtabf.o] Error 1 Could this really be a compiler error? $ cygcheck -s Found: C:\cygwin\bin\awk.exe Found: C:\cygwin\bin\bash.exe Found: C:\cygwin\bin\cat.exe Found: C:\cygwin\bin\cp.exe Found: C:\cygwin\bin\cpp.exe Not Found: crontab Found: C:\cygwin\bin\find.exe Found: C:\cygwin\bin\gcc.exe Not Found: gdb Found: C:\cygwin\bin\grep.exe Found: C:\cygwin\bin\kill.exe Found: C:\cygwin\bin\ld.exe Found: C:\cygwin\bin\ls.exe Found: C:\cygwin\bin\make.exe Found: C:\cygwin\bin\mv.exe Found: C:\cygwin\bin\patch.exe Not Found: perl Found: C:\cygwin\bin\rm.exe Found: C:\cygwin\bin\sed.exe Not Found: ssh Found: C:\cygwin\bin\sh.exe Found: C:\cygwin\bin\tar.exe Found: C:\cygwin\bin\test.exe Not Found: vi Not Found: vim 61k 2008/04/01 C:\cygwin\bin\cygbz2-1.dll 7k 2003/10/19 C:\cygwin\bin\cygcrypt-0.dll 40k 2006/11/15 C:\cygwin\bin\cygform-8.dll 19k 2006/11/19 C:\cygwin\bin\cyggdbm-4.dll 8k 2006/11/19 C:\cygwin\bin\cyggdbm_compat-4.dll 25k 2008/01/04 C:\cygwin\bin\cyghistory6.dll 271k 2007/08/24 C:\cygwin\bin\cygicons-0.dll 976k 2006/10/22 C:\cygwin\bin\cygiconv-2.dll 37k 2003/08/10 C:\cygwin\bin\cygintl-2.dll 31k 2005/11/20 C:\cygwin\bin\cygintl-3.dll 31k 2006/10/23 C:\cygwin\bin\cygintl-8.dll 21k 2006/11/15 C:\cygwin\bin\cygmenu-8.dll 67k 2006/11/15 C:\cygwin\bin\cygncurses++-8.dll 237k 2006/11/15 C:\cygwin\bin\cygncurses-8.dll 12k 2006/11/15 C:\cygwin\bin\cygpanel-8.dll 181k 2008/09/07 C:\cygwin\bin\cygpcre-0.dll 302k 2008/09/07 C:\cygwin\bin\cygpcrecpp-0.dll 7k 2008/09/07 C:\cygwin\bin\cygpcreposix-0.dll 22k 2002/06/09 C:\cygwin\bin\cygpopt-0.dll 155k 2008/01/04 C:\cygwin\bin\cygreadline6.dll 1829k 2008/06/12 C:\cygwin\bin\cygwin1.dll Cygwin DLL version info: DLL version: 1.5.25 DLL epoch: 19 DLL bad signal mask: 19005 DLL old termios: 5 DLL malloc env: 28 API major: 0 API minor: 156 Shared data: 4 DLL identifier: cygwin1 Mount registry: 2 Cygnus registry name: Cygnus Solutions Cygwin registry name: Cygwin Program options name: Program Options Cygwin mount registry name: mounts v2 Cygdrive flags: cygdrive flags Cygdrive prefix: cygdrive prefix Cygdrive default prefix: Build date: Thu Jun 12 19:34:46 CEST 2008 CVS tag: cr-0x5f1 Shared id: cygwin1S4 Can't find the cygrunsrv utility, skipping services check. $ Cygwin Package Information Package Version _update-info-dir 00757-1 alternatives 1.3.30c-2 ash 20040127-4 base-files 3.7-1 base-passwd 2.2-1 bash 3.2.39-20 binutils 20080624-2 bzip2 1.0.5-2 coreutils 6.10-1 crypt 1.1-1 cvs 1.11.22-1 cygutils 1.3.2-1 cygwin 1.5.25-15 cygwin-doc 1.4-4 diffutils 2.8.7-1 editrights 1.01-2 findutils 4.4.0-3 gawk 3.1.6-1 gcc-core 3.4.4-3 gcc-g++ 3.4.4-3 gcc-mingw-core 20050522-1 gcc-mingw-g++ 20050522-1 grep 2.5.1a-4 groff 1.19.2-2 gzip 1.3.12-2 less 382-1 libbz2_1 1.0.5-2 libgdbm4 1.8.3-8 libiconv2 1.11-1 libintl2 0.12.1-3 libintl3 0.14.5-1 libintl8 0.15-1 libncurses8 5.5-3 libpcre0 7.8-1 libpopt0 1.6.4-4 libreadline6 5.2.12-10 login 1.9-8 make 3.81-2 man 1.6e-1 mingw-runtime 3.15-1 patch 2.5.8-9 ping 1.0-1 rebase 2.4.4-1 run 1.1.10-1 sed 4.1.5-2 tar 1.20-1 termcap 20050421-1 terminfo 5.5_20061104-1 texinfo 4.8a-1 tzcode 2008a-1 w32api 3.12-1 which 2.19-1 Use -h to see help about each section -- |