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:
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:
ppa:jeffreyratcliffe/ppa
Hinweis!
Zusätzliche Fremdquellen können das System gefährden.
Ein PPA unterstützt nicht zwangsläufig alle Ubuntu-Versionen. Weitere Informationen sind der PPA-Beschreibung des Eigentümers/Teams jeffreyratcliffe zu entnehmen.
Installiert[2] werden muss das Paket
gscan2pdf (ppa)
Befehl zum Installieren der Pakete:
sudo apt-get install gscan2pdf
Oder mit apturl 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
Befehl zum Installieren der Pakete:
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 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)
Befehl zum Installieren der Pakete:
sudo apt-get install libgtk2-ex-podviewer-perl sane xdg-utils djvulibre-bin unpaper gocr tesseract-ocr cuneiform ocropus
Oder mit apturl 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!
Links¶