在Emacs中设置解释器的路径,以便使用perldb进行Perl调试
当我键入在Emacs中设置解释器的路径,以便使用perldb进行Perl调试,perl,debugging,emacs,Perl,Debugging,Emacs,当我键入M-x perldb来调试我的Perl脚本时,调试会话失败,我想这是因为我在脚本的开头有一行代码说: use 5.010 Emacs Perl调试器抱怨: Perl v5.10.0 required--this is only v5.8.6, at /path/to/file 我认为它正在加载一个旧的Perl解释器(在我的系统中安装的默认解释器)。但是,我在不同的路径上安装了一个更新得多的解释器,因此如何在Emacs中告诉perldb我希望它使用的解释器路径?在perldb.el
M-x perldb
来调试我的Perl脚本时,调试会话失败,我想这是因为我在脚本的开头有一行代码说:
use 5.010
Emacs Perl调试器抱怨:
Perl v5.10.0 required--this is only v5.8.6,
at /path/to/file
我认为它正在加载一个旧的Perl解释器(在我的系统中安装的默认解释器)。但是,我在不同的路径上安装了一个更新得多的解释器,因此如何在Emacs中告诉
perldb
我希望它使用的解释器路径?在perldb.el
的版本中,我看到以下代码:
(defvar perldb-command-name "perl"
"*Pathname of Perl interpreter.")
我确信,如果您重新定义此变量的值,或者设置
PATH
环境变量,以便perl
调用5.10版本的perl,一切都会对您有效。在perldb.el
的版本中,我看到以下代码:
(defvar perldb-command-name "perl"
"*Pathname of Perl interpreter.")
我敢肯定,如果您重新定义这个变量的值,或者设置
PATH
环境变量,以便perl
调用5.10版本的perl,一切都会对您有用。Hmm,我尝试过,但没有用。此外,我认为您需要在变量名中添加前缀gud-
,即从我在谷歌搜索中看到的,变量名是gud perldb command name
实际上,我甚至没有perldb.el
。Perl调试器现在是否可能是Emacs的一部分?您正在使用哪些Emacsperldb
可能是emacs发行版的标准配置,但它仍将在emacs lisp中实现,并且会有一个.el
源文件。我还将尝试设置$PATH
,将您的perl
放在找到的任何perl之前。请在启动emacs之前执行此操作。谢谢user5402。我正在运行Emacs23.1.1
。我在系统中到处寻找perldb.el
文件,但找不到它。我的.zshrc
中有一个别名alias perl=/path/to/desired/perl
,当我从命令行运行perl脚本时,它们会运行正确的解释器。别名不起作用。必须修改PATH环境变量以包含5.10 perl所在的目录,并且该目录必须位于标准perl所在的目录之前。你在用什么操作系统?嗯,我试过了,但没用。此外,我认为您需要在变量名中添加前缀gud-
,即从我在谷歌搜索中看到的,变量名是gud perldb command name
实际上,我甚至没有perldb.el
。Perl调试器现在是否可能是Emacs的一部分?您正在使用哪些Emacsperldb
可能是emacs发行版的标准配置,但它仍将在emacs lisp中实现,并且会有一个.el
源文件。我还将尝试设置$PATH
,将您的perl
放在找到的任何perl之前。请在启动emacs之前执行此操作。谢谢user5402。我正在运行Emacs23.1.1
。我在系统中到处寻找perldb.el
文件,但找不到它。我的.zshrc
中有一个别名alias perl=/path/to/desired/perl
,当我从命令行运行perl脚本时,它们会运行正确的解释器。别名不起作用。必须修改PATH环境变量以包含5.10 perl所在的目录,并且该目录必须位于标准perl所在的目录之前。你在用什么操作系统?