[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug-stow] info dir conflict installing emacs from source

From: jeff stern
Subject: [Bug-stow] info dir conflict installing emacs from source
Date: Sat, 26 Sep 2015 19:01:12 -0700


Using stow with emacs source installations today, following the instructions at (*) and (+) was almost a no-brainer for me, except for one thing: a conflict when trying to run stow.  It turns out stow had a conflict with dir files (you probably know about this already..?)

   /usr/local/stow/emacs-24.5/share/info/dir  <--- /usr/local/share/info/dir

But stow could not make the above symlink from /usr/local/share/info/dir because /usr/local/share/info/dir already existed (and I already had info files in that dir).

Therefore, when I finished compiling emacs successfully and installing under /usr/local/stow/emacs-24.5, and then ran stow, I got an error:

$ ./configure --with-xft --with-x-toolkit=lucid
$ make
$ sudo make install prefix=/usr/local/stow/emacs-24.5
$ cd /usr/local/stow
$ sudo stow --verbose=3 emacs-24.5
WARNING! stowing emacs-24.5 would cause conflicts:
  * existing target is neither a link nor a directory: share/info/dir
All operations aborted.
$ _

..and it took me most of the afternoon to figure out what it was (me being a first-time user of stow).

The conflict was not with "share/info/dir" nor with "/usr/local/stow/share/info/dir". It was with a previously existing "/usr/local/share/info/dir".  Again, as a first time user of stow, I did not know this and could not tell easily from the error message because of the incomplete path listed.

Suggestion #1: It would save me time if the error message were more explicit in 4 ways:

  1. use full pathnames,
  2. say what action exactly stow was trying to take
  3. mention BOTH the source and the target files involved, and
  4. tell the user what they can now do about it.

For instance, ideally I would have seen an error message like the following:

I cannot symlink /usr/local/share/info/dir to /usr/local/stow/share/info/dir because /usr/local/share/info/dir already exists. Please rectify this by hand.

Suggestion #2: Is it possible to merge 2 dir files into 1?

It seems to me that my previously-existing dir file (/usr/local/share/info/dir) and the new one coming in from the emacs compilation (/usr/local/stow/share/info/dir) really needed to be merged into a single file. So..

2a) Can install-info merge two "dir" files? (I don't know enough about install-info).

2b) If so, would it be possible to enhance stow so that if it sees a dir file conflict it calls install-info intelligently the background to merge them?

Let me know if there is any additional information I can provide.

Jeff Stern address@hidden

(*) http://www.emacswiki.org/emacs/BuildingEmacs#toc2
(+) https://gist.github.com/favadi/18438172892bc4178b27

additional system info, per instructions ..

reply via email to

[Prev in Thread] Current Thread [Next in Thread]