Qemu 构建失败,出现“致命错误:scsi/sg.h:没有此文件或目录”

Qemu 构建失败,出现“致命错误:scsi/sg.h:没有此文件或目录”

尝试从源代码构建 Qemu 以运行 kvm。我按照以下说明操作https://wiki.qemu.org/Hosts/Linux. 这导致以下错误消息。

block/file-posix.c:67:21:致命错误:scsi/sg.h:没有这样的文件或目录编译终止。

CC 块/nbd-client.o

qemu/rules.mak:69:目标‘block/file-posix.o’的配方失败

我可以在 /usr/src/linux-headers-4.13.0-41/include/scsi/sg.h 中找到头文件。失败的原因可能是什么。

答案1

您可以使用 apt 来开始构建,就像通常为打包而构建的那样。您提到的错误似乎只是缺少依赖项,您可以通过以下方式自动拉入

apt-get build-dep qemu

必须意识到这是针对发行版构建 qemu 的配置。因此,您可以获取发行版使用的源代码,然后检查 debian/rules 所做的操作。

# for Xenial it will be 2.5
apt install dpkg-dev
apt-get source qemu
vim qemu-2.5+dfsg/debian/rules

或者你可以检查任何发布的构建日志(从而有效的配置调用)qemu 包例如xenial 的构建日志 为此,请单击您想要的版本,然后单击您感兴趣的架构,然后单击“buildlog”。

从那里您可以根据需要开始派生/修改。

相关内容