a1ive / grub

Fork of GRUB 2 to add various features.
GNU General Public License v3.0
138 stars 38 forks source link

在Ubuntu18.04 x86_64中编译aarch64 #88

Closed Tidus-Sun closed 3 years ago

Tidus-Sun commented 3 years ago

./configure --target=aarch64-linux-gnueabi --with-platform=efi make编译报错 gcc -DHAVE_CONFIG_H -I. -I.. -Wall -W -DGRUB_MACHINE_EFI=1 -DGRUB_MACHINE=ARM64_EFI -nostdinc -isystem /usr/lib/gcc/x86_64-linux-gnu/7/include -I../include -I../include -DGRUB_FILE=\"gfxmenu/gfxmenu .c\" -I. -I. -I.. -I.. -I../include -I../include -I../grub-core/lib/libgcrypt-grub/src/ -D_FILE_OFFSET_BITS=64 -std=gnu99 -Os -Wall -W -Wshadow -Wpointer-arith -Wundef -Wchar-subscripts -Wcomment - Wdeprecated-declarations -Wdisabled-optimization -Wdiv-by-zero -Wfloat-equal -Wformat-extra-args -Wformat-security -Wformat-y2k -Wimplicit -Wimplicit-function-declaration -Wimplicit-int -Wmain -Wmissi ng-braces -Wmissing-format-attribute -Wmultichar -Wparentheses -Wreturn-type -Wsequence-point -Wshadow -Wsign-compare -Wswitch -Wtrigraphs -Wunknown-pragmas -Wunused -Wunused-function -Wunused-label - Wunused-parameter -Wunused-value -Wunused-variable -Wwrite-strings -Wnested-externs -Wstrict-prototypes -g -Wredundant-decls -Wmissing-prototypes -Wmissing-declarations -Wcast-align -Wextra -Wattrib utes -Wendif-labels -Winit-self -Wint-to-pointer-cast -Winvalid-pch -Wmissing-field-initializers -Wnonnull -Woverflow -Wvla -Wpointer-to-int-cast -Wstrict-aliasing -Wvariadic-macros -Wvolatile-registe r-var -Wpointer-sign -Wmissing-include-dirs -Wmissing-prototypes -Wmissing-declarations -Wformat=2 -freg-struct-return -fno-dwarf2-cfi-asm -mno-stack-arg-probe -fno-asynchronous-unwind-tables -fno-unw ind-tables -fno-ident -fno-PIE -fno-pie -fno-stack-protector -Wtrampolines -Werror -mcmodel=large -ffreestanding -MT gfxmenu/gfxmenu_module-gfxmenu.o -MD -MP -MF gfxmenu/.deps-core/gfxmenu_module-g fxmenu.Tpo -c -o gfxmenu/gfxmenu_module-gfxmenu.o test -f 'gfxmenu/gfxmenu.c' || echo './'gfxmenu/gfxmenu.c In file included from ../include/grub/i386/engine_sound.h:25:0, from gfxmenu/gfxmenu.c:42: ../include/grub/speaker.h:4:10: fatal error: grub/cpu/io.h: No such file or directory

include <grub/cpu/io.h>

      ^~~~~~~~~~~~~~~

compilation terminated. Makefile:42523: recipe for target 'gfxmenu/gfxmenu_module-gfxmenu.o' failed make[3]: *** [gfxmenu/gfxmenu_module-gfxmenu.o] Error 1 make[3]: Leaving directory '/home/tidus/work/grub2/a1ive_grub/grub/grub-core' 请指点下应该如何编译AArch64可用的GRUB?谢谢!

a1ive commented 3 years ago

./configure --target=aarch64-linux-gnu --with-platform=efi --host=aarch64-linux-gnu 要注意 ./configure 的输出里面有没有这句: checking whether we are cross compiling... yes