[SOLVED] Issues building darktable manual from git (Ubuntu 20.04)

Hi there,
after a reinstall of my Linux system to new Ubuntu 20.04, one of my next stpüs was to regain the capability to build darktable from git (currently the branch darktable-3.0.x). After fiddling around some time with trying to build … figure out whats missing… get into Synaptic… search for missing items… install … retry… I am now able to successfully build darktable … YES …

okay, LLVM is not found … but that is not bothering me to much, that also was the case in my old Linux environment :wink:

I get :

CMake Warning at CMakeLists.txt:273 (find_package):
Could not find a configuration file for package “LLVM” that is compatible
with requested version “8”.

The following configuration files were considered but not accepted:

/usr/lib/llvm-10/cmake/LLVMConfig.cmake, version: 10.0.0
/lib/llvm-10/cmake/LLVMConfig.cmake, version: 10.0.0

What is an issue is the fact, that I am not able to build the manual!
Initial build.sh run shows:

Missing xml2po. No localized usermanuals are build
Missing xml2po
Can NOT update usermanual translations

No idea where to get this xml2po from. can not find it for Ubuntu 20.04 via Synaptic.

Trying then to actually build the manual fails like this …

make darktable-usermanual
[ 3%] Checking validity of the usermanual darktable.xml
[ 3%] Built target validate_usermanual_xml
[ 3%] Generating the profiled docbook xml file
I/O error : Attempt to load network entity http://docbook.sourceforge.net/release/xsl/current/profiling/profile.xsl
warning: failed to load external entity “http://docbook.sourceforge.net/release/xsl/current/profiling/profile.xsl
compilation error: file xsl/darktable_profile.xsl line 3 element import
xsl:import : unable to load http://docbook.sourceforge.net/release/xsl/current/profiling/profile.xsl
make[3]: *** [doc/usermanual/CMakeFiles/darktable_single_xml.dir/build.make:397: doc/usermanual/darktable_profile.xml] Fehler 5
make[2]: *** [CMakeFiles/Makefile2:6539: doc/usermanual/CMakeFiles/darktable_single_xml.dir/all] Fehler 2
make[1]: *** [CMakeFiles/Makefile2:6601: doc/usermanual/CMakeFiles/darktable-usermanual.dir/rule] Fehler 2
make: *** [Makefile:2721: darktable-usermanual] Fehler 2

I am sorry to say, that I have no idea what is going on here and what I miss…
As I actually can access the links and view the XSLTs directly, I am quite puzzled …

→ SOLVED:
“install the docbook xsl stylesheets package for your distro.” thx, darix !

Any hint really would be welcome.
Besides that darktable itself compiles and runs like a charm … really really great stuff !!

Thank you so much for any hints to those issues …
Cheers, Martin

xml2po is in the package gnome-doc-utils

[solved … found it in launchpad:
0.20.10-5 : gnome-doc-utils : amd64 : Focal (20.04) : Ubuntu ]

Hi,

unfortunately I can not find the package gnome-doc-utils in the repos I access under Ubuntu 20.04 …

So there might be an issue here?

The dependencies for darktable listed in the package description from darix are all there. As said. darktable itself compiles fine and runs without issues. I am just not able to build the manuals

okay … found it in launchpad :wink: : 0.20.10-5 : gnome-doc-utils : amd64 : Focal (20.04) : Ubuntu

So I am a step further … usermanuals builds to 96% to hit the I/O error situation listed earlier … hmmm.

@DerMartin did you manage to get lensfun installed and updated? I am fighting with lensfun-update-data, it always crashes. Tried to deinstall, reinstall, compile … everything. Liblensfun is installed and seems to work but interestingly only with a very old/limited set of lenses and I have no chance to update lensfun data.
About dt on Ubuntu 20.04:
manual build from git worked for me with 3.01
tried to get 3.02 with snap installation - but even today its only 3.01
connected the ubuntuhandbook ppa to get 3.02 (successfully)
fighting with lensfun in all variations :frowning:

lensfun updates work without any issues. (~/.local/share/lensfun/updates, and via sudo also in /var/lib/lensfun-updates/version_1.)
Might be an issue in snap due to sandboxing?
But for my own compiled darktable 3.0.2 from git there is no issue.

What I still face is related to building the manuals, and here I am still stuck with the errors I posted earlier in the threat.

Hi,

if anyone would be able to give a hint what might be wrong so that the following error triggers when trying to make the manual, any idea/hint really would be highly appreciated:

[ 96%] Built target target_media_images
[ 96%] Checking validity of the usermanual darktable.xml
[ 96%] Built target validate_usermanual_xml
[ 96%] Generating the profiled docbook xml file
I/O error : Attempt to load network entity http://docbook.sourceforge.net/release/xsl/current/profiling/profile.xsl
warning: failed to load external entity “http://docbook.sourceforge.net/release/xsl/current/profiling/profile.xsl
compilation error: file xsl/darktable_profile.xsl line 3 element import
xsl:import : unable to load http://docbook.sourceforge.net/release/xsl/current/profiling/profile.xsl
make[3]: *** [doc/usermanual/CMakeFiles/darktable_single_xml.dir/build.make:397: doc/usermanual/darktable_profile.xml] Fehler 5
make[2]: *** [CMakeFiles/Makefile2:6826: doc/usermanual/CMakeFiles/darktable_single_xml.dir/all] Fehler 2
make[1]: *** [CMakeFiles/Makefile2:6693: doc/usermanual/CMakeFiles/darktable-usermanual.dir/rule] Fehler 2
make: *** [Makefile:2747: darktable-usermanual] Fehler 2

I have no idea whats going on here as I still am more or less a user rather than programmer… Before my reinstall to Ubuntu 20.04 all was smooth :wink:

Hints really would be appreciated.
Thank you so much.
Cheers, Martin

An XSL can specify external XSL files to load. This one happens to be on source forge. But your system can’t seem to download it.

That also is my take.
Yet I am able to access the link and load the xsl files via my browser, so in theorie my system at least is able to access them., but just seems to fail loading as import …

install the docbook xsl stylesheets package for your distro.

GREAT! That was the missing link !
Thank you a lot! Now also document-generation is up and running.
THX a lot.

After upgrading Ubuntu 18.04 to 20.04 it is no longer possible to build the manual from git. Using the command “make darktable-usermanual” I get this messages :


[100%] Building usermanual
Making portrait pages on A4 paper (210mmx297mm)
[warning] /usr/bin/fop: Unable to locate avalon-framework in /usr/share/java
Exception in thread “main” java.lang.NoSuchMethodError: java.nio.CharBuffer.limit(I)Ljava/nio/CharBuffer;
at org.apache.fop.fo.FOText.characters(FOText.java:143)

make[3]: *** [doc/usermanual/CMakeFiles/darktable-usermanual.dir/build.make:62: doc/usermanual/darktable-usermanual.pdf] Fehler 1

Java-11 (openjdk 11.0.8+10-0ubuntu1~20.04) from Ubuntu repository is installed on the system. No avalon-framework.jar in /usr/share/java.
The previous system (Ubuntu 18.04) contains 11.0.8+10-0ubuntu1~18.04.1, there avalon-framework-4.2.0.jar was present in /usr/share/java.
I think about copying the missing jar from a 18.04 system to 20.04, but I would prefer a clean solution. Any hint would be welcome.