jak@VIOLET.BERKELEY.EDU (John A. Kunze) (03/22/91)
There are some irritating problems with the installation of ISODE 6.8 that were reported as bugs in release 6.7. I'm reporting them again now and offering my experiences for what they're worth. The problems occurred under "4.4BSD", 4.3BSD, and Ultrix 3.1, but not Sun OS 4.1. Since at least 6.7, the inst-all target tries to make the directories that you defined in CONFIG.make. It does it using commands of the form echo 'if test ! -d /usr/lib; then mkdir /usr/lib; fi' | sh -ve There are two purely technical problems with this. First, the -e option causes the same problem that I assume the use of echo was meant to avoid, which is to prevent the "error" return of the test from killing make's shell, and in turn the make itself. Even if you remove the -e, the lack of an "else true;" clause causes the last command status returned by the "sh" on an unsuccessful test to be the status of that test command, and this kills the make also. Other problems associated with establishing these directories are that (a) only the "leaf" directories are made -- it's just as much work by hand for me to make sure that the immediate parents exist as it is to make sure the "leaves" exist, so this "labor-saving" is error prone and became an annoying waste of time for me; and (b) the "man" directory is made, but not the man{1,5,8} subdirectories, so the man pages didn't get installed correctly. This isn't a major problem, but when a big complicated makefile falls on its face while taking its first step, it shakes your confidence in the rest of the release. I ended up not installing 6.7 for that reason. John A. Kunze Information Systems and Technology 293 Evans Hall Berkeley, CA 94720 415-642-1530 jak@violet.berkeley.edu
mrose@CHEETAH.CA.PSI.COM (Marshall Rose) (03/22/91)
Let me get this straight: you didn't install the software because it didn't create the man directories??? So, if we do these two things: 1. make the mkdir commands as echo 'if test ! -d /usr/lib; then mkdir /usr/lib; else true; fi' | sh -v 2. create the man subdirs. and we then document the fact that intermediate directories aren't built, will that explain/fix everything? /mtr ps: you really shouldn't use the isode list for reporting bugs.
jak@VIOLET.BERKELEY.EDU (John A. Kunze) (03/22/91)
> Let me get this straight: you didn't install the software because it > didn't create the man directories??? No, make came up with a a bunch of errors after the directory building step when I tried to install 6.7. Among all the error messages at my disposal, including the known ignorable errors, the only thing I could say for certain that went wrong was the directory building. I assumed some files hadn't gotten installed properly and blamed that step for (perhaps jumping to conclusions). After working on it for a while, I never did get it to pass the tests. I then reported the bug in 6.7 and installed 6.0. When it re-appeared, this time in 6.8, I figured out the rather subtle cause, fixed it and installed 6.8 with no problems. Given the hair tearing I went through, I thought other people might benefit from my experience, or perhaps I could learn from theirs. I wouldn't take the trouble if I wasn't so pleased with ISODE in general, in case I didn't mention that :-). > ps: you really shouldn't use the isode list for reporting bugs. Since I hadn't had any acknowledgement from the bug list that it was in fact a bug, perhaps this was really a "discussion" topic? > 1. make the mkdir commands as > > echo 'if test ! -d /usr/lib; then mkdir /usr/lib; else true; fi' | sh -v > > 2. create the man subdirs. > > and we then document the fact that intermediate directories aren't built, > will that explain/fix everything? Yup. -John