I think I've tried everything. Of course, whenever I say that, somone points me to the part of the documentation I didn't read, or didn't read correctly. I'm trying to build a compiler to generate linux binaries (RedHat 7.3) from Windows (cygwin). I've seen the problem outside of cygwin, so I'm fairly sure it's not that. I'm sure glib does, in general, cross compile. So I'm guessing the problem is with my i686-pc-linux-gnu-gcc.exe setup/installation. I've seen a similar error in at least two other posts, but they were unanswered. http://sources.redhat.com/ml/cygwin/2003-04/msg00423.html http://sources.redhat.com/ml/glibc-linux/2000-q3/msg00020.html Any ideas? These are (roughly) the steps I've done so far mkdir binutils-build cd binutils-build /usr/src/binutils-20030307-1/configure --target=i686-pc-linux-gnu make all install cd .. mkdir gcc-build cd gcc-build /usr/src/gcc2-2.95.3-10/configure --target=i686-pc-linux-gnu copy includes from linux:/usr/include/ to C:\cygwin\usr\local\i686-pc-linux-gnu\include\ make all-gcc install-gcc #(make all wouldn't work, chokes on target libiberty/libiberty.a) cd .. mkdir glibc-build cd glibc-build CC=i686-pc-linux-gnu-gcc.exe AR=i686-pc-linux-gnu-ar.exe RANLIB=i686-pc-linux-gnu-ranlib.exe BUILD_CC=gcc.exe $ /usr/src/glibc-2.2.5/configure --prefix=/usr/local/i686-pc-linux-gnu/ --with -headers=/usr/local/i686-pc-linux-gnu/include/ --enable-add-ons --with-binut ils=/usr/local/i686-pc-linux-gnu/bin/ --build=i686-pc-cygwin --host=i686-pc- linux-gnu [...] $ make [...] i686-pc-linux-gnu-gcc.exe -nostdlib -nostartfiles -o /usr/local/i686-pc-linux-gnu/glibc-build/iconv/iconvconfig -Wl,-dynamic-lin ker=/usr/local/i686-pc-linux-gnu//lib/ld-linux.so.2 -Wl,-z,combreloc /usr/local/i686-pc-linux-gnu/glibc-build/csu/crt1.o /usr/local/i686-pc-linux-gnu/glibc-build/csu/crti.o `i686-pc-linux-gnu-gcc.exe --print-file-name=crtbegin.o` /usr/local/i686-pc-linux-gnu/glibc-build/iconv/iconvconfig.o /usr/local/i686-pc-linux-gnu/glibc-build/iconv/strtab.o /usr/local/i686-pc-linux-gnu/glibc-build/iconv/xmalloc.o -Wl, -rpath-link=/usr/local/i686-pc-linux-gnu/glibc-build:/usr/local/i686-pc-linu x-gnu/glibc-build/math:/usr/local/i686-pc-linux-gnu/glibc-build/elf:/usr/loc al/i686-pc-linux-gnu/glibc-b uild/dlfcn:/usr/local/i686-pc-linux-gnu/glibc-build/nss:/usr/local/i686-pc-l inux-gnu/glibc-build/nis:/usr/local/i686-pc-linux-gnu/glibc-build/rt:/usr/lo cal/i686-pc-linux-gnu/glibc- build/resolv:/usr/local/i686-pc-linux-gnu/glibc-build/crypt:/usr/local/i686- pc-linux-gnu/glibc-build/linuxthreads /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6 /usr/local/i686 -pc-linux-gnu/glibc-build/libc_nonshared.a -lgcc `i686-pc-linux-gnu-gcc.exe --print-file-name=crtend.o` /usr/local/i686-pc-linux-gnu/glibc-build/csu/crtn.o /usr/local/i686-pc-linux-gnu/glibc-build/iconv/iconvconfig.o(.text+0x84a): In function `add_module': /usr/src/glibc-2.2.5/iconv/../stdlib/stdlib.h:302: undefined reference to `__strtol_internal' /usr/local/i686-pc-linux-gnu/glibc-build/iconv/iconvconfig.o(.text+0x109b): In function `name_to_module_idx': /usr/src/glibc-2.2.5/iconv/iconvconfig.c:792: undefined reference to `abort' /usr/local/i686-pc-linux-gnu/glibc-build/iconv/iconvconfig.o(.text+0x1a19): In function `write_output': /usr/src/glibc-2.2.5/iconv/iconvconfig.c:1149: undefined reference to `fchmod' /usr/local/i686-pc-linux-gnu/glibc-build/iconv/iconvconfig.o(.text+0x1a4e):/ usr/src/glibc-2.2.5/iconv/iconvconfig.c:1156: undefined reference to `close' /usr/local/i686-pc-linux-gnu/glibc-build/iconv/iconvconfig.o(.text+0x1a5d):/ usr/src/glibc-2.2.5/iconv/iconvconfig.c:1157: undefined reference to `unlink' /usr/local/i686-pc-linux-gnu/glibc-build/iconv/iconvconfig.o(.text+0x1a8c):/ usr/src/glibc-2.2.5/iconv/iconvconfig.c:1162: undefined reference to `close' /usr/local/i686-pc-linux-gnu/glibc-build/iconv/strtab.o(.text+0x90): In function `morememory': /usr/src/glibc-2.2.5/iconv/strtab.c:120: undefined reference to `abort' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__dup' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__strtod_internal' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `utime' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `lrand48_r' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__strtoull_internal' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__mpn_extract_long_double' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__mpn_cmp' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__libc_fcntl' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__write' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `getenv' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__getcwd' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `bsearch' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__dup2' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `qsort' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__strtoll_internal' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__read' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__unlink' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__mpn_lshift' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__mpn_mul' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__mpn_submul_1' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__open' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__mpn_construct_float' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__strtoul_internal' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__libc_read' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__xstat64' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__mpn_divrem' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__lxstat' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__mpn_construct_double' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__chmod' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__strtold_internal' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__strtod_l' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__mpn_construct_long_double' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__isatty' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__statfs' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `_fpioconst_pow10' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__chdir' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__readlink' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__mpn_extract_double' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__secure_getenv' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__mkdir' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__cxa_atexit' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__mpn_add_n' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__poll' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__statvfs64' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__pipe' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__libc_open' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__chown' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__random_r' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__initstate_r' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__xmknod' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__lseek' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__mpn_rshift' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__srand48_r' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__tens' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__lxstat64' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__ttyname_r' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__libc_lseek' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__rmdir' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__fstatfs' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__close' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__fxstat64' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__mpn_mul_1' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__xstat' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__strtof_internal' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `exit' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__fxstat' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__libc_write' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__fcntl' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__setenv' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__access' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__unsetenv' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__open64' /usr/local/i686-pc-linux-gnu/glibc-build/libc.so.6: undefined reference to `__fstatvfs64' collect2: ld returned 1 exit status make[2]: *** [/usr/local/i686-pc-linux-gnu/glibc-build/iconv/iconvconfig] Error 1 make[2]: Leaving directory `/usr/src/glibc-2.2.5/iconv' make[1]: *** [iconv/others] Error 2 make[1]: Leaving directory `/usr/src/glibc-2.2.5' make: *** [all] Error 2