如何使Windows上的“ Make”使用Unix查找?

时间:2019-01-09 10:12:47

标签: windows cmd makefile

我正在尝试使用make进行编译(使用https://chocolatey.org/packages/make) 除了makefile可以“查找”以查找某些文件之外,这在大多数情况下都很好。

这不会有问题,因为我确实有可用的find版本。它甚至是路径/控制台上的第一个。

where find
C:\Cmder\vendor\git-for-windows\usr\bin\find.exe
C:\Windows\System32\find.exe

但是对于我自己的一生,Make本身将忽略所有这些,并且始终适用于system32版本

 make -e -C examples\example1\ --debug=j
GNU Make 3.81
Copyright (C) 2006  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.

This program built for i386-pc-mingw32
CreateProcess(C:\Cmder\vendor\git-for-windows\usr\bin\uname.exe,uname,...)
CreateProcess(C:\Cmder\vendor\git-for-windows\usr\bin\sh.exe,C:/Cmder/vendor/git-for-windows/usr/bin/sh.exe -c "[ -f psc-package.json ] && psc-package sources",...)
CreateProcess(C:\WINDOWS\SYSTEM32\find.exe,find src -type f -name *.purs,...)

反正有强制make在路径上使用版本,还是编辑makefile以使用路径上的版本吗?。

我一直很想制作一个find.bat来欺骗Shell使其使用它,但是make仍然用于system32。我已经到了绝望地重命名find.exe的地步,但是Windows似乎确实锁定了这样做,所以我决定尝试其他方法。

0 个答案:

没有答案