Archiv/gscan2pdf/Kompilieren

Archivierte Anleitung

Dieser Artikel wurde archiviert. Das bedeutet, dass er nicht mehr auf Richtigkeit überprüft oder anderweitig gepflegt wird. Der Inhalt wurde für keine aktuell unterstützte Ubuntu-Version getestet. Wenn du Gründe für eine Wiederherstellung siehst, melde dich bitte in der Diskussion zum Artikel. Bis dahin bleibt die Seite für weitere Änderungen gesperrt.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

  1. Bearbeiten von Paketquellen

  2. Installation von Programmen

  3. Ein einzelnes Paket installieren

  4. Ein Terminal öffnen

  5. Archive entpacken

  6. Pakete aus dem Quellcode erstellen

  7. Einen Editor öffnen

Inhaltsverzeichnis
  1. Installation
    1. Aus einem PPA
    2. Fertiges Paket von sourceforge.net
    3. Aus dem Quellcode
      1. build-Abhängigkeiten
      2. Programmabhängigkeiten
      3. Sinnvolle Zusätze
    4. Quellcode beziehen
    5. tesslanguage-Variable exportieren
  2. Links

Wer gscan2pdf auch mit den OCR-Programmen OCRopus 🇬🇧 und Cuneiform-Linux verwenden möchte, was erst ab Version 0.9.31 möglich ist, muss derzeit unter Ubuntu vor 11.10 Oneiric Ocelot das Programm aus anderen Quellen beziehen oder den Quellcode selbst kompilieren, sinnvollerweise gleich aus der git-Quelle.

Installation

Aus einem PPA

Adresszeile zum Hinzufügen des PPAs:

Hinweis!

Zusätzliche Fremdquellen können das System gefährden.


Ein PPA unterstützt nicht zwangsläufig alle Ubuntu-Versionen. Weitere Informationen sind der Wiki/Vorlagen/PPA/ppa.png PPA-Beschreibung des Eigentümers/Teams jeffreyratcliffe zu entnehmen.

Damit Pakete aus dem PPA genutzt werden können, müssen die Paketquellen neu eingelesen werden.

Installiert[2] werden muss das Paket

Paketliste zum Kopieren:

sudo apt-get install gscan2pdf 

Oder mit apturl die Pakete installieren. Link: apt://gscan2pdf

Fertiges Paket von sourceforge.net

Alternativ kann nach Installation der gewünschten optionalen Pakete (siehe Sinnvolle Zusätze) ein fertiges .deb-Paket von sourceforge.net ⮷ heruntergeladen werden, welches auch für Ubuntu geeignet ist. Dieses lässt sich dann von Hand installieren[3].

Hinweis!

Fremdpakete können das System gefährden.

Aus dem Quellcode

build-Abhängigkeiten

Benötigt werden die build-Abhängigkeiten für gcsan2pdf, die z.B. im Terminal[4] installiert werden können:

Befehl zum Installieren der Build-Abhängigkeiten:

sudo apt-get build-dep gscan2pdf   

sudo aptitude build-depends gscan2pdf   

Programmabhängigkeiten

gscan2pdf benötigt folgende Pakete:

  • libgtk2-imageview-perl

  • libgtk2-ex-simple-list-perl

  • libsane-perl

  • liblocale-gettext-perl (>= 1.05 )

  • sane-utils (>= 1.0.17 )

  • libtiff-tools

  • libpdf-api2-perl

  • libconfig-general-perl ( >= 2.40 )

  • perlmagick

  • imagemagick

  • librsvg2-common

  • libset-intspan-perl (>= 1.10)

  • libhtml-parser-perl

  • libgoo-canvas-perl

  • libproc-processtable-perl

  • libreadonly-perl

  • liblog-log4perl-perl

  • libforks-perl

Paketliste zum Kopieren:

sudo apt-get install libgtk2-imageview-perl  libgtk2-ex-simple-list-perl  libsane-perl liblocale-gettext-perl sane-utils libtiff-tools libpdf-api2-perl  libconfig-general-perl perlmagick  imagemagick librsvg2-common  libset-intspan-perl libhtml-parser-perl  libgoo-canvas-perl  libproc-processtable-perl libreadonly-perl  liblog-log4perl-perl libforks-perl 

Oder mit apturl die Pakete installieren. Link: ,libgtk2-ex-simple-list-perl ,libsane-perl,liblocale-gettext-perl,sane-utils,libtiff-tools,libpdf-api2-perl ,libconfig-general-perl,perlmagick ,imagemagick,librsvg2-common ,libset-intspan-perl,libhtml-parser-perl ,libgoo-canvas-perl ,libproc-processtable-perl,libreadonly-perl ,liblog-log4perl-perl,libforks-perl

