在Makefile中创建目录路径Windows环境
问题描述:
我通常在linux环境下工作,并且Makefiles编译我的项目。在makefile中它会生成目录。当我在Windows上使用此makefile时,路径中有空格,因为用户名是“John Doe”。在Makefile中创建目录路径Windows环境
我已经试过是:
MAKEPATHCMD = mkdir
build:
@(\
echo -e "Building...\n"; \
$(MAKEPATHCMD) "$(NEW_PATH)"; \
.
.
.
下面的错误是...
/usr/bin/mkdir: cannot create directory '/c/Users/John Doe/Desktop/new': No such file or directory
其他的事情我已经试过:
$(MAKEPATHCMD) "\"$(NEW_PATH)\""; \
$(MAKEPATHCMD) "'$(NEW_PATH)'"; \
怎样才可以有makefile会在Windows上创建包含空格的目录路径?
答
在不包含空格的目录(如c:\ work)中执行您的工作。
或者,通过将目录名称中的空格转换为“短名称”来消除空格。
使用下面的脚本:
rem Pass path to sanitize as arg 1 @echo off echo Original path=[%~1] call :chkspaces "%~1"
if /I NOT "%_sp%" == "%~1" call :shrt "%~1" echo uglified=[%_sp%] goto :EOF
:chkspaces set _sp=%1 set _sp=%_sp: =% goto :EOF
:shrt echo arg=[%1] set _sp=%~s1 goto :EOF
这将产生目录一个简短的名称。那么只需cd
那里。
你可以在命令行上做到这一点吗?也许可以在空间前插入斜杠或反斜杠或其他东西? (我不会做Windows。) – Beta