I've been using Cygwin and gcc for years with no problems. Recently I
had to rebuild my Windows machine, and I installed the previous version
of Cygwin (1.5.?). After a few days, I noticed 1.7 was out so I upgraded.
Yesterday I tried using gcc for the first time. I'm now having a problem
where gcc fails to produce an output file in my normal working
directory. When I attempt to compile a simple hello world program, gcc
just returns without showing an error, but does not produce an object or
executable. Turning verbose mode on, I get the following information:
-~> gcc -v hw.c
Reading specs from /usr/lib/gcc/i686-pc-cygwin/3.4.4/specs
Configured with:
/managed/gcc-build/final-v3-bootstrap/gcc-3.4.4-999/configure --verbose
--program-suffix=-3 --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc
--libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man
--infodir=/usr/share/info
--enable-languages=c,ada,c++,d,f77,pascal,java,objc --enable-nls
--without-included-gettext --enable-version-specific-runtime-libs
--without-x --enable-libgcj --disable-java-awt --with-system-zlib
--enable-interpreter --disable-libgcj-debug --enable-threads=posix
--enable-java-gc=boehm --disable-win32-registry --enable-sjlj-exceptions
--enable-hash-synchronization --enable-libstdcxx-debug
Thread model: posix
gcc version 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)
/usr/lib/gcc/i686-pc-cygwin/3.4.4/cc1.exe -quiet -v -D__CYGWIN32__
-D__CYGWIN__ -Dunix -D__unix__ -D__unix -idirafter
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../include/w32api -idirafter
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/lib/../../include/w32api
hw.c -quiet -dumpbase hw.c -mtune=pentiumpro -auxbase hw -version -o
/cygdrive/c/Documents and Settings/121756/Local Settings/Temp/ccxai7o3.s
I CAN, however, compile the same program if I copy it over to /usr/bin.
It shows the following in verbose mode:
gcc -v hw.c
Reading specs from /usr/lib/gcc/i686-pc-cygwin/3.4.4/specs
Configured with:
/managed/gcc-build/final-v3-bootstrap/gcc-3.4.4-999/configure --verbose
--program-suffix=-3 --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc
--libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man
--infodir=/usr/share/info
--enable-languages=c,ada,c++,d,f77,pascal,java,objc --enable-nls
--without-included-gettext --enable-version-specific-runtime-libs
--without-x --enable-libgcj --disable-java-awt --with-system-zlib
--enable-interpreter --disable-libgcj-debug --enable-threads=posix
--enable-java-gc=boehm --disable-win32-registry --enable-sjlj-exceptions
--enable-hash-synchronization --enable-libstdcxx-debug
Thread model: posix
gcc version 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)
/usr/lib/gcc/i686-pc-cygwin/3.4.4/cc1.exe -quiet -v -D__CYGWIN32__
-D__CYGWIN__ -Dunix -D__unix__ -D__unix -idirafter
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../include/w32api -idirafter
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/lib/../../include/w32api
hw.c -quiet -dumpbase hw.c -mtune=pentiumpro -auxbase hw -version -o
/cygdrive/c/Documents and Settings/121756/Local Settings/Temp/cc1H9n5q.s
ignoring nonexistent directory "/usr/local/include"
ignoring nonexistent directory
"/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/include"
ignoring duplicate directory
"/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/lib/../../include/w32api"
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc/i686-pc-cygwin/3.4.4/include
/usr/include
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../include/w32api
End of search list.
GNU C version 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)
(i686-pc-cygwin)
compiled by GNU C version 3.4.4 (cygming special, gdc 0.12,
using dmd 0.125).
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
hw.c: In function `main':
hw.c:4: warning: return type of 'main' is not `int'
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/bin/as.exe
-o /cygdrive/c/Documents and Settings/121756/Local
Settings/Temp/ccUOmYcs.o /cygdrive/c/Documents and Settings/121756/Local
Settings/Temp/cc1H9n5q.s
/usr/lib/gcc/i686-pc-cygwin/3.4.4/collect2.exe -Bdynamic
--dll-search-prefix=cyg
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../crt0.o
-L/usr/lib/gcc/i686-pc-cygwin/3.4.4 -L/usr/lib/gcc/i686-pc-cygwin/3.4.4
-L/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../.. /cygdrive/c/Documents and
Settings/121756/Local Settings/Temp/ccUOmYcs.o -lgcc -lcygwin -luser32
-lkernel32 -ladvapi32 -lshell32 -lgcc
The difference is that the nonworking compile stops before it starts
showing the "ignoring nonexistent directory" messages.
I thought perhaps this was a permissions issue, so I matched the
user/group and file permissions between the directories, yet still no luck.
Any ideas for me to try would be much appreciated.
Thanks,
Tony
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple