使输出产生不一致的错误消息

时间:2018-08-20 16:33:14

标签: gcc makefile arm gnu

我在Windows中使用Make 3.8.1,并且尝试使用自己的makefile编译Nordic Semi提供的项目。但是,我不知道这个问题,因为make试图说的不清楚。以下是输入make -j后收到的错误消息:

rm -rf _build
process_begin: CreateProcess(NULL, rm -rf _build, ...) failed.
make: *** `nrf52832_xxaa_s132' ?E?K?v?E?^?[?Q?b?g `_build/Arkan' ?d make ?・? 
e???[???a???e?U?1?n.  ’†?~.
make: *** ?¢?R?1?I?W?‡?u?d‘O?A?A?¢?U?・....
make (e=2): The system cannot find the file specified.
make: *** [clean] ?G?‰?[ 2

我怀疑这不是Nordic的错,因此我多次重新安装了Make。不幸的是,我仍然收到相同的错误消息。我该怎么解决?

1 个答案:

答案 0 :(得分:0)

使您使用的GNU版本是3.81,而不是3.8.1(没有3.8.1)。那是一个非常老的版本(于2006年发布),因此几乎没有机会获得更多支持。您可以获取更新的版本来构建自己的版本(在https://ftp.gnu.org/gnu/make上),或者为Windows预先构建的版本(在各个地方;最好的版本是https://sourceforge.net/projects/ezwinports/files/

我无法解释您为什么看到版本错误的错误消息。但是,命令“ rm -rf”是POSIX命令,并且默认情况下Windows上没有可用的“ rm”命令,这可能是make无法运行它的原因。我怀疑您要构建的该项目是为POSIX系统(例如GNU / Linux或MacOS)创建的,并且不打算在Windows上构建,至少除非安装了某些POSIX兼容层(例如cygwin或mingw32),否则该项目不是要在Windows上构建的。