我在群集的计算节点上有代码。我不能直接ssh到计算节点,所以我首先用
建立一个ssh隧道ssh -f cluster.master.node -L 2222:cluster.compute.node:22 -N.
接下来,我使用
访问该文件C-x C-f /ssh:user@localhost#2222/path/to/blah.c。
最后我做了
M-x gdb。
在emacs 23中我会做
运行gdb(像这样)gdb --annotate = 3 / ssh:localhost#2222:/ path / to / program
但emacs 24中gdb功能的文档说“命令行 选项应包括-i = mi以使用gdb的MI文本界面。请注意,不再支持旧的“--annotate”选项。“
运行
gdb(像这样)gdb --i = mi / ssh:loalhost#2222:/ path / to / program
似乎有效,但是当我尝试运行该程序时,我得到“启动程序:/ misc / home / joey / git / proteus / proteus / dev / pts / 5:没有这样的文件或目录。”问题似乎是在可执行文件的路径前面存在不存在的/ misc /目录。甚至当我对/ home / joey / git / proteus /执行cd时,响应是“Working directory / home / joey / git / proteus(canonically / misc / home / joey / git / proteus)。”
我可以在Emacs 24中远程调试我的程序,还是应该回到23?
答案 0 :(得分:2)
尝试M-x gud-gdb RET:它将为您提供旧的Emacs-22行为。