在Windows上从makefile运行.exe

2024-06-09 12:55:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个包含命令行脚本的python包。在windows上,成为安装在my conda环境路径中的LT.exe。 我正在使用gnumake(来自Rtools)开发一系列操作,包括这个命令行脚本、python和R脚本。问题是我无法识别命令行脚本

例如,我想运行make getpsII

.PHONY : getpsII
getpsII :
    LT.exe --config $(SERVER_CONFIG)

在conda shell中直接在WT或CMD中运行.exe是可行的。通过make启动它不起作用。我明白了

make[2]: C:/Users/dominikschneider/Miniconda3/envs/plantcv/Scripts/LT.exe: Command not found

我已经尝试用cmd/c追加LT.exe,在make文件中设置SHELL=cmd,并为其提供LT.exe的绝对路径

我想这与windows处理可执行文件的方式有关(?!),但如果有任何帮助,我们将不胜感激。 我在Windows10上。谢谢

编辑-在调用exe之前尝试显式设置路径:

(plantcv) C:\Users\dominikschneider\Documents\phenomics\doi>make getpsII
setx /M PATH="C:/Users/dominikschneider/Miniconda3/envs/plantcv/Scripts;/Users/dominikschneider/Miniconda3/envs/plantcv:/Users/dominikschneider/Miniconda3/envs/plantcv/Library/mingw-w64/bin:/Users/dominikschneider/Miniconda3/envs/plantcv/Library/usr/bin:/Users/dominikschneider/Miniconda3/envs/plantcv/Library/bin:/Users/dominikschneider/Miniconda3/envs/plantcv/Scripts:/Users/dominikschneider/Miniconda3/envs/plantcv/bin:/Users/dominikschneider/Miniconda3/condabin:/Rtools/bin:/Program Files/Microsoft MPI/Bin:/Python27:/Python27/Scripts:/ProgramData/Boxstarter:/Rtools/bin:/Rtools/mingw_32/bin:/Program Files (x86)/Common Files/Oracle/Java/javapath:/Windows/system32:/Windows:/Windows/System32/Wbem:/Windows/System32/WindowsPowerShell/v1.0:/Windows/System32/OpenSSH:/Program Files (x86)/NVIDIA Corporation/PhysX/Common:/Program Files/CMake/bin:/Program Files/dcraw:/Program Files/nodejs:/ProgramData/chocolatey/bin:/Users/dominikschneider/AppData/Local/Programs/orca:/Program Files/Pandoc:/WINDOWS/System32/OpenSSH:/WINDOWS/system32:/WINDOWS:/WINDOWS/System32/Wbem:/WINDOWS/System32/WindowsPowerShell/v1.0:/Program Files/Microsoft VS Code/bin:/Program Files/Git LFS:/Program Files (x86)/Data Version Control:/Program Files/dotnet:/Program Files (x86)/Intel/Intel(R) Management Engine Components/DAL:/Program Files/Intel/Intel(R) Management Engine Components/DAL:/Program Files/Git/cmd:/Users/dominikschneider/AppData/Local/Programs/Python/Python37-32/Scripts:/Users/dominikschneider/AppData/Local/Programs/Python/Python37-32:/Users/Dominik Schneider/AppData/Local/atom/bin:/Users/Dominik Schneider/AppData/Roaming/npm:/Program Files (x86)/Nmap:/Users/dominikschneider/AppData/Local/Microsoft/WindowsApps:/Users/dominikschneider/AppData/Local/GitHubDesktop/bin:/Users/dominikschneider/AppData/Local/Programs/Microsoft VS Code Insiders/bin:/Users/dominikschneider/AppData/Local/atom/bin:/Users/dominikschneider/appdata/local/atom/bin"

WARNING: The data being saved is truncated to 1024 characters.

SUCCESS: Specified value was saved.
LT-db-extractor --config ..//cppcserver.config --outdir data/psII --exper doi
make: LT-db-extractor: Command not found
make: *** [Makefile:93: getpsII] Error 127

Tags: ltmakebinlocalfilesprogramexeusers
1条回答
网友
1楼 · 发布于 2024-06-09 12:55:18

最后,我发现自己有些困惑。我要注意的是,在使用Windows终端的Win10上,我甚至不需要SHELL=CMD或SHELL args来工作。似乎在WSL和win conda shell之间进行了完美的转换

相关问题 更多 >