Description of problem: If the xhtml1-dtds package is not installed, doing 'sudo make install' in a git checkout of libvirt will fail with many errors like this: <snip> I/O error : Attempt to load network entity http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd ../docs/sitemap.html.in:2: warning: failed to load external entity "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" ^ missing XHTML1 DTD <snip> /usr/bin/install: cannot stat './sitemap.html': No such file or directory <snip> It would be nice if it could actually print out something like (in the style of configure): error: You must install the xhtml1-dtds package to install libvirt I know this is low priority, but it would be a helpful hint for first-time builders who may not have all the necessary packages installed.
on Fedora "yum-builddep libvirt.spec" should be enough to install the needed packages
Hello, Which files handle the checks for required dependencies to install? I was thinking ./configure and ./autogen.sh ? Are these the files I should be looking at to insert conditions for the xhtml1-dtds package checks? Thanks, Noella
(In reply to Giuseppe Scrivano from comment #1) > on Fedora "yum-builddep libvirt.spec" should be enough to install the needed > packages In fact, that's enough when building from a .tar.gz which contains some already generated files (like documentation). But when building from a git there are some other tools needed to generate those files. So building from git requires some additional tools. Unfortunately, I don't think there's something we can do here. I mean, it would be nice if we just add those tools as BuildRequires into libvirt.spec, so yum-builddep would do the trich. However, that has not met with agreement upstream: https://www.redhat.com/archives/libvir-list/2014-December/msg00083.html
Ideally, we should find a way for bootstrap.conf to list a bootstrap hard requirement on xhtml1-dtds, the way we have a hard requirement on automake, libtoolize, perl::XML::XPath, and other tools required during git builds but not a tarball build. But I agree that yum-builddep, and therefore a BuildRequires in the spec file, is the wrong tool (a tarball is not the same as a git build).
(In reply to Eric Blake from comment #4) > But I agree that yum-builddep, and therefore a > BuildRequires in the spec file, is the wrong tool (a tarball is not the same > as a git build). Yes and no. I don't think I see a reason why our BuildRequires should not be more extensive. I mean, it does not hurt anything, it merely installs a few more packages. But then again, not everybody uses yum-builddep and the amount of packages is not that extensive. But I accept upstream decision.
*** Bug 1342981 has been marked as a duplicate of this bug. ***