我看了一些关于这个错误的帖子,没有看到一个涵盖了这个特定的情况。我正在尝试编译一个内核映像,从教程中定义的这些步骤;
git clone https://github.com/analogdevicesinc/linux.git
Cloning into 'linux'...
remote: Counting objects: 2550298, done.
remote: Compressing objects: 100% (466978/466978), done.
remote: Total 2550298 (delta 2118600), reused 2483072 (delta 2058083)
Receiving objects: 100% (2550298/2550298), 727.70 MiB | 353 KiB/s, done.
Resolving deltas: 100% (2118600/2118600), done.
Checking out files: 100% (38170/38170), done.
> cd linux
> git checkout xcomm_zynq
> # For AD-FMCOMMS2-EBZ use
> # git checkout xcomm_zynq
> export ARCH=arm
> export CROSS_COMPILE=/path/to/your/arm/cross-compiler
> # e.g. export CROSS_COMPILE=/opt/CodeSourcery/Sourcery_G++_Lite/bin/arm-xilinxa9-linux-gnueabi-
> make zynq_xcomm_adv7511_defconfig
#
# configuration written to .config
#
> make uImage LOADADDR=0x00008000
...
OBJCOPY arch/arm/boot/uImage
Kernel: arch/arm/boot/uImage is ready
我遵循了所有的步骤,直到我执行第一个make并得到错误;
make[1]: ***No rule to make target 'zynq_xcomm_adv7511_deconfig'
我对make知之甚少,过去常常盲目地使用它。这个误差指向什么?Makefile应该没问题,因为它是从Analog发出的。唯一的区别是我使用了不同的交叉编译器——arm-linux-gnueabihf-gcc。这会造成问题吗? 这里有个错别字。需要命名为zynq_xcomm_adv7511_defconfig