我一直在 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 时失败是什么?
提前致谢。