Nuttx-7.18编译时提示“cygpath: Command not found”错误

Nuttx-7.18编译时提示“cygpath: Command not found”错误问题

今天下载Nuttx源码时,发现Nuttx已经升级到7.18版本,为了感受新版本的特性,索性下载好源码先编译一把,结果编译时遇到“cygpath: Command not found”错误;


说明:

开发环境:64位 ubuntu-14.04系统

Nuttx版本:Nuttx-7.18 + APP-7.18


1.解压缩Nuttx源码;

2.配置板卡以及APP

~/nuttx-7.18: cd tools && ./configure.sh samv71-xult/netnsh

~/nuttx-7.18: cd ../ && source setenv.sh

~/nuttx-7.18: make

说明:编译之前,本地在PATH环境变量中已经指定toolchain路径,如果用户没有执行上述步骤,则需要手动export一下toolchain路径,然后在执行make 编译的时候传入CROSSDEV=arm-none-linux-

提示如下错误:

make[1]: Leaving directory `/work/build/nuttx/nuttx-7.18/fs'
make[1]: cygpath: Command not found
make[1]: Entering directory `/work/build/nuttx/nuttx-7.18/binfmt'
make[1]: *** [.depend] Error 1
make[1]: Leaving directory `/work/build/nuttx/nuttx-7.18/binfmt'
make[1]: cygpath: Command not found
make[1]: Entering directory `/work/build/nuttx/nuttx-7.18/net'
make[1]: *** [.depend] Error 1
make[1]: Leaving directory `/work/build/nuttx/nuttx-7.18/net'
make: *** [pass2dep] Error 2

网上百度了一下其他人的说法,发现cygpath与cygwin工具有关系,立刻想到是环境配置问题,打开~/nuttx-7.18/.config文件,发现下面的CYGWIN已经开启;

CONFIG_WINDOWS_CYGWIN=y

手动注销掉这一行,再次执行make编译成功;

说明:

1.正确的修改方法,应该是在对应板卡APP的defconfig中去修改,configs/samv71-xult/nsh/defconfig,去掉上述宏开关,该红开关应该是在windows环境下编译Nuttx系统时才用到;

2.在工程中搜索了一下CONFIG_WINDOWS_CYGWIN,发现在如下几个文件中均有引用,大致翻了一下,没有找到相关的错误,

nuttx-7.18/tools/sethost.sh
nuttx-7.18/tools/testbuild.sh
nuttx-7.18/arch/arm/src/armv7-m/Toolchain.defs
nuttx-7.18/arch/arm/src/arm/Toolchain.defs:

3.另外升级至7.18版本后,之前7.17版本遇到的编译问题(板卡是samv71-xult)“” error: target CPU does not support ARM mode””解决掉了

之前编译时提示如下错误” error: target CPU does not support ARM mode”,

arm-none-eabi-gcc -M -fno-builtin -Wall -Wstrict-prototypes -Wshadow -Wundef -Os -fno-strict-aliasing -fno-strength-reduce -fomit-frame-pointer -mcpu=cortex-m3 -mfloat-abi=soft -I. -isystem /home/user/nuttx/nuttx-7.17/include -D__KERNEL__ -pipe
error: target CPU does not support ARM mode


你可能感兴趣的:(NuttX移植与调试)