www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2001/09/22/10:07:58

Date: Sat, 22 Sep 2001 17:03:31 +0300
From: "Eli Zaretskii" <eliz AT is DOT elta DOT co DOT il>
Sender: halo1 AT zahav DOT net DOT il
To: Wojciech Galazka <wojciech DOT galazka AT polkomtel DOT com DOT pl>
Message-Id: <3405-Sat22Sep2001170330+0300-eliz@is.elta.co.il>
X-Mailer: Emacs 20.6 (via feedmail 8.3.emacs20_6 I) and Blat ver 1.8.9
CC: djgpp-workers AT delorie DOT com
In-reply-to: <250B3114DA16D511B82C00E0094005F8023FC197@MSGWAW11> (message from
Wojciech Galazka on Sat, 22 Sep 2001 14:35:59 +0200)
Subject: Re: gcc-3.01 seems unstable
References: <250B3114DA16D511B82C00E0094005F8023FC197 AT MSGWAW11>
Reply-To: djgpp-workers AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp-workers AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

> From: Wojciech Galazka <wojciech DOT galazka AT polkomtel DOT com DOT pl>
> Date: Sat, 22 Sep 2001 14:35:59 +0200
> 
> I'm writting once again to let you know there is a problem with absolute
> path names whose sizes is very large ( > 67 chars, perhaps)
> under W2k
> I only started looking at this and it seems that if a pathname is too long
> then a root directory (\) is used instead
> so rm -rf \very_long_path\*.*
> results in 
> rm -rf \*.*
> 
> This has just happened to me and I lost 700 MB of some programs :)
> when I tried to continue compiling libstdc++-v3.
> Make gave something like 
> (1234567890 was the first directory on the root dir
> two directories only shown - actually more were deleted, the point is that
> 1) directories from the root dir are scanned; 2) make does recursive scans)

No, please _do_ show us the _exact_ full directory name that caused
this to happen.  You can do that safely, without fearing any loss of
data, if you run "rm -ir" instead of just "rm -r" or, worse' "rm
-rf".  It's also advisable to begin with removing a single file (thus
not risking to lose any data except that file, which can be a trash
file).  Or are you saying that the problem only happens with "rm -r"?

It is impossible to debug this without seeing at least one full
example.

> d:/djgpp.2/bin/rm: cannot remove directory
> `.libs/libstdc++.lax/djgpp.2/gnu/gcc-3.02/build.djg/i586-pc-msdosdjgpp/libst
> dc++-v3/include/backward/1234567890': Operation not permitted (EPERM)

This name is much longer than 67 characters, even though you replaced
part of the name with 1234567890.

Also, where do you see that ``directories from the root dir are
scanned''?  ".libc/libstdc++.lax/..." does not start from the root.

Finally, what is the command invoked by the Makefile (or a shell
script) which runs `rm' in this case?

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019