This is the mail archive of the cygwin@sourceware.cygnus.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: impure_ptr undefined again (-mno-cygwin)


This is a definite bug with cpp.  I modified the specs file to use each of one
of -iwithprefixbefore /usr/i686-pc-cygwin/include/mingw, -isystem
/usr/i686-pc-cygwin/include/mingw,  -I /usr/i686-pc-cygwin/include/mingw and
couldn't get gcc to use /usr/i686-pc-cygwin/include/mingw/io.h at all.

I was able to `gcc -c foo.c -I /usr/i686-pc-cygwin/include/mingw' to work
around the problem and get the correct io.h included.

Earnie.

--- Maxim Sobolev <sobomax@altavista.net> wrote:
> Hi,
> 
> I've just downloaded and installed brand new Cygwin toolkit using new
> "setup.exe" method and found that we again ran into problem with messed
> Cygwin
> and Mingw headers. My previously installed version did not exibit this
> misbehaviour. When I'm trying to compile any program which using stderr I
> have:
> 
> ----------- tst.c-------------
> #include <stdio.h>
> 
> int main()
> {
>  fprintf(stderr, "this is a test\n");
>  exit(0);
> }
> ----------- tst.c-------------
> 
> bash-2.03$ gcc -mno-cygwin tst.c -o tst
> C:\TEMP/cc4N5Qh5.o(.text+0x24):tst.c: undefined reference to `_impure_ptr'
> collect2: ld returned 1 exit status
> 
> Following is output of gcc -v and mount:
> 
> bash-2.03$ gcc -v -mno-cygwin tst.c -o tst
> Reading specs from /usr/lib/gcc-lib/i686-pc-cygwin/2.95.2/specs
> gcc version 2.95.2 19991024 (release)
>  /usr/lib/gcc-lib/i686-pc-cygwin/2.95.2/cpp.exe -lang-c -v -D__GNUC__=2
> -D__GNUC
> _MINOR__=95 -Di386 -D_WIN32 -DWINNT -D_X86_=1 -D__STDC__=1
> -D__stdcall=__attribu
> te__((__stdcall__)) -D__cdecl=__attribute__((__cdecl__))
> -D__declspec(x)=__attri
> bute__((x)) -D__i386__ -D_WIN32 -D__WINNT__ -D_X86_=1 -D__STDC__=1
> -D__stdcall=_
> _attribute__((__stdcall__)) -D__cdecl=__attribute__((__cdecl__))
> -D__declspec(x)
> =__attribute__((x)) -D__i386 -D__WINNT -Asystem(winnt) -Acpu(i386)
> -Amachine(i38
> 6) -remap -Acpu(i386) -Amachine(i386) -Di386 -D__i386 -D__i386__ -Di686
> -Dpentiu
> mpro -D__i686 -D__i686__ -D__pentiumpro -D__pentiumpro__ -iwithprefixbefore
> ../.
> ./../../i686-pc-cygwin/include/mingw32 -D__MINGW32__=0.2 tst.c
> C:\TEMP/ccCdocEd.
> i
> GNU CPP version 2.95.2 19991024 (release) (80386, BSD syntax)
> #include "..." search starts here:
> #include <...> search starts here:
>  /usr/lib/gcc-lib/i686-pc-cygwin/2.95.2/../../../../include
>  /usr/lib/gcc-lib/i686-pc-cygwin/2.95.2/../../../../i686-pc-cygwin/include
>  /usr/lib/gcc-lib/i686-pc-cygwin/2.95.2/include
>  /usr/include
> End of search list.
> The following default directories have been omitted from the search path:
>  /usr/lib/gcc-lib/i686-pc-cygwin/2.95.2/../../../../include/g++-3
> End of omitted list.
>  /usr/lib/gcc-lib/i686-pc-cygwin/2.95.2/cc1.exe C:\TEMP/ccCdocEd.i -quiet
> -dumpb
> ase tst.c -mno-cygwin -version -o C:\TEMP/ccF50KUA.s
> GNU C version 2.95.2 19991024 (release) (i686-pc-cygwin) compiled by GNU C
> versi
> on 2.95.2 19991024 (release).
>  /usr/lib/gcc-lib/i686-pc-cygwin/2.95.2/../../../../i686-pc-cygwin/bin/as.exe
> -o
>  C:\TEMP/cc4KjlO6.o C:\TEMP/ccF50KUA.s
>  /usr/lib/gcc-lib/i686-pc-cygwin/2.95.2/collect2.exe -o tst.exe
> /usr/lib/gcc-lib
> /i686-pc-cygwin/2.95.2/../../../../i686-pc-cygwin/lib/crt1.o
> -L/usr/lib/gcc-lib/
> i686-pc-cygwin/2.95.2
> -L/usr/lib/gcc-lib/i686-pc-cygwin/2.95.2/../../../../i686-
> pc-cygwin/lib -L/usr/lib/gcc-lib/i686-pc-cygwin/2.95.2/../../..
> C:\TEMP/cc4KjlO6
> .o -lgcc -lmingw32 -lmoldname -lcrtdll -luser32 -lkernel32 -ladvapi32
> -lshell32
> 
> -lgcc
> C:\TEMP/cc4KjlO6.o(.text+0x24):tst.c: undefined reference to `_impure_ptr'
> collect2: ld returned 1 exit status
> 
> bash-2.03$ mount
> Device              Directory           Type         Flags
> c:\Cygnus\cygwin-b20\H-i586-cygwin32\bin  /usr/bin            user
> binmode
> c:\Cygnus\cygwin-b20\H-i586-cygwin32\lib  /usr/lib            user
> binmode
> c:\Cygnus\cygwin-b20\H-i586-cygwin32  /                   user        
> binmode
> c:\temp             /tmp                user         textmode
> 
> -Maxim
> P.S. Please CC'ing replies to my e-mail since I doesn't subscribed to the
> list.
> 
> 
> --
> Want to unsubscribe from this list?
> Send a message to cygwin-unsubscribe@sourceware.cygnus.com
> 
> 

__________________________________________________
Do You Yahoo!?
Send online invitations with Yahoo! Invites.
http://invites.yahoo.com

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]