makefile - GNU Make on Windows cannot see some executables -


part of deployment run target on makefile on windows called "deploy" runs, among other things, taskkill.exe , psexec.exe. both in c:\windows\system32 in %path%.

when try make target, message psexec can't found. taskkill works expected.

as test, tried dir c:\windows\system32\psexec.exe, makefile, "file not found". in same shell, however, can run same dir command , positive response.

why can't make see file exists, less run it?

here example makefile target:

exetest:     @echo ------------------------------     -dir /b c:\windows\system32\psexec.exe     @echo ------------------------------     -dir /b c:\windows\system32\taskkill.exe 

and happens in command prompt:

c:\users\owner\documents\github>make exetest ------------------------------ dir /b c:\windows\system32\psexec.exe file not found make: [exetest] error 1 (ignored) ------------------------------ dir /b c:\windows\system32\taskkill.exe taskkill.exe  c:\users\owner\documents\github>dir /b c:\windows\system32\psexec.exe psexec.exe  c:\users\owner\documents\github>dir /b c:\windows\system32\taskkill.exe taskkill.exe 

i'm running gnu make 3.81 , windows 7.

i've tried both psexec , psexec64 - same behavior both.

the problem here make, not psexec or psexec64

all 32-bit processes put under file system redirector.

whenever 32-bit application attempts access %windir%\system32, access redirected %windir%\syswow64

it seems you're using 32-bit make program. result won't see psexec.exe in %windir%\system32. behavior same if run 32-bit shell %windir%\syswow64\cmd.exe, in case dir /b c:\windows\system32\psexec.exe give file not found error

you must modify path %windir%\sysnative\psexec.exe.


Comments

Popular posts from this blog

android - InAppBilling registering BroadcastReceiver in AndroidManifest -

python Tkinter Capturing keyboard events save as one single string -

sql server - Why does Linq-to-SQL add unnecessary COUNT()? -