在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上创建包含空格的目录路径?

+0

你可以在命令行上做到这一点吗?也许可以在空间前插入斜杠或反斜杠或其他东西? (我不会做Windows。) – Beta

在不包含空格的目录(如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那里。