I have been trying to compile systemd on my LFS based system and am having an issue with the man page creation. There are multiple files with the issue but I shall focus on one in particular as a solution should then be easy enough to extrapolate.
Files needed for testing (that I know of):
busctl.xml
user-system-options.xml
custom-man.xsl
standard-options.xml
Note: I was not able to find how to attach a file, but they can be retrieved from https://github.com/systemd/systemd All files are in the man directory
The code being executed is as follows:
xsltproc --nonet --xinclude --stringparam systemd.version 233 \
custom-man.xsl busctl.xml
On executing the above I receive:
I/O error : Attempt to load network entity http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd
busctl.xml:3: warning: failed to load external entity "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
^
I/O error : Attempt to load network entity http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd
user-system-options.xml:3: warning: failed to load external entity "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
^
busctl.xml:241: element include: XInclude error : could not load user-system-options.xml, and no fallback was found
busctl.xml:242: element include: XInclude error : could not load user-system-options.xml, and no fallback was found
busctl.xml:243: element include: XInclude error : could not load user-system-options.xml, and no fallback was found
busctl.xml:244: element include: XInclude error : could not load user-system-options.xml, and no fallback was found
I/O error : Attempt to load network entity http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd
standard-options.xml:3: warning: failed to load external entity "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
^
busctl.xml:246: element include: XInclude error : could not load standard-options.xml, and no fallback was found
busctl.xml:247: element include: XInclude error : could not load standard-options.xml, and no fallback was found
busctl.xml:248: element include: XInclude error : could not load standard-options.xml, and no fallback was found
busctl.xml:249: element include: XInclude error : could not load standard-options.xml, and no fallback was found
So the first error/warning received is to do with the busctl.xml file itself and the fact that we have used the --nonet switch. This can be easily removed by the addition of the --novalid switch. As it stands, if the following errors were not present, then this error/warning would not impede the building of the man page. I have tested this by performing the same command on a file that has no ix:include stanzas in the file.
Here are the offending lines within the busctl.xml file:
<xi:include href="user-system-options.xml" xpointer="user" />
<xi:include href="user-system-options.xml" xpointer="system" />
<xi:include href="user-system-options.xml" xpointer="host" />
<xi:include href="user-system-options.xml" xpointer="machine" />
<xi:include href="standard-options.xml" xpointer="no-pager" />
<xi:include href="standard-options.xml" xpointer="no-legend" />
<xi:include href="standard-options.xml" xpointer="help" />
<xi:include href="standard-options.xml" xpointer="version" />
So my question is this, how can I get the files used in the above includes to also use the --nonet (and possibly --novalid) switch(es) which would stop the errors and allow for the creation of the man pages?
Please let me know if there is any further details which might assist in an answer?