每次我尝试启动vim
或者emacs
甚至是top
(我认为这实际上是任何命令使用的ncurses)在UNIX终端(群集计算机通过ssh上),我得到这样的错误“XXX之间的名称冲突”的AA连续流:
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
......
根据我在网络上所做的一些研究,这应该与TERMCAP / TERMINFO有关,我认为这是在我使用GNU屏幕之后开始发生的。实际上,当我进入GNU屏幕会话时,vim和emacs可以正常工作(某些奇怪的键映射除外,例如箭头键不起作用)
我尝试将TERMCAP环境变量设置为不存在的文件,因为我已经在Internet上的某个地方阅读了文件,这导致vim可以工作(设置与我平常的设置不同),但无法使emacs正常运行...
您知道我能解决这个问题吗?
输出为: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。
您可能已经复制了terminfo / termcap库。这样做:运行“ strace -o xxx emacs -nw”并立即退出emacs。然后打开文件xxx并搜索错误消息。在上面的几行中,您应该看到打开了哪些term *库。可能有重复的终端条目。
—
安格斯
谢谢,我在跟踪中看到它正在尝试打开Enthought Python Distribution lib文件夹中的某些库,该库与emacs无关,所以我记得我已经将该文件夹添加到了LD_LIBRARY_PATH中(这是我知道的唯一方法使用特定的共享库运行一些已编译的代码...)
—
Al。
uname -a
。)