You are not logged in.
Via https://wiki.archlinux.org/title/Pacman … l_commands, I am aware of using pacman -U to manually (and perhaps forcibly) install ... well, practically any version of a package.
So I actually intend to re-make the gnucash documentation. For that I went to https://wiki.gnucash.org/wiki/Initializ … nvironment and followed their instructions to the letter.
For the sake of completeness, the requirements for software packages seems to be on their github page for the official documentation.
The building via make fails with some fop image ... java errors I do not understand. (See code below)
One cuplrit might be java-batik which is outdated. https://archlinux.org/packages/extra/any/java-batik/
Since it has been flagged 9 days ago, the maintainer does not work for me and it is probably cozy christmas time for him too, I am basically wondering:
How stupid would it be to download batik from source and manually install on my system?
Is there a guide or page available with specifics which one should look out for?
$ make de-guide-pdf
[ 0%] Generating ../../share/doc/de/gnucash-guide.pdf
Dez. 15, 2024 9:17:43 PM org.apache.fop.apps.FOUserAgent processEvent
WARNUNG: Font "Symbol,normal,700" not found. Substituting with "Symbol,normal,400".
Dez. 15, 2024 9:17:43 PM org.apache.fop.apps.FOUserAgent processEvent
[...]
Dez. 15, 2024 9:17:44 PM org.apache.fop.apps.FOUserAgent processEvent
INFORMATION: Rendered page #8.
Exception in thread "main" java.lang.NoSuchMethodError: 'void org.apache.fop.svg.SimpleSVGUserAgent.setSourceResolution(float)'
at org.apache.fop.svg.SimpleSVGUserAgent.<init>(SimpleSVGUserAgent.java:55)
at org.apache.fop.image.loader.batik.PreloaderSVG$Loader$1.<init>(PreloaderSVG.java:166)
at org.apache.fop.image.loader.batik.PreloaderSVG$Loader.createImageInfo(PreloaderSVG.java:166)
at org.apache.fop.image.loader.batik.PreloaderSVG$Loader.getImage(PreloaderSVG.java:131)
at org.apache.fop.image.loader.batik.PreloaderSVG$Loader.access$200(PreloaderSVG.java:108)
at org.apache.fop.image.loader.batik.PreloaderSVG.preloadImage(PreloaderSVG.java:76)
at org.apache.xmlgraphics.image.loader.ImageManager.preloadImage(ImageManager.java:176)
at org.apache.xmlgraphics.image.loader.cache.ImageCache.needImageInfo(ImageCache.java:127)
at org.apache.xmlgraphics.image.loader.ImageManager.getImageInfo(ImageManager.java:123)
at org.apache.fop.fo.flow.ExternalGraphic.bind(ExternalGraphic.java:81)
at org.apache.fop.fo.FObj.processNode(FObj.java:131)
at org.apache.fop.fo.FOTreeBuilder$MainFOHandler.startElement(FOTreeBuilder.java:321)
at org.apache.fop.fo.FOTreeBuilder$2.run(FOTreeBuilder.java:185)
at org.apache.fop.fo.FOTreeBuilder$2.run(FOTreeBuilder.java:182)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:319)
at org.apache.fop.fo.FOTreeBuilder.startElement(FOTreeBuilder.java:181)
at java.xml/com.sun.org.apache.xml.internal.serializer.ToXMLSAXHandler.closeStartTag(ToXMLSAXHandler.java:206)
at java.xml/com.sun.org.apache.xml.internal.serializer.ToSAXHandler.flushPending(ToSAXHandler.java:250)
at java.xml/com.sun.org.apache.xml.internal.serializer.ToXMLSAXHandler.endElement(ToXMLSAXHandler.java:245)
at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:619)
at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:184)
at java.xml/com.sun.org.apache.xerces.internal.xinclude.XIncludeHandler.emptyElement(XIncludeHandler.java:1074)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:352)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2735)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:635)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:113)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:551)
at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:890)
at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:826)
at java.xml/com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:134)
at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1225)
at java.xml/com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:643)
at java.xml/com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transformIdentity(TransformerImpl.java:693)
at java.xml/com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:780)
at java.xml/com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:394)
at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:295)
at org.apache.fop.cli.InputHandler.renderTo(InputHandler.java:117)
at org.apache.fop.cli.Main.startFOP(Main.java:180)
at org.apache.fop.cli.Main.startFOP(Main.java:142)
at org.apache.fop.cli.Main.main(Main.java:211)
make[3]: *** [de/guide/CMakeFiles/de-guide-pdf.dir/build.make:232: share/doc/de/gnucash-guide.pdf] Fehler 1
make[3]: *** Datei „share/doc/de/gnucash-guide.pdf“ wird gelöscht
make[2]: *** [CMakeFiles/Makefile2:1536: de/guide/CMakeFiles/de-guide-pdf.dir/all] Fehler 2
make[1]: *** [CMakeFiles/Makefile2:1543: de/guide/CMakeFiles/de-guide-pdf.dir/rule] Fehler 2
make: *** [Makefile:572: de-guide-pdf] Fehler 2
Offline
Offline
Thank you for your reply, but unless I am missing something, that page seems to be about building a (new) package.
Offline
Which is the way to accomplish what you want. Do not build and install it globally outside of pacman.
Offline
Edit: ninja'd by Scimmia
Which is what you asked about?
Just running make won't get you anywhere near a package.
---
Maybe take a step back:
I actually intend to re-make the gnucash documentation.
Why? What's the actual goal here?
Are you looking for the https://wiki.archlinux.org/title/Ala ?
Or are you trying to generate an updated version of https://archlinux.org/packages/extra/any/gnucash-docs/ (which isn't flagged out of date as of now)?
Though apparently 5.10 was pushed into the github repo 2 days ago, https://github.com/Gnucash/gnucash-docs … cbea2fdb2c
=> https://wiki.archlinux.org/title/Arch_build_system
ALso upstream seems to provide the documentation in varioufs formats?
https://gnucash.org/docs.phtml
Last edited by seth (2024-12-15 21:06:35)
Offline
Hi seth
Sure, I am aware of all the packages and files you listed.
I just cloned the gnucash-documentation's git repo and followed their instructions to use 'make' as a way to produce a pdf file.
So my goal is to run "make de-guide-pdf" (see code box in op) with 4 additional lines in a config file for Docbook. That is it.
And if that works, I intend to do something about the globally majestic indentation in the pdf files.
But Scimmia basically already told me off to newbie land so I guess I will have to wait for java-batik to get updated to find out if the java/fop errors go away and 'make de-guide-pdf' goes through.
Offline
as a java hobbyist: the error (well, it's an exception actually, but its class name ending in Error hints: "this is an issue neither the caller nor the callee should catch but it's an abnormal condition which should lead to immediate termination of the entire jvm process") you get hints to incompatible versions / version mismatch - or even just outright missing dependencies
the call stack starts at
org.apache.fop.cli.Main.main
which is part of the Apache FOP Project https://xmlgraphics.apache.org/fop/ and errors out in a class constructor
org.apache.fop.svg.SimpleSVGUserAgent.<init>
complaining that within it there's a call to some method which isn't found anywhere within the loaded classes
org.apache.fop.svg.SimpleSVGUserAgent.setSourceResolution(float)
according to its doc https://xmlgraphics.apache.org/fop/trunk/running.html the regular download comes with everything you need:
The following software must be installed:
- Java 1.8 or later Runtime Environment.
- Apache™ FOP. The FOP distribution includes all libraries that you will need to run a basic FOP installation. These can be found in the [fop-root]/lib directory. These libraries include the following:
- Apache XML Graphics Commons, an shared library for Batik and FOP.
- Apache Batik, an SVG library.
- Apache Commons Logging, a logger abstraction kit.
- Apache Commons IO, a library with I/O utilities.
The following software is optional, depending on your needs:
- Graphics libraries. Generally, FOP contains direct support for the most important bitmap image formats (including PNG, JPEG and GIF). See FOP: Graphics Formats for details.
- PDF encryption. See FOP: PDF Encryption for details.
In addition, the following system requirements apply:
- If you will be using FOP to process SVG, you must do so in a graphical environment. See FOP: Graphics (Batik) for details.
so possible issues:
- wrong java version (there were quite some changes from 1.8 to 1.9
- some missing or incompatible dependencies
Last edited by cryptearth (2024-12-15 21:24:24)
Offline
https://gnucash.org/docs/v5/de/gnucash-manual.pdf already is at 5.10
Not sure where fop/batic are coming from, they're not listed as dep of the 5.9 doc package.
Offline
I know, thanks. But I want to run "make de-guide-pdf" (see code box in op) with some minor changes to get a different layout. That is it.
Offline
Get the PKGBUILD, https://gitlab.archlinux.org/archlinux/ … type=heads
Adjust the version, run "makepkg -o" to get and extract the sources, fix the layout, run "makepkg -ei" to build the packages from the present (fixed) sources and install it.
Offline
fop 2.10-1 is too new for gnucash-docs 5.10 downgrade fop to 2.9-1.
Offline