Nebst neuen Funktionalitäten können vermeintliche oder tatsächliche Fehler Gründe sein, um Backports – rückportierte Programm-Versionen1 – einsetzen zu wollen. Ein Beispiel der Datenbank LibreOffice Base folgt.

Niveau: Basis- bis mittleres Niveau

Inhalt:

LibreOffice Base: Subjektive Einordnung

Das Datenbankmanagementsystem (DBMS) LibreOffice Base oder vergleichbare Produkte2 können sich für Datenanalysen und Abfragen eignen, welche die Möglichkeiten einer Tabellenkalkulation übersteigen, aber dennoch bloss die bekannte Umgebung, eine vorhandene Office-Suite, voraussetzen. Mit Vor- und Nachteilen, versteht sich.3

(Vermeintliche) Fehler in LO Base

Wird LibreOffice Base auf etwas fortgeschrittenerem Niveau eingesetzt, kann die SQL-Syntax leicht abweichen von anderen DBMS. Details übersteigen diesen Text und sind mir auch nicht alle bekannt.

Gemäss Forum ask.libreoffice.org werden Fehler wie

Syntax error in SQL statement

SQL Status: HY000, Error code: 1000

wiederholt diskutiert. In den meisten Fällen dürfte es sich um fehlende Anführungszeichen (double quotes) oder anderen Syntax-Fehlern handeln.

Bei mir blieb eine ähnliche Syntax-Fehler-Meldung unerklärbar. Deshalb entschied ich mich tatsächlich, eine neuere Version von LibreOffice zu installieren. Es wäre denkbar, dass es sich um einen inzwischen behobenen Bug handeln könnte.

LibreOffice-Version der Debian Backports installieren

Debian stable (bullseye) hat zurzeit LibreOffice 7.0.x. Die Version aus den Debian Backports, zurzeit LibreOffice 7.3.4, ist offenbar topaktuell und entspricht sogar der neusten Version von libreoffice.org/download/.

Siehe da, mit der Version aus den Debian Backports sind ein paar unerklärliche Fehlermeldungen bei Base verschwunden. Allerdings erst im zweiten Anlauf.

Kurz: Wie Debian Backports installieren?

Installations-Details per grafischer Bedienoberfläche oder Kommandozeile: siehe vorheriger Beitrag. Ähnlich dürfte es bei Ubuntu und (Debian-/Ubuntu-) Derivaten sein.

  1. Backports aktivieren
    sudo apt edit-sources
    Gewünschte Paketquelle hinzufügen, beispielsweise:
    # Paketquelle Backports:
    deb https://debian.ethz.ch/debian bullseye-backports main contrib non-free

  2. Aktualisieren der Paket-Metadaten:
    sudo apt update

  3. LibreOffice Debian Backports installieren
    sudo apt -t bullseye-backports install libreoffice

Zu früh gefreut

The document “someReport” could not be opened.

The document “Media_Chart” could not be opened.
loading component library <file:///user/lib/libreoffice/program/librptlo.so> failed
./-cppuhelper/source/shlib.css:311

Synaptic: Force Version

Abb. 1: LibreOffice Base
Beispiel einer Fehlermeldung

Oder auch

Crash bei Klick auf Chart in einem Report


LibreOffice Writer, Calc, Impress, Draw … liefen problemlos.

Meine Vermutung war: Mit genanntem apt-Befehl … install libreoffice sind wohl nicht ganz alle Komponenten für Base mitinstalliert worden.

