Subject: Re: Can't build doc anymore (v1.7.3.2)

From: Michael J Gruber <[email-masked]>
Date: Tue, 23 Nov 2010 13:04:26 +0100

Francis Moreau venit, vidit, dixit 23.11.2010 12:57:
> Michael J Gruber <[email-masked]> writes:
> 
>> Francis Moreau venit, vidit, dixit 23.11.2010 12:24:
>>> Michael J Gruber <[email-masked]> writes:
>>>
>>>> Francis Moreau venit, vidit, dixit 23.11.2010 10:32:
>>
>>>>>
>>>>>   $ make prefix=/usr/local NO_CURL=1 ASCIIDOC8=y DOCBOOK2X_TEXI=db2x_docbook2texi ASCIIDOC_NO_ROFF=y XMLTO_EXTRA="--skip-validation" V=1 doc
>>>>>   make -C Documentation all
>>>>>   make[1]: Entering directory `/home/fmoreau/git/Documentation'
>>>>>   make -C ../  GIT-VERSION-FILE
>>>>>   make[2]: Entering directory `/home/fmoreau/git'
>>>>>   make[2]: `GIT-VERSION-FILE' is up to date.
>>>>>   make[2]: Leaving directory `/home/fmoreau/git'
>>>>>   rm -f git-fetch.1 && \
>>>>>   xmlto -m manpage-normal.xsl --skip-validation man git-fetch.xml
>>>>>   I/O error : Attempt to load network entity http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl
>>>>>   warning: failed to load external entity "http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl"
>>>>>   compilation error: file /tmp/xmlto-xsl.A7kzn5 line 4 element import
>>>>>   xsl:import : unable to load http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl
>>>>>   make[1]: *** [git-fetch.1] Error 1
>>>>>   make[1]: Leaving directory `/home/fmoreau/git/Documentation'
>>>>>   make: *** [doc] Error 2
>>>>
>>>> This is weird for several reasons.
>>>>
>>>> Can you wget or curl these files?
>>>
>>> Yes I can.
>>>
>>>>
>>>> Besides, I can build the doc even without network access, even though my
>>>> /tmp/xmlto... has the same import statement.
>>>>
>>>> Can you check with which options your xmlto calls your xsltproc? Mine
>>>> has "--nonet".
>>>
>>> I can see the following ones:
>>>
>>>   --nonet
>>>   --xinclude
>>>
>>>> Do you have libxslt-1.1.26-3.fc14.x86_64, and is your xsltproc the one
>>>> from that package?
>>>
>>>   $ rpm -qa | grep libxslt
>>>   libxslt-devel-1.1.26-3.fc14.x86_64
>>>   libxslt-1.1.26-3.fc14.x86_64
>>>
>>>   $ which xsltproc
>>>   /usr/bin/xsltproc
>>>
>>>   $ rpm -qf /usr/bin/xsltproc
>>>   libxslt-1.1.26-3.fc14.x86_64
>>>
>>
>> I'm pretty stomped then. The only remaining suggestions:
>>
>> - remove xml-commons-resolver and try again
>> - try as a different user
> 
> still fails.
> 
>>
>> Otherwise, an strace of xsltproc might give some hints...
> 
> Here it is:
> 
>   stat("/tmp/xmlto-xsl.aSCQgY", {st_mode=S_IFREG|0600, st_size=346, ...}) = 0
>   stat("/tmp/xmlto-xsl.aSCQgY", {st_mode=S_IFREG|0600, st_size=346, ...}) = 0
>   stat("/tmp/xmlto-xsl.aSCQgY", {st_mode=S_IFREG|0600, st_size=346, ...}) = 0
>   stat("/tmp/xmlto-xsl.aSCQgY", {st_mode=S_IFREG|0600, st_size=346, ...}) = 0
>   open("/tmp/xmlto-xsl.aSCQgY", O_RDONLY) = 3
>   lseek(3, 0, SEEK_CUR)                   = 0
>   read(3, "<?xml version='1.0'?>\n<xsl:style"..., 8192) = 346
>   read(3, "", 7846)                       = 0
>   close(3)                                = 0
>   stat("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl", 0x7fffa8779e50) = -1 ENOENT (No such file or directory)
>   stat("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl", 0x7fffa8779d90) = -1 ENOENT (No such file or directory)
>   stat("/etc/xml/catalog", {st_mode=S_IFREG|0644, st_size=819, ...}) = 0
>   open("/etc/xml/catalog", O_RDONLY)      = 3
>   lseek(3, 0, SEEK_CUR)                   = 0
>   read(3, "<?xml version=\"1.0\"?>\n<!DOCTYPE "..., 8192) = 819
>   read(3, "", 7373)                       = 0
>   close(3)                                = 0
>   stat("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl", 0x7fffa8779d90) = -1 ENOENT (No such file or directory)
>   write(2, "I/O ", 4)                     = 4
>   write(2, "error : ", 8)                 = 8
>   write(2, "Attempt to load network entity h"..., 103) = 103
>   write(2, "warning: ", 9)                = 9
>   write(2, "failed to load external entity \""..., 105) = 105
>   write(2, "compilation error: file /tmp/xml"..., 68) = 68
>   write(2, "xsl:import : unable to load http"..., 100) = 100
> 
> This looks weird, it does stat(2) on an URL...
> 

Sometimes I hate myself for not being able to let go when all
explanations fail. OTOH it comes with my profession...

The stat looks weird but is ok. The difference is what happens then,
after opening the catalog. On my F14:

stat("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl",
0x7fff633cb2b0) = -1 ENOENT (No such file or directory)
stat("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl",
0x7fff633cb1f0) = -1 ENOENT (No such file or directory)
stat("/etc/xml/catalog", {st_mode=S_IFREG|0644, st_size=1829, ...}) = 0
open("/etc/xml/catalog", O_RDONLY)      = 3
lseek(3, 0, SEEK_CUR)                   = 0
read(3, "<?xml version=\"1.0\"?>\n<!DOCTYPE "..., 8192) = 1829
read(3, "", 6363)                       = 0
close(3)                                = 0
stat("/usr/share/sgml/docbook/xsl-stylesheets-1.75.2/manpages/docbook.xsl",
{st_mode=S_IFREG|0644, st_size=15170, ...}) = 0
stat("/usr/share/sgml/docbook/xsl-stylesheets-1.75.2/manpages/docbook.xsl",
{st_mode=S_IFREG|0644, st_size=15170, ...}) = 0
stat("/usr/share/sgml/docbook/xsl-stylesheets-1.75.2/manpages/docbook.xsl",
{st_mode=S_IFREG|0644, st_size=15170, ...}) = 0
open("/usr/share/sgml/docbook/xsl-stylesheets-1.75.2/manpages/docbook.xsl",
O_RDONLY) = 3

etc., and all is well. My /etc/xml/catalog:

<?xml version="1.0"?>
<!DOCTYPE catalog PUBLIC "-//OASIS//DTD Entity Resolution XML Catalog
V1.0//EN"
"http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd">
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
  <delegatePublic publicIdStartString="-//OASIS//ENTITIES DocBook XML"
catalog="file:///etc/sgml/docbook/xmlcatalog"/>
  <delegatePublic publicIdStartString="-//OASIS//DTD DocBook XML"
catalog="file:///etc/sgml/docbook/xmlcatalog"/>
  <delegatePublic publicIdStartString="ISO 8879:1986"
catalog="file:///etc/sgml/docbook/xmlcatalog"/>
  <delegateSystem
systemIdStartString="http://www.oasis-open.org/docbook/"
catalog="file:///etc/sgml/docbook/xmlcatalog"/>
  <delegateURI uriStartString="http://www.oasis-open.org/docbook/"
catalog="file:///etc/sgml/docbook/xmlcatalog"/>
  <rewriteSystem
systemIdStartString="http://scrollkeeper.sourceforge.net/dtds/scrollkeeper-omf-1.0/scrollkeeper-omf.dtd"
rewritePrefix="/usr/share/xml/scrol
lkeeper/dtds/scrollkeeper-omf.dtd"/>
  <rewriteURI
uriStartString="http://scrollkeeper.sourceforge.net/dtds/scrollkeeper-omf-1.0/scrollkeeper-omf.dtd"
rewritePrefix="/usr/share/xml/scrollkeeper/
dtds/scrollkeeper-omf.dtd"/>
  <rewriteSystem
systemIdStartString="http://docbook.sourceforge.net/release/xsl/1.75.2"
rewritePrefix="file:///usr/share/sgml/docbook/xsl-stylesheets-1.75.2
"/>
  <rewriteURI
uriStartString="http://docbook.sourceforge.net/release/xsl/1.75.2"
rewritePrefix="file:///usr/share/sgml/docbook/xsl-stylesheets-1.75.2"/>
  <rewriteSystem
systemIdStartString="http://docbook.sourceforge.net/release/xsl/current"
rewritePrefix="file:///usr/share/sgml/docbook/xsl-stylesheets-1.75.
2"/>
  <rewriteURI
uriStartString="http://docbook.sourceforge.net/release/xsl/current"
rewritePrefix="file:///usr/share/sgml/docbook/xsl-stylesheets-1.75.2"/>
</catalog>

(Sorry for the line-breaks)

Michael