并不是因为rm的原因,因为这是运行在powershell下的结果
首先,它报出了这样的错误
1 2 3 4
|
process_begin: CreateProcess(NULL, rm sb.exe src/main.o src/ELFReader.o, ...) failed. make (e=2): 系统找不到指定的文件。 Makefile:23: recipe for target 'clean' failed make: *** [clean] Error 2
|
似乎是找不到命令的原因。
后来我发现在powershell底下,rm后面的文件与文件之间必须要是逗号分隔……
修改后,还是爆出一样的错误,经过一系列的搜索并没有搜出个什么来
后来经朋友提醒……加个引号试试
1 2
|
clean: "rm $(TARGET) $(OBJS)"
|
很有道理,那么CreateProcess第二个就像一个参数了
果然,不一样的报错了
1 2 3 4
|
"rm sb.exe src/main.o src/ELFReader.o" /usr/bin/bash: rm sb.exe src/main.o src/ELFReader.o: No such file or directory Makefile:30: recipe for target 'clean' failed make: *** [clean] Error 127
|
好的,你告诉我为什么在Windows下会调用的是bash(万脸问号)???
结合起来搜索,似乎说这是因为git bash的原因 ´_>`
不过,我并不打算管了,Windows下开发不用ide坑太多了
果断转移到Linux底下去
另外就是,MinGW在window下的依赖问题
如果是mingw-w64,则能很好的进行64位程序的编译,但是,当我加上-m32
正常的默认设置是不支持编译32位程序的,但SJLJ的是支持的
重新安装过后,-m32能正常编译了,但是程序运行会爆出
应用程序无法正常启动0xc000007b
的错误,似乎也是一些依赖问题
但暂时不打算解决了,要想编译32位的程序,大可另外下个w32版本的mingw
Windows实在……太坑了´_>`