Mail Archives: djgpp/1996/08/14/13:46:57
stwand07 AT uctvms DOT uct DOT ac DOT za wrote:
>
> In article <4uq1ef$1ndo AT rs18 DOT hrz DOT th-darmstadt DOT de>, lehmann AT mathematik DOT th-darmstadt DOT de (Alexander Lehmann) writes:
> > stwand07 AT uctvms DOT uct DOT ac DOT za wrote:
> > : Hi
> >
> > : It seems 'make' 3.73 doesn't work on a network drive ?
> >
> > : When run from a sub-directory of a network drive it fails to find the makefile
> > : unless given the '-f' option. When run from the root directory of the network
> > : drive it finds it automatically. Running 'make -w' shows that the correct
> > : directory is being entered, so what gives ?
> >
> > I think there is something broken in the stat function for networked
> > drives, this affects gcc in some way and maybe also make.
> >
> >
> Yup,
>
> I checked the mail archives, and under certain versions of Novell Netware (or
> all?), the stat() function doesn't work. I can't compile anything : make and
> gcc don't work 8-(
>
> gcc complains about djgpp.lnk not being found (during linking, so ld is
> actually at fault). If I copy djgpp.lnk to the current directory it finds it,
> but then can't find libraries (libgcc, etc).
>
> Is there a workaround or bugfix available? I really need to get djgpp working
> on the network...
stat() in fact has a bug.
gcc stats() for 'x:/djgpp/lib/.' to check if the library
directory exists. This works fine, if x is a local
drive, but fails for network drives. Eli once sent me a patch
for that, it is available on
ftp://ftp.lstm.ruhr-uni-bochum.de/pub/djgpp/patches/stat.pat
I have recompiled gcc with that patch and it works fine. If
you really want to have that, I can put it into the same area.
A simpler (?!) workaround is to switch from NETX to VLM. If you
need help on that, send me a mail.
But you will not want to put djgpp on a networked drive. fseek() has
a bug, or better a workaround for a bug, that drastically degrades
performance on drives that do not benefit from smartdrive and alikes.
(Anybody working on that? I need some space on my local drive ;-)
So unless you have a 100MBit network, expect linking times for
``hello world'' of some 40 seconds. (It does _not_ crash, just be
patient. I ain't)
Oh yes, why does gcc stat 'x:/djgpp/lib/.' instead of 'x:/djgpp/lib' ?
Well, it comes from UNIX and you can have symbolic links. The dotless test
can exist, but might be a link pointing to some nonexisting directory.
Or it might be just a plain file, or some pipe or whatever. The first test
makes sure that the path leads to an existing directory. Just to
show you some gotchas when porting from DOS to UNIX...
--
Ciao
Tom
*************************************************************
* Thomas Demmer *
* Lehrstuhl fuer Stroemungsmechanik *
* Ruhr-Uni-Bochum *
* Universitaetsstr. 150 *
* D-44780 Bochum *
* Tel: +49 234 700 6434 *
* Fax: +49 234 709 4162 *
* Voice/Fax Box: +49 2561 91371 2056 *
* http://www.lstm.ruhr-uni-bochum.de/~demmer *
*************************************************************
- Raw text -