NightStrike wrote:
As you can see, the file does exist and is nonzero. It is readable by
user, group, and world. Why would gcc say it does not exist?
You're feeding a POSIX path to a MinGW application. MinGW applications
have no path translation ability and can only accept Win32 paths. So
no, the file does not exist in the eyes of i686-pc-mingw32-gcc because
it has no idea what /tmp is supposed to mean. But 'ls' is a Cygwin app
and knows what /tmp is, so of course that works.
You need to use MSYS if you want this to work, because MSYS does path
translation of command line arguments when invoking MinGW apps. Cygwin
does not because Cygwin is not intended to work with apps that don't
understand POSIX paths.