Jehan <[EMAIL PROTECTED]> said: > Harold L Hunt wrote: > > Okay, if you are so smart, explain to me how I can put a drive letter into a > > batch file that is expected to work on computers where Cygwin could be > > installed on ``c:\cygwin'' or ``d:\cygwin''? I certainly could not put ``c'' > > as the drive, nor could I put ``d'' as the drive. So, what do you suggest? > > First, I'm not trying to bash you (how could I, we are fellow > Cgwin/XFree programmers *grin*) but I'm trying to understand your > motivation. So here is my question: in what sense is "\cygwin" better > "c:\cygwin"? I mean, I used to install cygwin in "c:\program > files\cygwin". So neither "\cygwin" nor "c:\cygwin" would work. But > then, when I see just "\cygwin", I think a unix path (I know, the "\" > isn't a "/", but I'm a little dumb sometimes :p). So at first, I > overlooked it. I'm pretty sure that if I had seend "c:\cygwin", I would > have thought of changing it. > The other thing too is that "\cygwin" is sort of a bastard. It's not a > full path because it doesn't have the drive letter. It's not a relative > path because it doesn't start from the current directory but from the > root of the current drive. > Last, with "\cygwin", the batch file works sometimes (the current drive > is where cygwin is) and sometimes it doesn't (wrong current drive). As a > programmer, I prefer things that always crash or never do. > So, in this light, as my personal opinion (which doesn't matter anymore > now that I have cygwin in "c:\cygwin" ;p ), would be to use an full > absolute path. >
Unfortunately you cannot use a relative path (e.g. ..\..\.., which gets \bin appended on it to point to /bin) because that causes bash (or whatever shell you launch in xterm) to have a relative path the Cygwin binaries. Thus you can no longer run Cygwin binaries if you change out of the /usr/X11R6/bin directory, because your relative path to the Cygwin binaries is now incorrect. So, we have to use an absolute path, which is why why need something like c:\cygwin. We go one further an change this to \cygwin because we used to get weekly complaints like, ``yikes, cygwin1.dll could not be found, cause i am l33t and i installed to d:\cygwin''. We do not get regular complaints anymore, so \cygwin is an improvement over c:\cygwin. Now, about not being able to see things that you are looking for in a file: I wrote two paragraphs! of comments about setting the path correctly, and in those comments there does appear a c:\cygwin. I cannot help someone if they are skimming so fast as to completely miss all of that. I will admit one current problem with startxwin.bat: the User's Guide is out of date so we do not recommend that new users read it to install Cygwin/XFree86. Unfortunately this means that people do not see, repeatedly, my recommendations that they install Cygwin in c:\cygwin that are in the User's Guide. One idea is that we could try to parse the return from ``chdir'', which gives, for example: C:\cygwin\usr\X11R6\bin>chdir C:\cygwin\usr\X11R6\bin It would be pretty easy to construct a location for /bin or /usr/bin from the output of chdir, but then we are back to the Catch-22 that we would need Cygwin binaries in order to find the location of the Cygwin binaries. > > > Okay, okay, so you are thinking, ``just use cygpath, duh''. However, if I > > could use ``cygpath'', then that implies that I already know where the Cygwin > > binaries are located since I just ran one of them. But, I don't know where > > the Cygwin binaries are located, as that is why we are guessing what the path is. > > Can the batch file be created via the installation script? Then you're > environment would be cygwin and not windows, wouldn't it? The thing I > don't know there would be the "cr/lf" vs "lf" thing. > > > >>That's no excuse to fail to fix a known problem. > > Bernard, > And "not having a better solution", is it a good excuse? It's always > easy to critize but critizing doesn't make the world to go forward. > > > > Huh? There are things in life that are worth spending time on because they > > will have a large effect, and there are things in life that are not worth > > spending time on because they will have almost no effect whatsoever. Changing > > the startxwin.bat file to allow people to run it from a location other than > > where it is installed to (which has got to be obvious to most users as doing > > something that was not intended), is one of those things that will have almost > > no effect. You are going to have to do a lot better than that if you expect > > me to keep my gleaming white ass in a dimly lit room programming when I could > > be sitting outside by the pool, getting a tan, and drinking a beer. > > > > Man, if you are going to try to one-up the maintainer in public, you had damn > > well better be giving a complete solution, rather than trying to suggest that > > the maintainer creates one himself. Because in the latter case you just open > > yourself up to off-topic ranting like I just did. Yes, this makes me feel > > better when I get to write funny things about how I don't like to program. > > So, in a way, you have done me a good service. Thank you :) > > Go harold, go!! Kill him :). You know what is better than "sitting > outside by the pool, getting a tan, and drinking a beer"? It sitting > outside by the pool, getting a tan, drinking a beer and watching a fight > game! :) > > Jehan Heh heh... What is a ``fight game''? Are you referring to boxing? Harold
