运行./make.exe命令(通过使用GNUWin32)后,出现以下错误:
mkdir -p obj
mkdir -p backup
A subdirectory or file -p already exists.
Error occurred while processing: -p. make: *** [backup] Error 1
重新运行命令后,出现另一个错误:
mkdir -p results
A subdirectory or file -p already exists.
Error occurred while processing: -p.
make: *** [results] Error 1
然后,无论我重复执行make命令多少次,我都会遇到相同的错误:
gcc -Iinclude/ -Isrc/ -Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -fPIC -Ofast -c ./src/gemm.c -o obj/gemm.o
process_begin: CreateProcess(NULL, gcc -Iinclude/ -Isrc/ -Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -fPIC -Ofast -c ./src/gemm.c -o obj/gemm.o, ...) failed.
make (e=2): The system cannot find the file specified.
make: *** [obj/gemm.o] Error 2
由于我是初学者,能否请您提供有关如何解决此问题的详细说明?
答案 0 :(得分:0)
这些问题:
mkdir -p obj
mkdir -p backup
A subdirectory or file -p already exists.
Error occurred while processing: -p. make: *** [backup] Error 1
是由于您要求Make在Windows上执行, 一个可以在Linux或其他类似Unix的操作系统上运行的makefile。
在类似Unix的操作系统中,命令:
mkdir -p obj
表示:创建一个名为 obj
的目录,如果该目录已经存在,则没有错误。在
Windows意味着:创建一个名为 -p
的目录,然后创建一个名为 obj
的目录。
因此,当mkdir -p obj
创建目录-p
和obj
时,命令:
mkdir -p backup
失败,因为:
A subdirectory or file -p already exists.
Unix / Linux生成文件无意创建名为-p
的目录,而是在Windows上
这就是它的作用。
尝试修复此特定错误没有任何意义。只是 首先,无限次尝试执行Unix / Linux将导致许多错误 Windows上的makefile。您需要一个可以在其上运行的makefile Windows,或者自己编写,或者找到一种在不使用Make的Windows上构建软件的方法。
此问题:
gcc -Iinclude/ -Isrc/ -Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -fPIC -Ofast -c ./src/gemm.c -o obj/gemm.o
process_begin: CreateProcess(NULL, gcc -Iinclude/ -Isrc/ -Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -fPIC -Ofast -c ./src/gemm.c -o obj/gemm.o, ...) failed.
make (e=2): The system cannot find the file specified.
make: *** [obj/gemm.o] Error 2
是由于您尚未安装GCC C编译器引起的
gcc
在您的计算机上,或者如果存在,则位于PATH
上。所以找不到
它可以执行编译和链接软件的基本业务。
答案 1 :(得分:0)