Sinnvolle Zusätze

Um den vollen Funktionsumfang nutzen zu können, sind außerdem folgende Pakete nötig

  • libgtk2-ex-podviewer-perl (um die Hilfe anzeigen zu können)

  • sane (um verschiedene Frontends verwenden zu können, siehe SANE)

  • xdg-utils (um PDFs direkt als E-Mails verschicken zu können)

  • djvulibre-bin (um DjVu-Dateien erstellen zu können)

  • unpaper (um die Scans vorzubereiten, siehe unpaper)

  • gocr (OCR-Programm)

  • tesseract-ocr (OCR-Programm, dazu entsprechende Sprachdateien, siehe tesseract-ocr)

  • cuneiform (OCR-Programm, siehe Cuneiform-Linux)

  • ocropus (OCR-Programm)

Paketliste zum Kopieren:

sudo apt-get install libgtk2-ex-podviewer-perl sane xdg-utils djvulibre-bin unpaper gocr tesseract-ocr cuneiform ocropus 

Oder mit apturl die Pakete installieren. Link: apt://libgtk2-ex-podviewer-perl,sane,xdg-utils,djvulibre-bin,unpaper,gocr,tesseract-ocr,cuneiform,ocropus

Cuneiform-Linux funktioniert allerdings nur in einer mit libmagick++-Support erstellten Version ab 0.8.0 (erst ab Oneiric in den Paketquellen vorhanden!).

Quellcode beziehen

Der Quellcode kann auf der Downloadseite ⮷ bezogen werden, das .tar-gz-Archiv entpacken[5] und kompilieren[6]. Allerdings hat diese Version noch einen Fehler, der die Benutzung von unterschiedlich großen Seiten für die Texterkennung einschränkt. Diese Fehler ist aber in der Git-Version bereits behoben. Diese kann man mit dem Befehl

git clone git://gscan2pdf.git.sourceforge.net/gitroot/gscan2pdf/gscan2pdf gsan2pdf-x.x.x 

heruntergeladen werden.

Zunächst wird für beide Fälle mit

perl Makefile.PL
make 

ein makefile erstellt und das Programm übersetzt. Leider funktioniert die vorgesehene Erstellroutine, die im Downloadverzeichnis für beide Versionen über den Befehl

make debdist 

aufgerufen werden soll, momentan nicht, da am Ende der private Schlüssel des Entwicklers verlangt wird, den man natürlich nicht vorhalten kann... Dieses Fehler ist bereits gemeldet, und soll nach Auskunft von Jeffrey Ratcliffe demnächst behoben werden.

Ggf. schlägt die Erzeugung eines einfachen Pakets via checkinstall fehl, wenn in den verwendeten Angaben zu den Abhängigkeiten fehlerhafte bzw. für checkinstall nicht verarbeitbare Einträge benutzt werden. Um dennoch ein Paket erstellen zu können, müssen in den Angaben bei der checkinstall-Installierung zu Punkt 10 die dort aufgeführten Abhängigkeiten

10 - Requires: [ perl(
ImageMagick-perl, ImageMagick, djvulibre, sane-backends >= 1.0.17
sane-frontends, xdg-utils, unpaper, gocr, perl(Gtk2
perl(Gtk2 ]

schlicht gelöscht werden (wenn die oben aufgeführten Pakete installiert sind, ansonsten können sie durch die oben angegebene Liste ersetzt werden), danach wird auch ein Paket erstellt und installiert.

tesslanguage-Variable exportieren

Um OCRopus ohne den beschriebenen Export der tesslanguage-Variable verwenden zu können, muss in der Datei gscan2pdf (das geht auch nach Installation mit einem Editor mit Root-Rechten[7] in /usr/bin/gscan2pdf) die Zeile

"$pre ocroscript $SETTING{ocroscript} --tesslanguage=$SETTING{'ocr language'} $png > $txt.txt$post";

durch

"$pre tesslanguage=$SETTING{'ocr language'} ocroscript $SETTING{ocroscript} $png > $txt.txt$post";

ersetzt werden, dann funktioniert auch für OCRopus die Spracheinstellung wie gewünscht. Diese Änderung ist in die GIT-Version vom 21.09. 2010 🇬🇧 bereits eingeflossen. Allerdings funktioniert dies für Version 1.0.x nicht mehr!