Summary: | sgmltools fails to generate files - Couldn't resolve pubid ["-//SGMLtools//DOCUMENT Docbook Style Sheet for HTML//EN"] | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Stephen Torri <storri> |
Component: | Current packages | Assignee: | Text-Markup Team (OBSOLETE) <text-markup+disabled> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | m.kefeder |
Priority: | High | ||
Version: | 1.4 | ||
Hardware: | x86 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | Contents of sgmltools.cat |
Description
Stephen Torri
2003-10-28 22:39:17 UTC
bash-2.05b$ sudo emerge info Password: Portage 2.0.49-r15 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r1, 2.4.20-gentoo-r5) ================================================================= System uname: 2.4.20-gentoo-r5 i686 Pentium III (Katmai) Gentoo Base System version 1.4.3.10p1 distcc 2.11.1 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.3 [enabled] ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=pentium3 -O3 -pipe" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/config" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-march=pentium3 -O3 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="sandbox ccache autoaddcvs fixpackages" GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage" USE="x86 oss apm avi crypt cups encode foomaticdb gif jpeg libg++ mad mikmod mmx mpeg ncurses nls pdflib png quicktime spell truetype xml2 xmms xv zlib gtkhtml alsa gdbm berkdb slang readline arts tetex bonobo svga tcltk java guile mysql X sdl gpm tcpd pam libwww ssl perl python esd imlib oggvorbis gnome gtk qt kde motif opengl mozilla ldap snmp cdr gtk2 xml tiff libgda doc" have you in/reinstalled any docbook/sgml packages lately ? can you please check: .) /etc/sgml/catalog lists /etc/sgml/sgml-lite.cat .) /etc/sgml/sgml-lite.cat lists /usr/share/sgml/stylesheets/sgmltools/sgmltoolcat .) sgmltools.cat exists in /usr/share/sgml/stylesheets/sgmltools ? if you could provide additional information, such as any recent docbook/sgml/package upgrades or installations it would most appreciated. thanks. in the previous comment: /etc/sgml/sgml-lite.cat lists /usr/share/sgml/stylesheets/sgmltools/sgmltoolcat should be: /etc/sgml/sgml-lite.cat lists /usr/share/sgml/stylesheets/sgmltools/sgmltools.cat /etc/sgml/catalog lists /etc/sgml/sgml-lite.cat - YES /etc/sgml/sgml-lite.cat lists /usr/share/sgml/stylesheets/sgmltools/sgmltools.cat - YES sgmltools.cat exists in /usr/share/sgml/stylesheets/sgmltools ? YES I have not rebuilt sgmltools lately. I used genlop to see the merge history of sgmltools-lite. The last time I merge it was: bash-2.05b$ genlop -t sgmltools-lite * app-text/sgmltools-lite Merged at Sat Sep 6 01:34:29 2003 (sgmltools-lite-3.0.3-r6) merge time: 32 seconds. merged totally 1 time in 32 seconds. please post the output of env | grep SGML. sgmltools definitely checks the SGML_CATALOG_FILES environment variables for a list of the catalogs so that it knows where to find, in this case, the stylesheets. bash-2.05b$ env | grep SGML SGML_CATALOG_FILES=/etc/sgml/sgml-ent.cat:/etc/sgml/sgml-docbook.cat:/etc/sgml/sgml-docbook-3.1.cat:/etc/sgml/sgml-docbook-3.0.cat:/etc/sgml/sgml-docbook-4.1.cat:/etc/sgml/dsssl-docbook-stylesheets.cat:/etc/sgml/sgml-docbook-4.0.cat:/etc/sgml/openjade-1.3.2.cat:/etc/sgml/sgml-lite.cat okay, im finding this one hard to reproduce. is "//SGMLtools/DOCUMENT Docbook Style Sheet for HTML//EN" listed in /etc/sgml/aliases ? i dont suppose remerging sgmltools-lite helps in any way ? Rebuilding does not change anything. Try downloading the CVS version of xine-lib and build the documentation. cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/xine login <Press Enter when asked for password. The anonymous password is blank.> cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/xine co xine-lib cd xine-lib ./autogen.sh cd doc make That is how I produce the error I originally reported. i noticed from your first post you were using something xine so i rebuilt it earlier today, with success. Mike mentioned that he rebuilt 'something xine'. Was that the xine-lib that I talked about from the CVS? I need to know if this is my gentoo box with sgmltool or xine-lib. This will help in talking with the right party. hrmm, i got the cvs version and did make doc as you requested and everything built fine for me, i didnt see any sgml errors, and i did see html files created. your error was this >> IOError: Couldn't resolve pubid ["-//SGMLtools//DOCUMENT Docbook Style Sheet for HTML//EN"]. if we follow this through what happens is that the SGML_CATALOG_FILES variable includes /etc/sgml/sgml-lite.cat. this catalog in turn tells sgmltools to look in /usr/share/sgml/stylesheets/sgmltools/sgmltools.cat for the catalog definition. does /etc/sgml/aliases exist ? although it should've been installed with sgmltools-lite. Yes the file /etc/sgml/aliases does exist. bash-2.05b$ ls /etc/sgml/ aliases sgml-docbook-3.0.cat sgml-ent.cat catalog sgml-docbook-3.1.cat sgml-lite.cat catalog.d sgml-docbook-4.0.cat sgml.cenv dsssl-docbook-stylesheets.cat sgml-docbook-4.1.cat sgml.conf openjade-1.3.2.cat sgml-docbook.cat sgml.env bash-2.05b$ qpkg -f /etc/sgml/aliases -I -i app-text/sgmltools-lite-3.0.3-r6 * Python interface to SGML software specificially in a [ http://sgmltools-lite.sourceforge.net/ ] Moving /etc/sgml/aliases to be /etc/sml/old_aliases does not remove the problem. I thought I would try this but I still get a failure back from sgmltools. I have the same problem... i installed sgmltools-lite today. They worked fine. Then i logged out of the box for lunch-time. After i logged back in sgmltools stopped with the error IOError: Couldn't resolve pubid ["-//SGMLtools//DOCUMENT Docbook Style Sheet for Print//EN"] I confirmed that behaviour on my gentoo machine at home - installed sgmltools-lite - tested - sgmtools worked - logged out - logged in - sgmltools stopped working... I have no idea how to fix that problem, because that with that catalog thingy it is hard to track where it should find what and why... I think i got a fix for that # nano /etc/sgml/sgml-lite.cat and make the line in there look like CATALOG "/usr/share/sgml/stylesheets/sgmltools/sgmltools.cat" note the quotation marks - they are a must - the regular expression in /usr/share/sgml/misc/sgmltools/python/utils.py forces their existance! After i added the "" it worked for me. I'd consider that a bug or misfeature in sgmltools, but patching sgmltools would be quite pointless. That change of the .cat file fixed it for me, on both machines - at work and at home. i hope it works for you too. Hi Michael, good work. However, my sgml-lite.cat allready quotes (" ") the catalog location. Were the quotations missing on your catalog originally ? please read above, just added you to the CC I tried to reproduce how the "" marks get lost, but i'm out of machines now ;) reinstalling sgmltools wont change that file. It's strange because it worked right after i emerged the package and its dependancies (maybe due to some env-var?) but it stopped working after relogin. There's something mysterious going on ;) My /etc/sgml/sgml-lite.cat is as follows CATALOG "/usr/share/sgml/stylesheets/sgmltools/sgmltools.cat". With or without quotes it still does not work. In regards to logging in and out I am typically constantly logged in at home. I will log out and see what happens. i installed sgmtools-lite on yet another machine w/o anything docbook related on it - the quotation marks are _missing_ in the /etc/sgml/sgml-lite.cat file by default! Stephen: what's the content of /usr/share/sgml/stylesheets/sgmltools/sgmltools.cat? Does it contain a line PUBLIC "-//SGMLtools//DOCUMENT Docbook Style Sheet for HTML//EN" html.dsl I fixed 3 machines by adding the quotes... i'm afraid i can't help you with your problem (although my error message was the same). Created attachment 20783 [details]
Contents of sgmltools.cat
Here is the contents of my sgmltools.cat file. I did find html.dsl and the text
had quotes around it.
Hi Stephen, o Do you have xhtml1 installed at all ? o Can you please paste the output of sgmltools -v so we can see with some more verbose output, thanks. xhtml1 was not installed. I installed it or should I have not done that? Here is the output of running sgmltools with the verbose flag on: bash-2.05b$ sgmltools -v -b onehtml faq.sgml Traceback (most recent call last): File "/usr/bin/sgmltools", line 93, in ? tool.processFile(curfile) File "/usr/share/sgml/misc/sgmltools/python/SGMLtools.py", line 230, in processFile dssslfile = utils.findStylesheet(stylesheet, self._aliases) File "/usr/share/sgml/misc/sgmltools/python/utils.py", line 317, in findStylesheet raise IOError, "Couldn't resolve pubid [%s]" % id IOError: Couldn't resolve pubid [sgmltools-onehtml] what does /etc/sgmltools/aliases say? there must be aline like sgmltools-onehtml "-//SGMLtools//DOCUMENT Docbook Style Sheet for HTML//EN"#onehtml for sgmltools to know what to look at. sgmltools-<backend> is the format as you probably can guess. if you use "sgmltools -b onehtml" it will look for the DTD referenced in aliases and then try to find the DTD in the .cat files. hth Mike I installed xhtml1 and ensured that the /etc/sgml/aliases file as in placed and right. I was able to build xine-lib documentaiton with sgmltools. I found that gtk-doc conflicted with xhtml1 during a upgrade so I replaced xhtml1. The documentations builds find with gtk-doc. So I am going to claim that I originally did not have xhtml1 installed so I could not resolve dtd information. So I would recommend suggesting that a user installing sgmltools might want gtk-doc/xhtml1. |