我使用 cygwin 在 Windows 中工作,但是现在我遇到了问题。
自从我将 cygwin 放在 上后D:\cygwin
,当我尝试运行一个程序,即 时ocamldep.exe
,它会返回一个路径错误,我不知道如何修复。
错误如下。
/bin/sh: D:cygwinbinocamldep.exe: command not found
我确信他们没有 cygwinbinocamldep.exe,但如何将其更改为 ocamldep.exe?抱歉,但我对 Unix 及其上的所有东西都不太了解。
答案1
解决此问题的基本方法非常简单。
打开 cmd 提示符,尝试一个简单的路径,例如SET PATH=.
thenECHO $PATH%
来查看您的路径。然后运行 cygwin.exe,这样您的 cmd shell 就会转换为 cygwin shell。(这是运行 cygwin 的旧方法,仍然有效)。
然后看echo $PATH
一下..那么至少你的路径应该很容易看到。
并且无论路径如何,以下内容均可正常工作。尝试/cygdrive/c/blah/aaa.exe
运行c:\blah\aaa.exe
并相应地更改文件路径。
您不应该遇到任何路径变量问题,因为您甚至没有使用路径。如果存在某些路径问题,例如它以某种方式从其他地方获取了 PATH(例如 $PATH 的值),那么您可以找出位置并进行调整。
答案2
您的路径有问题。我猜是字符串“D:\cygwin\bin\ocamldep.exe”被传递给 sh,然后 sh 删除了反斜杠,最后得到 D:\cygwinbinocamldep.exe。
请发布您的 $PATH 变量中的内容:echo $PATH 将会告诉您它的值是什么。
除此之外,您可以尝试运行 D:\cygwin\bin\ocamldep.exe、/cygwin/bin/ocamldep.exe 或 /bin/ocamldep.exe(第一个是带有 UN 的 Windows 路径X 样式的反斜杠,第二和第三是原生 UNX 路径,其中一个可能有效)。