Lösungsversuch

  1. Ich überprüfe mit
    dpkg-query -W | grep '~bpo'
    welche von allen installierten Paketen Backports sind. Diese Liste sollte bei mir nicht lange sein, da auf meiner Debian-Testmaschine bisher nur LibreOffice Backports installiert wurden.

  2. Wenn ich diese Backports-Liste mit der Quick-and-Dirty-Liste der Pakete mit der derzeitigen LO Versionsnummer von Stable, also mit
    dpkg --list | grep "7.0.4-4"
    vergleiche, kann ich überschlagsmässig herausfinden, was noch fehlen könnte.

  3. Nachinstallationen folgender Pakete, alphabetisch – natürlich sind nicht alle wichtig (oder notwendig), aber zu wenige scheinen es nicht zu sein:

  • liblibreoffice-java
  • liblibreofficekitgtk
  • libreoffice-help-[...]
    • bpsw. libreoffice-help-de
  • libreoffice-help-common
  • libreoffice-l10n-[...]
    • bpsw. libreoffice-l10n-de
  • libreoffice-librelogo
  • libreoffice-nlpsolver
  • libreoffice-qt5
  • libreoffice-report-builder
    • sicherlich eine wichtige Komponente
  • libreoffice-report-builder-bin
  • libreoffice-script-provider-bsh
  • libreoffice-script-provider-js
  • libreoffice-script-provider-python
  • libreoffice-sdbc-firebird
    • Wenn nur HSQLDB (Default) als Engine verwendet wird, sollte libreoffice-sdbc-hsqldb genügen
  • libreoffice-sdbc-hsqldb
  • libreoffice-sdbc-mysql
  • libreoffice-sdbc-postgresql
  • libreoffice-style-breeze
  • libreoffice-style-colibre
  • libreoffice-style-elementary
  • libreoffice-wiki-publisher
  • libreofficekit-data
  • libuno-cppu3
  • libuno-purpenvhelpergcc3-3
  • libuno-salhelpergcc3-3
  • libunoloader-java

Fehlschluss? (Aber: “es funktioniert”)

Nachdem diese Pakete nachinstalliert wurden, lief LibreOffice Base problemlos. Wie das so ist in der Informatik, sind Ursache-Wirkungs-Zusammenhänge ohne vertiefte Analyse nicht immer so eindeutig, wie wir glauben möchten …

Weitere potenzielle Probleme

Laut Eintrag HSQLDB im Wiki der Document Foundation enthält Base die ältere Version 1.8 der HSQLDB statt zurzeit 2.7. Auf hsqldb.org wird beschrieben, wie einfach die .jar-Datei ersetzt werden könnte, falls neue HSQLDB-Funktionalitäten erwünscht wären – mit Einschränkungen (beispielsweise nur für externe Datenbanken, noch nicht für embedded Databases).

Bei Debian benötigt libreoffice-sdbc-hsqldb (Dependency) das Paket libhsqldb1.8.0-java (unter “oldlibs”!), obschon das Debian-Repository sonst libhsqldb-java in der Version 2.5.x anbieten würde.

Anders als in Foren gelegentlich diskutiert, kann ich keine Probleme deswegen beobachten. Häufig fehlende Pakete scheinen jedoch die erwähnten

  • libreoffice-sdbc-hsqldb und
  • libreoffice-report-builder

zu sein, die offenbar immer installiert sein müssen. Werden LibreOffice-Backports verwendet, kann es leicht passieren, dass diese noch nicht separat nachinstalliert worden sind.

  1. (Oft gehörte Frage:) Die aktuellste Version eines Programmes (bspw. LibreOffice) kann neuer sein als diejenige Version, die es in den Release einer Distribution schaffte (bspw. Debian stable, zurzeit Bullseye). Einige neuere Versionen von ausgewählten, bedeutenderen Programmen werden dann “rückportiert”, um sie bspw. in Debian stable verwenden zu können. Vgl. auch vorherigen Beitrag

  2. Nach meinen nicht ganz repräsentativen Erfahrungen sind in KMU wie Grossfirmen und Organsiationen nebst Base etwa FileMaker oder Access beliebt. Tabellenkalkulationen wie Calc oder Excel haben zwar noch begrenztere Möglichkeiten, bleiben jedoch deutlich beliebter. 

  3. Jedenfalls mache ich die Erfahrung, dass relativ viele KMU und Grossfirmen (!) Tabellenkalkulation wie Calc oder Excel und DBMS wie Base, FileMaker oder Access einsetzen. Sie möchten damit recht ausgeklügelte Applikationen entwickelt haben. So vermeiden sie unter Umständen aufwendige interne Genehmigungsprozesse, um meist teurere Individualsoftware entwickeln zu lassen. Das kann bedingt sinnvoll sein. Beispielsweise habe ich Reporting- oder andere kleinere und grössere Applikationen entwickelt, die teils eine Zwischenlösung sein sollten vor Einführung einer neuen, “grossen” Software-Lösung (und manchmal jahrelang im Einsatz bleiben!).