ARM gnu与Nordic nRF51安装构建错误,可能是路径或管理员

时间:2016-06-08 19:34:33

标签: arm gnu toolchain nrf51

我一直在Windows 10上安装ARM工具链,用于开发Nordic nRF51,并遵循他们教程中的说明 https://devzone.nordicsemi.com/tutorials/7

当我第一次运行make时,出现构建错误。

详细说明: 我在目录中安装了工具链 C:\ Program Files(x86)\ GNU Tools ARM Embedded \ 5.3 2016q1

Coreutils安装在目录中 C:\ Program Files(x86)\ GnuWin32

Nordict SDK工具链安装在目录中 C:\ Program Files(x86)\ Nordic Semiconductor \ NRF5_SDK

我在用户路径环境中添加了以下内容: C:\ Program Files(x86)\ GNU Tools ARM Embedded \ 5.3 2016q1; C:\ Program Files(x86)\ GnuWin32 \ bin

目录C中的

:\ Program Files(x86)\ Nordic Semiconductor \ NRF5_SDK \ components \ toolchain \ gcc windows.makefile更改为:

GNU_INSTALL_ROOT := $(PROGFILES)/GNU Tools ARM Embedded/5.3 2016q1/
GNU_VERSION := 5.3
GNU_PREFIX := arm-none-eabi

我已经检查过make和gcc是从命令行找到的。

遵循目录中的教程说明: C:\ Program Files(x86)\ Nordic Semiconductor \ NRF5_SDK \ examples \ peripheral \ blinky \ pca20006 \ blank \ armgcc 打开一个cmd窗口(作为用户)并运行make。

mkdir _build
Access is denied.
make: *** [_build] Error 1

错误提示无法创建_build目录。

因此,从管理员的新cmd窗口再次尝试:

mkdir _build
make: *** No rule to make target `_build/Program', needed by `nrf51822_xxaa'.  Stop.

make -d的输出摘要(在管理窗口中):

Reading makefile `makefile'...
Reading makefile `../../../../../../components/toolchain/gcc/Makefile.windows' (search path) (no ~ expansion)...

 No implicit rule found for `_build/Program'.
 Finished prerequisites of target file `_build/Program'.
Must remake target `_build/Program'.
make: *** No rule to make target `_build/Program', needed by `nrf51822_xxaa'.  Stop.

似乎make无法找到makefile.windows(正确吗?),所以我通过将目标复制到cmd并使用as来检查路径:

cd ../../../../../../components/toolchain/gcc/

这已更改为正确的目录。所以我相信目标路径是正确的。

问题: 为什么管理员需要运行make,为什么它没有正确的权限来创建_build目录?

在管理窗口中运行make时失败了什么?

提前感谢。

1 个答案:

答案 0 :(得分:0)

看起来我可能已经解决了这个问题。

卸载所有工具并重新安装到用户目录(而非Program Files)中,并确保目录路径中没有空格。

Make now构建二进制文件。似乎Nordic已经发布了无法按照描述安装的工具集......