Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

Every time I try to launch vim or emacs or even top (I think it's actually any command that uses ncurses) in a unix terminal (on a cluster computer over ssh), I get a a continuous stream of 'Name collision between x x x' errors like this:

Name collision between dumb dumb
Name collision between unknown unknown
Name collision between lpr lpr
Name collision between glasstty glasstty
Name collision between vanilla vanilla
Name collision between ansi+local1 ansi+local1
Name collision between ansi+local ansi+local
......
Name collision between terminet1200 terminet1200 terminet1200 terminet1200 terminet1200 terminet1200 terminet1200 terminet1200 terminet1200 terminet1200 terminet1200 terminet1200
Name collision between h19-a h19-a h19-a h19-a h19-a h19-a h19-a h19-a h19-a h19-a h19-a h19-a
Name collision between h19-bs h19-bs h19-bs h19-bs h19-bs h19-bs h19-bs h19-bs h19-bs h19-bs h19-bs h19-bs
Name collision between h19-us h19-us h19-us h19-us h19-us h19-us h19-us h19-us h19-us h19-us h19-us h19-us
Name collision between h19 h19 h19 h19 h19 h19 h19 h19 h19 h19 h19 h19
......

According to some research I've done on the web this should be related to TERMCAP/TERMINFO, and I think this started happening after I used GNU screen. And in fact, when I am inside a GNU screen session, vim and emacs work fine (except some strange key mappings, for instance arrow keys don't work)

I've tried to set the TERMCAP environment variable to a non-existing file, as I've read somewhere on the internet, and it caused vim to work (with different settings than my usual ones) but not emacs...

Do you know what I can do to solve this problem?

share|improve this question
    
What unix variant are you using? If Linux, what distribution? (If you don't know, post the output of uname -a.) –  Gilles Oct 26 '11 at 22:49
    
Here's the output: Linux [host] 2.6.18-274.3.1.el5 #1 SMP Fri Aug 26 18:49:02 EDT 2011 x86_64 x86_64 x86_64 GNU/Linux –  Al. Oct 26 '11 at 23:59
2  
You probably have duplicated terminfo/termcap libraries. Do this: run "strace -o xxx emacs -nw" and immediately exit emacs. Then open the file xxx and search for the error message. A couple of lines above you should see which term* libraries were opened; there are probably your duplicated terminal entries. –  angus Oct 27 '11 at 16:39
    
Thanks, I saw in the trace that it was trying to open some libraries in the Enthought Python Distribution lib folder, which had nothing to do with emacs, so I remembered I had added that folder to my LD_LIBRARY_PATH (it's the only way I know to run some compiled code using specific shared libraries...) –  Al. Oct 27 '11 at 22:49
add comment

migrated from stackoverflow.com Oct 26 '11 at 22:44

This question came from our site for professional and enthusiast programmers.

1 Answer

Solved: The problem was I had specified in my ~/.bashrc an LD_LIBRARY_PATH that contained a folder with many shared libraries, some of which were probably duplicates of others. I think in my case it was the ncurses libraries.

share|improve this answer
    
you don't write how to circumvented it: did you just put the EPD libs at the end of LD_LIBRARY_PATH? –  K.-Michael Aye Oct 3 '12 at 0:16
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.