我正在尝试在Eclipse上编译Linux。我正在编译x86,但想使用我的工具链。我创建了一个项目“File - > C Project - > Linux gcc”,并给出了我的Linux内核的位置。我右键单击“项目 - >属性 - > C / C ++构建 - >设置”并更改了GCC C编译器和链接器并包含我的工具链路径。
在C / C ++构建中,我用下面的命令
替换了makemake ARCH=x86 CC=/home/poky/build/tmp/sysroots/i686-linux/usr/bin/corei7-64-poky-linux/x86_64-poky-linux-
现在,当我尝试构建时,我遇到了错误
make ARCH=x86 CC=/home/poky/build/tmp/sysroots/i686-linux/usr
/bin/corei7-64-poky-linux/x86_64-poky-linux- all
Building file: ../virt/kvm/arm/arch_timer.c
Invoking: GCC C Compiler
/home/poky/build/tmp/sysroots/i686-linux/usr/bin/corei7-64-
poky-linux/x86_64-poky-linux-gcc -I/home/poky/build/tmp/sysroots
/i686-linux/usr/include -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"virt/kvm/arm/arch_timer.d" -MT"virt/kvm/arm/arch_timer.d" -o "virt/kvm/arm/arch_timer.o" "../virt/kvm/arm/arch_timer.c"
../virt/kvm/arm/arch_timer.c:19:23: fatal error: linux/cpu.h: No such file or directory
#include <linux/cpu.h>
^
compilation terminated.
make: *** [virt/kvm/arm/arch_timer.o] Error 1
如何在Eclipse上交叉编译Linux内核?我想使用自己的工具链。
答案 0 :(得分:0)
您的编译工作正常,但似乎您还没有添加所有必要的包含路径。 正如msg已经提到的错误,编译器无法找到linux / cpu.h
您可以在以下位置添加其他包含路径:Project-&gt; Properties-&gt; C / C ++ General-&gt;路径和符号