Subject: Hard-to-detect ``old binaries hanging around'' problem

From: Ulrich Fahrenberg <[email-masked]>
Date: Sun, 18 Aug 2002 10:19:54 +0200 (MEST)

Hello list,

I recently, finally, pulled myself together to upgrade from 2.2.2 to
2.4.8, and I am pretty impressed about an apparent enhancement in
speed I really didn't suspect: I expected 2.4.8 to be slightly slower
actually, since it's more complex. Good work...

OK, here's the deal: make install creates a symbolic link fvwm ->
fvwm2 in BINDIR, which in my case is /pack/fvwm/bin, with a symbolic
link from /usr/local/bin. There is also a file /usr/X11R6/bin/fvwm2,
the old fvwm-2.2.2. In my PATH, /usr/local/bin comes way before
/usr/X11R6/bin.

The last line of my .xinitrc says ``exec /usr/local/bin/fvwm'', which
as I said is a link to /pack/fvwm/bin/fvwm, which in turn is a link to
fvwm2. This last link is the problem, since apparently .xinitrc
ignores everything about my PATH and finds this fvwm2 in
/usr/X11R6/bin, instead of /pack/fvwm/bin. I.e. my old fvwm-2.2.2 gets
started.

It took me a couple of days to find out what happened, and of course
the problem was solved easily by moving /usr/X11R6/bin/fvwm2 to a safe
and unaccessible place... But the problem could've been avoided from
the beginning by creating links with absolute paths instead of
relative paths during install:

Before:
	$BINDIR/fvwm	-> fvwm2
After:
	$BINDIR/fvwm	-> $BINDIR/fvwm2

(and likewise with fvwm-root, btw.)

I guess a little change to Makefile.am or similar could solve this,
but I know nothing about autoconf, so I can't submit a patch.

Regards,
uli

-- 
Ulrich Fahrenberg -- http://www.math.auc.dk/~uli

--
Visit the official FVWM web page at <URL:http://www.fvwm.org/>.
To unsubscribe from the list, send "unsubscribe fvwm-workers" in the
body of a message to [email-masked].
To report problems, send mail to [email-masked]

---

From: Mikhael Goikhman <[email-masked]>
Date: Sun, 18 Aug 2002 10:28:15 +0000

> 	$BINDIR/fvwm	-> $BINDIR/fvwm2

This is strange. I can't reproduce this behaviour with any shell.
Relative symlinks should not be searched in $PATH, but in ./ only.
I would suspect a problem with your setup otherwhere.

If the original symlink does not work, does the following work?

	$bindir/fvwm    -> ./fvwm2

Can you make it reproducible using "ln -s date something" commands?

Regards,
Mikhael.

---

From: Ulrich Fahrenberg <[email-masked]>
Date: Mon, 19 Aug 2002 01:06:37 +0200 (MEST)

> On 18 Aug 2002 10:19:54 +0200, Ulrich Fahrenberg wrote:
[a lot of blab on symlinks pointing the wrong way and on old
fvwm2-binaries getting started when they shouldn't]

> This is strange. I can't reproduce this behaviour with any shell.

Well I can't either...

> I would suspect a problem with your setup otherwhere.

Yes of course, sorry for the trouble. I was messing around with my
.xinitrc and .xsession etc just a bit too much, so I got lost. Now my
setup is exactly as I was describing (with the ``old'' symlinks and
/usr/X11R6/fvwm2 existing), and I get 2.4.8 running...

Again, sorry.

uli