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: problem w/ mingw32/egcs/msvcrt and file reads (fwd)


--- Mumit Khan <khan@xraylith.wisc.edu> wrote:
> On Mon, 10 May 1999, Earnie Boyd wrote:
> 
> > gcc -v -o cpsh.exe cpsh.o -specs=msvcrt-specs
> > Reading specs from c:\root\usr\lib\gcc-lib\i386-mingw32\egcs-2.91.66\specs
> > Reading specs from
> > c:\root\usr\lib\gcc-lib\i386-mingw32\egcs-2.91.66\msvcrt-specs
> > gcc version egcs-2.91.66 19990314 (egcs-1.1.2 release)
> >  ld -o cpsh.exe c:\root\usr\lib\crt2.o
> > -Lc:\root\usr\lib\gcc-lib\i386-mingw32\egcs-2.91.66
> -Lc:\root\usr\lib\gcc-lib
> > -Lc:\root\usr\lib
> >
>
-Lc:\root\usr\lib\gcc-lib\i386-mingw32\egcs-2.91.66\..\..\..\..\i386-mingw32\lib
> > -Lc:\root\usr\lib\gcc-lib\i386-mingw32\egcs-2.91.66\..\..\.. cpsh.o
> -lmingw32
> > -lgcc -lmoldname -lmsvcrt -lkernel32 -ladvapi32 -lshell32 -lmingw32 -lgcc
> > -lmoldname -lmsvcrt
> > 
> > cygcheck cpsh.exe
> >   C:\WINNT\System32\kernel32.dll
> >     C:\WINNT\System32\ntdll.dll
> >   C:\WINNT\System32\crtdll.dll
> >   C:\WINNT\System32\msvcrt.dll
> > 
> 
> Thanks Earnie. 
> 
> The culprit is one of the import libraries, and the only possible culprit 
> here is libmoldname.a. The problem I believe is in your setup, and not in 
> the msvcrt add-on.
> 

Yep.  That was indeed the culprit thanks.

> You need to make sure that the correct version of libmoldname.a is being
> picked up. You'll see that I distribute a slightly different libmoldname.a
> in the msvcrt add-on from what's in the egcs-1.1.2 standard/crtdll
> distrib.
> 

I moved the msvcrt specfic objects to libmsvcrt-moldname.a for example.  I had
failed to modify the specs file to use it that way.

> When using different specs that point to different libraries, espcially
> with the same name, the best way to deal with it is via the -B flag, and
> not necessarily via -specs flag. That's why my msvcrt add-on package 
> simply overwrites the crtdll setup so that I can avoid answering the 
> usual questions.

I.E.:
mkdir /usr/lib/crtdll
  mv <crtdll specific files> /usr/lib/crtdll
mkdir /usr/lib/msvcrt
  mv <msvcrt specific files> /usr/lib/msvcrt

I would then do:

gcc ... -B /usr/lib/crtdll

OR

gcc ... -B /usr/lib/msvcrt


QUESTION:
  Would it work to put the gcc-lib/... directory under crtdll & msvcrt for the
specific objects?  If not how would you setup to be able to choose one over the
other?


Thanks for your efforts,
Earnie
_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.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]