1. vmware esxi安装centos8,开启内核虚拟化
2. 安装qemu-system-arrch64
操作:
wget https://download.qemu.org/qemu-2.11.0.tar.xz tar xvJf qemu-2.11.0.tar.xz cd qemu-2.11.0 ./configure –-target-list=aarch64-softmmu make make install
报错1:Python not found. Use –python=/path/to/python
# ./configure --target-list=aarch64-softmmuERROR: Python not found. Use --python=/path/to/python #解决1,指定python路径,提示当前python版本过高:# ./configure --target-list=aarch64-softmmu --python=/usr/bin/python3.6ERROR: Cannot use '/usr/bin/python3.6', Python 2.6 or later is required. Note that Python 3 or later is not yet supported. Use --python=/path/to/python to specify a supported Python.#解决2,下载python2,再次尝试遇到新的报错# ./configure --target-list=aarch64-softmmu --python=/usr/bin/python2ERROR: "cc" either does not exist or does not work
报错2:ERROR: “cc” either does not exist or does not work
下载gcc解决该报错,然后提示依然是缺包
# ./configure --target-list=aarch64-softmmu --python=/usr/bin/python2ERROR: zlib check failed Make sure to have the zlib libs and headers installed.
报错3:ERROR: zlib check failed Make sure to have the zlib libs and headers installed.
下载zlib zlib-devel,然后再次提示缺包
# ./configure --target-list=aarch64-softmmu --python=/usr/bin/python2ERROR: glib-2.22 gthread-2.0 is required to compile QEMU
下载glib2 glib2-devel,提示还是缺包
下载pixman pixman-devel
./config成功
make告警:缺少命令:flex bison
下载flex,bison
然后还是失败:
util/memfd.c:40:12: error: static declaration of ‘memfd_create’ follows non-static declaration static int memfd_create(const char *name, unsigned int flags) ^~~~~~~~~~~~In file included from /usr/include/bits/mman-linux.h:117, from /usr/include/bits/mman.h:49, from /usr/include/sys/mman.h:41, from /root/qemu-2.11.0/include/sysemu/os-posix.h:29, from /root/qemu-2.11.0/include/qemu/osdep.h:104, from util/memfd.c:28:/usr/include/bits/mman-shared.h:46:5: note: previous declaration of ‘memfd_create’ was here int memfd_create (const char *__name, unsigned int __flags) __THROW; ^~~~~~~~~~~~make: *** [/root/qemu-2.11.0/rules.mak:66: util/memfd.o] Error 1
看百度上各种解决办法,懒得去一个一个验证,直接换最新的包
wget https://download.qemu.org/qemu-7.2.0.tar.xz
查看README文件,根据提示操作
mkdir build cd build ../configure make
提示缺包ninjia
yum --enablerepo=powertools install ninja-build
这次提示python版本过低
Found ninja-1.8.2 at /usr/bin/ninjaRunning postconf script '/usr/bin/python3 /root/qemu-7.2.0/scripts/symlink-install-tree.py'NOTICE: You are using Python 3.6 which is EOL. Starting with v0.62.0, Meson will require Python 3.7 or newer
安装一个python3.9 然后把/usr/bin/python3指向python3.9
然后再次执行
mkdir build cd build ../configure --target-list=aarch64-softmmu make
无报错
make install
缺包就装包:perl
然后make install成功
# which qemu-system-aarch64/usr/local/bin/qemu-system-aarch64
为了支持UEFI启动,下载UEFI固件
wget https://www.kraxel.org/repos/firmware.repoyum install edk2.git-aarch64
编辑/etc/libvirt/qemu.conf最后一行添加
nvram = [ "/usr/share/edk2.git/aarch64/QEMU_EFI-pflash.raw:/usr/share/edk2.git/aarch64/vars-template-pflash.raw"]
参考链接:https://wiki.ubuntu.com/UEFI/virt-install
https://www.txisfine.cn/archives/a0d5fa12
https://www.cnblogs.com/linuxxl/p/11658387.html
https://zhuanlan.zhihu.com/p/353547345