当我在运行GNUEmacs24.3和racketv6.1的Windows8.1计算机上尝试(run-racket)或(run-geiser)时,我得到以下输出:
Welcome to Racket v6.1.
default-load-handler: cannot open input file
path: f:/c/Users/James/AppData/Roaming/.emacs.d/el-get/geiser/scheme/racket/geiser/startup.rkt
system error: The system cannot find the path specified.; errno=3
>这确实很奇怪,但在浏览回溯之后,我仍然不太清楚到底发生了什么。
事实上,由于球拍开始的很好,这似乎是一些奇怪的方式,道路是从吉塞传递到球拍。我看到这种路径奇怪的唯一一次是在涉及MinGW bash的时候,而/c/让我认为它很可能是。事实上,如果没有领先的f:,那么这条路径将是完全有效的。
对于如何处理这个问题,我有点不知所措,因为我不知道Geiser是如何与Racket沟通的(我今天才开始尝试使用它),但我真的很想让它发挥作用,因为作为我的编辑,我对Emacs有很大的投入。
因此,我的问题是:鉴于上述作为线索,我应该调查哪些可能的问题点?
发布于 2014-11-18 01:58:03
在对Geiser源代码进行了一些挖掘之后,我在geiser/elisp/geiser-load.el中找到了以下代码:
(setq geiser-scheme-dir "/c/Users/James/AppData/Roaming/.emacs.d/el-get/geiser/scheme")这可能是MinGW make不正确地生成的。
我把它改成:
(setq geiser-scheme-dir "c:/Users/James/AppData/Roaming/.emacs.d/el-get/geiser/scheme")之后一切都完美无缺。
问题是Emacs的expand-file-name假设/c/...路径是一个相对路径,这是由于初始正斜杠造成的,并猜测它应该在当前驱动器的字母前面加上一个正确的Windows路径。
https://stackoverflow.com/questions/26706537
复制相似问题