tody@noao.edu (Doug Tody NOAO/IRAF CCS) (01/11/91)
From article <BGLENDEN.91Jan8231100@colobus.cv.nrao.edu>, by bglenden@colobus.cv.nrao.edu (Brian Glendenning): > > I want to completely separate my vendors (DEC) X windows from the MIT > distribution. So in site.def I set: > > /* Place this X under /local */ > #define DestDir /* as nothing */ > #define UsrLibDir $(DESTDIR)/local/lib ... > [deleted] An elegant way to solve this problem (or rather avoid it) is to use symbolic links to toggle between two different X versions such as vendor and MIT. The problem with installing into a nonstandard place is that probably no matter what you do, eventually you will try to build some piece of software or run some X client which breaks the rules, even if you get everything set up right. Using symbolic links is easy as the X runtime files will be found in only a few places, i.e., /usr/{bin,lib,include}/X11, a few -llibX*.a libraries in /usr/lib, and some manpages off /usr/man or /usr/catman if you install manpages. To set up both vendor and MIT versions of X you can 1) set up a link such as /x11 pointing to an X11 runtime directory somewhere, e.g., /foo/x11.DEC, 2) tar off all the files listed above and replace by links pointing *through* the /x11 link (e.g., /usr/bin/X11 -> /x11/bin/X11), 3) switch the link /x11 to point to where you want to install the MIT runtime files, e.g., /x11 -> /foo/x11.MIT, 4) perform a normal MIT install. You can then keep both the vendor and MIT versions of X online and switch between them merely by changing the link at /x11. Subject: Re: Separating vendor/MIT X Newsgroups: comp.windows.x References: <BGLENDEN.91Jan8231100@colobus.cv.nrao.edu> From article <BGLENDEN.91Jan8231100@colobus.cv.nrao.edu>, by bglenden@colobus.cv.nrao.edu (Brian Glendenning): > > I want to completely separate my vendors (DEC) X windows from the MIT > distribution. So in site.def I set: > > /* Place this X under /local */ > #define DestDir /* as nothing */ > #define UsrLibDir $(DESTDIR)/local/lib ... > [...etc.] An elegant way to solve this problem (or rather avoid it) is to use symbolic links to toggle between two different X versions such as vendor and MIT. The problem with installing into a nonstandard place is that probably no matter what you do, eventually you will try to build some piece of software or run some X client which breaks the rules, even if you get everything set up right. Using symbolic links is easy as the X runtime files will be found in only a few places, i.e., /usr/{bin,lib,include}/X11, a few -llibX*.a libraries in /usr/lib, and some manpages off /usr/man or /usr/catman if you install manpages. To set up both vendor and MIT versions of X you can 1) set up a link such as /x11 pointing to an X11 runtime directory somewhere, e.g., /foo/x11.DEC, 2) tar off all the files listed above and replace by links pointing *through* the /x11 link (e.g., /usr/bin/X11 -> /x11/bin/X11), 3) switch the link /x11 to point to where you want to install the MIT runtime files, e.g., /x11 -> /foo/x11.MIT, 4) perform a normal MIT install. You can then keep both the vendor and MIT versions of X online and switch between them merely by changing the link at /x11. -- Doug Tody, National Optical Astronomy Observatories, Tucson AZ, 602-325-9217 UUCP: {arizona,decvax,ncar}!noao!tody or uunet!noao.edu!tody Internet: tody@noao.edu SPAN/HEPNET: NOAO::TODY (NOAO=5355)