Opened 4 years ago
Last modified 20 months ago
#62354 assigned defect
docbook-utils-0.6.14 fails to build --
Reported by: | jeremyhu (Jeremy Huddleston Sequoia) | Owned by: | lockhart (Thomas Lockhart) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | ||
Port: | docbook-utils docbook-xml-4.1.2 |
Description
docbook-utils-0.6.14 is failing to build on a clean install of MacPorts on macOS Big Sur.
There are a ton of errors like:
onsgmls:/opt/buildX11/share/xml/docbook/4.1.2/ent/iso-amsr.ent:8:16:E: "X224A" is not a function name onsgmls:/opt/buildX11/share/xml/docbook/4.1.2/ent/iso-amsr.ent:9:18:E: "X224D" is not a function name onsgmls:/opt/buildX11/share/xml/docbook/4.1.2/ent/iso-amsr.ent:10:18:E: "X224C" is not a function name onsgmls:/opt/buildX11/share/xml/docbook/4.1.2/ent/iso-amsr.ent:11:18:E: "X220D" is not a function name onsgmls:/opt/buildX11/share/xml/docbook/4.1.2/ent/iso-amsr.ent:12:19:E: "X22C8" is not a function name onsgmls:/opt/buildX11/share/xml/docbook/4.1.2/ent/iso-amsr.ent:13:17:E: "X223D" is not a function name
which has come up before (see #37164). That ticket was speculatively closed as fixed, but maybe it wasn't
Attachments (3)
Change History (17)
Changed 4 years ago by jeremyhu (Jeremy Huddleston Sequoia)
Changed 4 years ago by jeremyhu (Jeremy Huddleston Sequoia)
Attachment: | install-or-update-macports.sh added |
---|
install-or-update-macports.sh
comment:1 Changed 4 years ago by jeremyhu (Jeremy Huddleston Sequoia)
Owner: | set to lockhart |
---|---|
Status: | new → assigned |
comment:2 Changed 4 years ago by jeremyhu (Jeremy Huddleston Sequoia)
The attached script is an updated version of the current script to install dependencies of the XQuartz build system. I'm trying now to build and install documentation, but that's failing due to docbook-utils. The installation line (from a fresh install of base) is:
$ sudo port -N -v install autoconf automake pkgconfig libtool py39-mako meson xmlto asciidoc doxygen fop groff docbook-utils
To try and reduce this to see if a conflict is causing it, I then did:
$ sudo port -v deactivate active $ sudo port -N -v -s install docbook-utils
and that worked. Thus something in that small set of other project is causing a conflict.
$ sudo port -v uninstall docbook-utils $ sudo port -N -v install autoconf automake pkgconfig libtool $ sudo port -N -v -s install docbook-utils
That worked... uninstalled docbook-utils again and then:
$ sudo port -v uninstall docbook-utils $ sudo port -N -v -s install py39-mako meson xmlto asciidoc $ sudo port -N -v -s install docbook-utils
worked again... rince and repeat with the last set
$ sudo port -v uninstall docbook-utils $ sudo port -N -v -s install doxygen fop groff $ sudo port -N -v -s install docbook-utils
and that succeeded.
I then decided to deactivate everyhitng and try re-installing en-mass, and that failed!
Something odd is going on here. The only real difference is that docbook-utils's dependencies were laid down after libtool in the working case and after groff in the failing case. Given that we're using the same built archives, this means that something about the activation scripts is relevant here since the tarball content is the same in all cacses.
comment:3 Changed 4 years ago by jeremyhu (Jeremy Huddleston Sequoia)
I archived the failing state and then built up the succeeding state again.
The diff between the two shows:
$ diff -Naurp buildX11.failing buildX11 | diffstat diff: buildX11.failing/var/macports/home/Library/Caches: Permission denied diff: buildX11/var/macports/home/Library/Caches: Permission denied etc/sgml/catalog | 16 share/fonts/Type1/gsfonts/.uuid | 2 share/fonts/urw-fonts/.uuid | 2 var/cache/fontconfig/17776039-D72A-464F-A1A3-18171F69DCCF-le64.cache-7 | 3 var/cache/fontconfig/5C02858C-E380-424C-B471-C0539C4DEDDC-le64.cache-7 | 3 var/cache/fontconfig/76768DDF-B4E6-4263-A9BF-F9BE056FE891-le64.cache-7 | 2 var/cache/fontconfig/8DCE73BF-48ED-46F5-A03F-3AF814C6FD6A-le64.cache-7 | 2 var/cache/fontconfig/9E5FBD0F-9F7B-4489-A2C0-90AB08AB14DB-le64.cache-7 | 2 var/cache/fontconfig/AE7F2D50-9462-4741-948F-6624A9D53C13-le64.cache-7 | 2 var/cache/fontconfig/C8894DE4-E0A1-4EE0-8C41-9AE2511CE6B4-le64.cache-7 | 2 var/macports/registry/registry.db |11928 ++++------ 11 files changed, 5803 insertions(+), 6161 deletions(-)
The only thing suspicious there is /etc/sgml/catalog
[1072] /opt $ diff -Naurp buildX11*/etc/sgml/catalog --- buildX11.failing/etc/sgml/catalog 2021-02-24 00:07:07.000000000 -0800 +++ buildX11/etc/sgml/catalog 2021-02-24 00:13:13.000000000 -0800 @@ -1,4 +1,12 @@ -- Created by XML Catalog Manager 2.2 -- +CATALOG "/opt/buildX11/share/dsssl/docbook-dsssl/catalog" + +CATALOG "/opt/buildX11/share/sgml/iso8879/catalog" + +CATALOG "/opt/buildX11/share/sgml/docbook/4.2/docbook.cat" + +CATALOG "/opt/buildX11/share/sgml/openjade/catalog" + CATALOG "/opt/buildX11/share/xml/docbook/4.2/docbook.cat" CATALOG "/opt/buildX11/share/xml/docbook/4.1.2/docbook.cat" @@ -9,11 +17,3 @@ CATALOG "/opt/buildX11/share/xml/docbook CATALOG "/opt/buildX11/share/xml/docbook/4.5/docbook.cat" -CATALOG "/opt/buildX11/share/dsssl/docbook-dsssl/catalog" - -CATALOG "/opt/buildX11/share/sgml/iso8879/catalog" - -CATALOG "/opt/buildX11/share/sgml/docbook/4.2/docbook.cat" - -CATALOG "/opt/buildX11/share/sgml/openjade/catalog" -
comment:4 Changed 4 years ago by jeremyhu (Jeremy Huddleston Sequoia)
Indeed, if I make that edit to $prefix/sgml/catalog, the build succeeds where it used to fail.
Changed 4 years ago by jeremyhu (Jeremy Huddleston Sequoia)
catalog (bad)
comment:5 Changed 4 years ago by jeremyhu (Jeremy Huddleston Sequoia)
Even after getting the install to succeed, we fail to build documentation for fontconfig:
Using catalogs: /opt/buildX11/etc/sgml/catalog Using stylesheet: /opt/buildX11/share/sgml/docbook/utils-0.6.14/docbook-utils.dsl#print Working on: /Users/jeremy/src/freedesktop/github/XQuartz/src/fontconfig/fc-cache/../fc-cache/fc-cache.sgml onsgmls:(invalid location):E: invalid filename "" onsgmls:/Users/jeremy/src/freedesktop/github/XQuartz/src/fontconfig/fc-cache/../fc-cache/fc-cache.sgml:1:59:W: cannot generate system identifier for public text "-//OASIS//DTD DocBook V4.1//EN" onsgmls:/Users/jeremy/src/freedesktop/github/XQuartz/src/fontconfig/fc-cache/../fc-cache/fc-cache.sgml:35:0:E: reference to entity "REFENTRY" for which no system identifier could be generated onsgmls:/Users/jeremy/src/freedesktop/github/XQuartz/src/fontconfig/fc-cache/../fc-cache/fc-cache.sgml:1:0: entity was defined here onsgmls:/Users/jeremy/src/freedesktop/github/XQuartz/src/fontconfig/fc-cache/../fc-cache/fc-cache.sgml:35:0:E: DTD did not contain element declaration for document type name onsgmls:/Users/jeremy/src/freedesktop/github/XQuartz/src/fontconfig/fc-cache/../fc-cache/fc-cache.sgml:37:9:E: element "REFENTRY" undefined onsgmls:/Users/jeremy/src/freedesktop/github/XQuartz/src/fontconfig/fc-cache/../fc-cache/fc-cache.sgml:38:15:E: element "REFENTRYINFO" undefined
so something's definitely not working right here even when we get the build to succeed... =/
comment:6 Changed 4 years ago by jmroot (Joshua Root)
Port: | docbook-xml-4.1.2 added |
---|
comment:7 Changed 4 years ago by jmroot (Joshua Root)
If the ordering of the catalog is important, I guess xmlcatmgr should be fixed to get that right?
comment:8 Changed 4 years ago by kencu (Ken)
I took a look for you Jeremy.
Certainly not a simple area to sort throught. MacPorts rather detailed PortGroup noted <https://github.com/macports/macports-ports/blob/master/_resources/port1.0/group/xmlcatalog-1.0.tcl>.
I found this, which looks possibly relevant <https://github.com/libexpat/libexpat/issues/188>.
I'll report back if I find anything definitive.
comment:9 Changed 4 years ago by kencu (Ken)
It's a workaround, not a proper fix, but this succeeds:
$ sudo port -f deactivate active $ sudo port -N -v install docbook-utils autoconf automake pkgconfig libtool py39-mako meson xmlto asciidoc doxygen fop groff
comment:10 Changed 4 years ago by kencu (Ken)
But it seems like it is just as broken when trying to build the docs for fontconfig:
Working on: /Users/Shared/cloned_forks/Xquartz/src/fontconfig/doc/local-fontconfig-devel.sgml No way to convert HTML to text found. No way to convert HTML to text found. gnumake[3]: *** [fontconfig-devel.txt] Error 8 gnumake[3]: *** Waiting for unfinished jobs.... gnumake[3]: *** [fontconfig-user.txt] Error 8 onsgmls:(invalid location):E: invalid filename "" onsgmls:(invalid location):E: invalid filename "" openjade:/Users/Shared/cloned_forks/Xquartz/src/fontconfig/doc/fontconfig-user.sgml:1:59:W: cannot generate system identifier for public text "-//OASIS//DTD DocBook V3.1//EN" openjade:/Users/Shared/cloned_forks/Xquartz/src/fontconfig/doc/fontconfig-user.sgml:4:0:E: reference to entity "REFENTRY" for which no system identifier could be generated openjade:/Users/Shared/cloned_forks/Xquartz/src/fontconfig/doc/fontconfig-user.sgml:1:0: entity was defined here openjade:/Users/Shared/cloned_forks/Xquartz/src/fontconfig/doc/fontconfig-user.sgml:4:0:E: DTD did not contain element declaration for document type name onsgmls:/Users/Shared/cloned_forks/Xquartz/src/fontconfig/doc/local-fontconfig-devel.sgml:1:58:W: cannot generate system identifier for public text "-//OASIS//DTD DocBook V3.1//EN" openjade:/Users/Shared/cloned_forks/Xquartz/src/fontconfig/doc/fontconfig-user.sgml:26:9:E: element "REFENTRY" undefined openjade:/Users/Shared/cloned_forks/Xquartz/src/fontconfig/doc/fontconfig-user.sgml:27:8:E: element "REFMETA" undefined openjade:/Users/Shared/cloned_forks/Xquartz/src/fontconfig/doc/fontconfig-user.sgml:28:16:E: element "REFENTRYTITLE" undefined onsgmls:/Users/Shared/cloned_forks/Xquartz/src/fontconfig/doc/local-fontconfig-devel.sgml:25:0:E: reference to entity "ARTICLE" for which no system identifier could be generated onsgmls:/Users/Shared/cloned_forks/Xquartz/src/fontconfig/doc/local-fontconfig-devel.sgml:1:0: entity was defined here onsgmls:/Users/Shared/cloned_forks/Xquartz/src/fontconfig/doc/local-fontconfig-devel.sgml:25:0:E: DTD did not contain element declaration for document type name openjade:/Users/Shared/cloned_forks/Xquartz/src/fontconfig/doc/fontconfig-user.sgml:29:12:E: element "MANVOLNUM" undefined openjade:/Users/Shared/cloned_forks/Xquartz/src/fontconfig/doc/fontconfig-user.sgml:31:11:E: element "REFNAMEDIV" undefined openjade:/Users/Shared/cloned_forks/Xquartz/src/fontconfig/doc/fontconfig-user.sgml:32:9:E: element "REFNAME" undefined onsgmls:/Users/Shared/cloned_forks/Xquartz/src/fontconfig/doc/local-fontconfig-devel.sgml:49:8:E: element "ARTICLE" undefined openjade:/Users/Shared/cloned_forks/Xquartz/src/fontconfig/doc/fontconfig-user.sgml:33:12:E: element "REFPURPOSE" undefined onsgmls:/Users/Shared/cloned_forks/Xquartz/src/fontconfig/doc/local-fontconfig-devel.sgml:50:7:E: element "TITLE" undefined .... etc x 200 more ...
comment:11 Changed 4 years ago by kencu (Ken)
this error No way to convert HTML to text found.
disappears when you install lynx
which some say is a required dep for docbook-utils.
The others ... apparently some missing catalog...
comment:12 Changed 4 years ago by kencu (Ken)
very similar issue <https://bugzilla.redhat.com/show_bug.cgi?id=125843>
comment:13 follow-up: 14 Changed 4 years ago by kencu (Ken)
and #26151 seems relevant. There's an oldie.
comment:14 Changed 20 months ago by Lisias (Lisias)
Replying to kencu:
and #26151 seems relevant. There's an oldie.
This problem had bitten me in the… back… today. I found that the following workaround worked for me:
sudo port uninstall docbook-xml-4.3 docbook-xml-4.4 docbook-xml-4.5 iso8879 docbook-xml-4.2 openjade docbook-sgml-4.2 docbook-utils p5.22-sgmlspm docbook-dsssl docbook-xml-5.0 docbook-xsl docbook-xsl-ns sgml-common sudo rm -rf /opt/local/etc/sgml /opt/local/etc/xml sudo port install -s docbook-utils
source: ticket:48297#comment:4
main.log