Hallo!
Ich hatte eine ähnliche Frage schonmal für Windows/WinShell gestellt. Jetzt hier für Ubuntu/Kile: Wie kann ich automatisch beim Kompilieren fehlende Pakete nachinstallieren lassen?
Druckbare Version
Hallo!
Ich hatte eine ähnliche Frage schonmal für Windows/WinShell gestellt. Jetzt hier für Ubuntu/Kile: Wie kann ich automatisch beim Kompilieren fehlende Pakete nachinstallieren lassen?
Hallo,
ganz automatisch geht es m.W. nach nicht. Du kannst jedoch den MiKTeX Package Manager dafür verwenden. Weitere allgemeine Infos findest Du hier, ganz konkret siehe evtl. die Kurzbeschreibung Installation des mpm unter Ubuntu Linux, darin habe ich notiert, was bei meiner letzten mpm-Installationen von der Ubuntu 8.04 Basisinstallation mit TeXLive+Kile ausgehend für den mpm noch nötig war.
Viele Grüße,
Stefan
Alternativ kann man mit Kanonen auf Spatzen schießen und das Paket texlive-full installieren. Meiner Erfahrung nach sind da die meisten Paketen denen man so begegnet dabei.
Ich hatte mit Kanonen auf Spatzen geschossen - mit dem Ergebnis, dass meine Platte auf dem kleinen EEEPC voll war und mir den Rechner fast zerschossen hätte... Und eigentlich brauch ich auch nicht soooo viele Pakete, aber ich bin nicht fit in der Von-Hand-Nachinstallation...
Ich verwende den mpm, obwohl ich bereits texlive-full installiert habe, da mir die Versionen einiger Pakete, die texlive (2007-13) mitbringt, nicht neu genug sind.
Mit einer recht kleinen tex-installation (texlive-latex-recommended o.ä.) kann man auch gut leben und mit dem mpm dosiert genau das nachinstallieren, was man braucht. Ich habe mir z.B. gerade mit nur einem mpm-Aufruf das ganze oberdiek-Bundle nachinstalliert, um dessen neueste Version mit bookmark.sty zu haben.
Stefan
Ich persönlich bin nicht der Fan davon Dateien am Paketmanager vorbei zu aktualisieren / zu installieren. Aber das ist sicher eher eine subjektive Sache - falls ich mal was aktuelleres als das isntallierte brauch, habe ich jetzt aber auch dafür ein Bookmark, mir war nicht bewusst, dass die Pakete teilweise schon zu alt sind.
Hi,
ich finds auch nicht so toll, aber was will man machen, wenn man Neueres haben möchte, wie das aktuelle pgf/TikZ 2.0 statt 1.18 ... oder letztens stiess ich z.B. auf das Problem, dass in der Distribution listings.sty gar nicht zusammen mit KOMA-Klassen lief, es gab Fehler beim Compilieren einfachster Dokumente, die aktuelle Version ist hingegen darauf abgestimmt.
Im Allgemeinen ist es schon gut, eine unveränderte Distribution zu verwenden, die Pakete sind in der Regel aufeinander abgestimmt und getestet, so dass man solide arbeiten kann. In meinem Fall, bei manch anderem Forum-Nutzer auch, ist es ja auch etwas anders: ich installierte zig Pakete oft nur aus dem Grund, jemandem bei einem Problem zu helfen.
Übrigens installiere ich sie getrennt von der Distribution, so dass ich schnell wieder auf deren Pakete zurückgreifen kann.
Stefan
Ich bin inzwischen am Verzweifeln.
Ich habe jetzt seit Ewigkeiten drangesessen, diesen Paketmanager zu installieren, was ich - glaub ich - auch letztendlich geschafft habe. Aber trotzdem funktioniert es nicht. Beim Kompilieren (in Kile) scheitere ich trotzdem. Er erkennt einfach die neu installierten Pakete nicht.
Kann es daran liegen, dass Kile oder LaTex nicht versteht, wo die neuen Pakete liegen und sie deshalb nicht findet? Bitte bitte helft mir!!!
Hallo,
nach der Installation neuer Pakete solltest Du noch
aufrufen, damit die Paketdatenbank aktualisiert wird.Code:sudo texhash
Viele Grüße,
Stefan
texhash habe ich immer ausgeführt.
Ich habe jetzt mal das Dateisystem nach einer der fehlenden Dateien abgesucht (in diesem Fall wars multirow.sty) - es gibt sie nirgends, obwohl mir der Paket Manager sagt, das Paket sei installiert! Woran liegt das?
Gibt kpsewhich multirow.sty einen Ort aus?
Stefan
Muss ich das in den Terminal schreiben? - Da wird gar nichts getan, nur wieder die Befehlseingabezeile gezeigt.
Ja, im Terminal. Aber offenbar wird es ja nicht gefunden.
Wohin installiert der mpm die neuen Pakete? Evtl. liegt das außerhalb der texmf-Struktur.
Stefan
Ich hab sogar schon über --install-root=... versucht, in ein Verzeichnis zu installieren, in dem schon andere Pakete liegen, nur um rauszufinden, ob Latex das Ding einfach nicht findet. (Das macht man doch mit --install-root, oder?)
Hat alles keinen Erfolg bisher.
Rufe einmal initexmf --report auf, was wird ausgegeben?
Stefan
MiKTeX: 2.7
SharedSetup: unknown
BinDir: /usr/local/bin
OS: Linux 2.6.24-19-generic #1 SMP Fri Jul 11 23:41:49 UTC 2008 i686
Root0: /home/katrin/.miktex
Root1: /home/katrin/.texmf-var
Root2: /home/katrin/texmf
Root3: /etc/texmf
Root4: /var/lib/texmf
Root5: /usr/share/texmf
Root6: /usr/share/texmf-texlive
Install: /home/katrin/.miktex
UserData: /home/katrin/.miktex
UserConfig: /home/katrin/.miktex
fndb0: /home/katrin/.miktex/miktex/config/79e690d4abe399535b7f1994881b7d14.fndb
fndb1: /home/katrin/.miktex/miktex/config/4617d9e35723197351dd15afd160ca1f.fndb
fndb2: /home/katrin/.miktex/miktex/config/9517b270284daebdb2b43e7f55a6ecc8.fndb
fndb3: /home/katrin/.miktex/miktex/config/76f9d14d3870a3ca17c588db81902d3d.fndb
fndb4: /home/katrin/.miktex/miktex/config/49ce9fb6981e7315a79363280fdfe510.fndb
fndb5: /home/katrin/.miktex/miktex/config/0638a6bb4aac17125bf8bd1aa29dc0c8.fndb
fndb6: /home/katrin/.miktex/miktex/config/3187e2337ee4b2115b66aeca116ccb56.fndb
fndbmpm: /home/katrin/.miktex/miktex/config/8dad57fd7b2d57f2b2a261054afb6a9f.fndb
okay, im versteckten .miktex-Ordner ist tatsächlich das multirow-Paket und auch das vorher bereits installierte koma-skript vorhanden. Wie kriege ich es denn hin, dass es dahin installiert wird, wohin ich es haben will (wenn nicht mit --install-root)?
ja, da liegen die sachen. wie ändere ich das?
Du könntest die Umgebungsvariable TEXMFHOME daraufhin ändern. Den aktuellen Wert kannst Du anzeigen mit echo $TEXMFHOME oder
Ändern kannst Du sie mit:Code:kpsewhich --var-value=TEXMFHOME
Danach könntest Du erneut kpsewhich multirow.sty testen.Code:export TEXMFHOME='/home/katrin/.miktex'
Stefan
DANKE!!!
Soweit hat es funktioniert.
Ist das aber so gut, wenn man diesen Pfad auf ein verstecktes Verzeichnis lenkt?
Das ist ja interessant! Ähm, weißt Du, Stefan, nicht zufällig, wie man diese ganzen Root-Pfade ändert, die mpm da hat?
Jedenfalls vielen Dank für den Tip, bei mir waren sie, bis auf den entscheidenden Pfad zu TEXMFHOME, alle falsch und spätestens bei der Installation von texlive 2008 wär' das in die Hose gegangen.
Mh, notfalls deinstalliere ich mpm.
Gruß,
Alexander
Hm... also, wenn ich LaTex jetzt aus dem Terminal aufrufe, greift er korrekt auf die Pakete zu. Aber offensichtlich hat Kile damit immer noch Probleme. Wie kann ich das beheben?
Auch nach texhash mag Kile die neuen Pakete noch nicht. Hab auch neu gestartet (manchmal bewirkt das ja Wunder) und auch die ganzen aux- (etc.) Dateien gelöscht (manchmal gabs daber früher Probleme). Leider alles ohne Erfolg.
Kann das an dem versteckten Ordner liegen?
Obigen Befehl
füge der Datei ~/.profile an, damit die Variable in jeder neuen Session gesetzt wird (oder in die ~/.bashrc). ~/.profile ist auch eine versteckte Datei, sie wird bei jedem Login eingelesen.Code:export TEXMFHOME='/home/katrin/.miktex'
Dann logge Dich aus und wieder ein. Ggf. überprüfe mit
ob TEXMFHOME auch auf das .miktex-Verzeichnis zeigt.Code:kpsewhich --var-value=TEXMFHOME
Wenn TEXMFHOME korrekt ist und Kile immer noch nicht übersetzt, dann poste hier einmal das beim Kile-Lauf entstandene logfile.
Stefan
Es funktioniert!!!!! DANKE!!!!
Hallo,
auch wenn das nicht ganz hier her passt, die Diskussion ist so schön aktuell.
Ich durfte/musste mein system neu installieren. DAVOR war Kile 2.0 in deutsch, jetzt ist es in Englisch. Ich weiss noch das ich das Problem schon einmal hatte, allerdings beim reinen update von Kile 1.8 auf 1.9. Wie kann ich das 2.0er auf Deutsch stellen?
Danke!
Hallo,
installiere das Paket kile-i18n-de über Synaptic oder mit apt-get.
Viele Grüße,
Stefan