我正在用 MinGW 系统编译 Xindy。dmake
总是因错误而死,我已将其缩小到 Makefile 中的几行。尝试在此运行 dmake:
SHELL = /bin/sh
some-target:
target=`echo info-recursive | sed s/-recursive//`;
如果您使用的是常规 Windows CMD 而不是 MinGW shell,则必须更改 SHELL 变量的位置以指向类似“C:/MinGW/msys/1.0/sh.exe”的内容。无论如何,以上失败:
CreateProcess failed (2).
dmake: Error executing 'bin/sh /S /c "target=`echo info-recursive | sed s/-recursive//`;"': No such file or directory
dmake: Error code -1, while making 'some-target'
sed 和 sh 已安装,它们工作正常。当我尝试将给定命令作为错误消息本身的输出运行时,我得到以下信息:
$ /bin/sh /S /c "target=`echo info-recursive | sed s/-recursive//`;"
/bin/sh: /S: No such file or directory
所以似乎dmake(或其他东西)正在将'/S /c'添加到shell参数中,而bash认为它是一个文件名,然后在找不到它时失败。
有没有人有这方面的经验或知道我该如何解决这个问题?