[GNC-dev] Issues with FOP - PDF generation

John Ralls jralls at ceridwen.us
Fri Sep 14 10:11:43 EDT 2018

> On Sep 14, 2018, at 4:49 AM, D via gnucash-devel <gnucash-devel at gnucash.org> wrote:
> On September 14, 2018, at 1:59 AM, "Frank H. Ellenberger" <frank.h.ellenberger at gmail.com> wrote:
>> Am 14.09.18 um 03:55 schrieb David T. via gnucash-devel:
>>> OK, so I thought it would be nice to look at the changes I am implementing in the documentation in PDF format, since I am rather old school, and like to see the changes in a print format.
>>> I went to the wiki, and followed the new directions there to try to compile pdf documentation. 
>> which page?
> https://wiki.gnucash.org/wiki/Documentation_Update_Instructions#Prepare_The_Build_Directory
>>> First, I ran ./autogen.sh, and aside from numerous warnings about a non-POSIX variable name, everything went well.
>>> Next, I changed to build and ran ../configure, and buried in there is the message:
>>> configure: WARNING: fop not found. You will not be able to generate PDF files.
>>> Ah. The wiki didn’t mention anything about this;
>> Such dependencies are usually in a specific README.dependencies or
>> direct in the README[.md] file.
>>> a search online indicates that fop refers to Apache FOP, and I followed directions at http://www.working-software.com/node/18 <http://www.working-software.com/node/18>; to copy the various jar files into ~/Library/Java/Extensions
>> Strange, I had only to install a package xmlgraphics-fop, but Macos
>> might behave different.
>> Result of 'which fop' returns a usable path like "/usr/bin/fop"?I
> That seems odd; the install page at Apache says it's a java app, and installation consists of copying jar files. No mention of /usr/bin...
> Unfortunately, MacOS is different. Maybe John has advice for me...

I build the docs for distribution on a Linux VM so I’ve never installed FOP directly on MacOS. 

The catch is the invocation of FOP: The instructions on the page you gave just copy jars to ~/Library/Java/Extensions and say to invoke it with 
  java  java org.apache.fop.cli.Main -fo
pdf.make wants to just say “fop” so you need a to arrange for that with a two-line shell file
  java  java org.apache.fop.cli.Main -fo $@
named fop and somewhere on the path.

John Ralls

More information about the gnucash-devel mailing list