我使用make文件为arm / Xilinx平台编译内核。
我正在设置一个env变量CROSS_COMPILE
,然后make文件将使用该变量。{/ p>
我试图通过以下方式设置env var来使用我的系统上存在的交叉编译器,称为arm-xilinx-linux-gnueabi-gcc
;
export CROSS_COMPILE=/opt/Xilinx/SDK/2015.2/gnu/arm/lin/bin/arm-xilinx-linux-gnueabi-
export CROSS_COMPILE=arm-xilinx-linux-gnueabi-
make文件应附加gcc
。
两者给出的错误是
make: /opt/Xilinx/SDK/2015.2/gnu/arm/lin/bin/arm-xilinx-linux-gnueabi-gcc: Command not found
scripts/kconfig/conf --silentoldconfig Kconfig
make: /opt/Xilinx/SDK/2015.2/gnu/arm/lin/bin/arm-xilinx-linux-gnueabi-gcc: Command not found
CHK include/config/kernel.release
CHK include/generated/uapi/linux/version.h
CHK include/generated/utsrelease.h
make[1]: `include/generated/mach-types.h' is up to date.
CC kernel/bounds.s
/bin/sh: 1: /opt/Xilinx/SDK/2015.2/gnu/arm/lin/bin/arm-xilinx-linux-gnueabi-gcc: not found
make[1]: *** [kernel/bounds.s] Error 127
make: *** [prepare0] Error 2
它适用于其他arm交叉编译器,但是这个。
为什么会这样?
答案 0 :(得分:1)
根据您在评论中提供的答案,您尝试在64位主机平台上运行32位可执行文件。
所以,如果你在Ubuntu上,请检查this answer from askubuntu。