[gelöst] Texlive und Kile

Du hast Probleme mit Deinem eMail-Programm, Webbrowser oder Textprogramm? Dein Lieblingsprogramm streikt?
Antworten
EinSteiGer
Beiträge: 91
Registriert: 10.12.2016 18:07:39

[gelöst] Texlive und Kile

Beitrag von EinSteiGer » 22.06.2018 16:50:23

Wertes Forum,

ich weiß nicht, ob ich hier überhaupt richitg bin mit meinem Anliegen:

Ich versuche Texlive (nicht aus den Debian-Repos, sondern mit dem Versuch es so zu installieren, wie hier angegeben: https://www.tug.org/texlive/doc/texlive ... ive-de.pdf) mit Kile (aus dem Repo) zu verwenden.

Hintergrund ist, dass ich gerne LuaLaTeX mit relativ neuen Dateien nutzen möchte.

Zur TeX-Version:

Code: Alles auswählen

$ tex --version
TeX 3.14159265 (TeX Live 2016/Debian)
kpathsea version 6.2.2
Copyright 2016 D.E. Knuth.
...
Sollte da nach dem, was ich installiert habe, nicht eine 2018er Version stehen?

Die Log der 2018er Installation sieht so aus: NoPaste-Eintrag40365

Darüber hinaus bekomme ich für tlmgr folgende Fehlermeldung:

Code: Alles auswählen

$ tlmgr update -all
(running on Debian, switching to user mode!)
Cannot determine type of tlpdb from /home/nutzer/texmf!
cannot setup TLPDB in /home/nutzer/texmf at /usr/bin/tlmgr line 5713.
Ein paar Informationen zu meinem System:
-- Debian GNU/Linux 9.4 (stretch)
-- kile 4:2.1.3-4+b1 amd64 KDE Integrated LaTeX Environment (<- dpkg -l | grep kile)

Hat jemand eine Idee, was ich da machen könnte bzw. falsch gemacht haben könnte?

Viele Grüße
Einsteiger
Zuletzt geändert von EinSteiGer am 26.06.2018 09:15:53, insgesamt 1-mal geändert.

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Texlive und Kile

Beitrag von smutbert » 22.06.2018 17:46:17

Offensichtlich führst du das aus den stretch-Repo installierte tex aus. (Hast du texlive auch mittels apt installiert?)

Wenn das der Fall ist, was sagt denn deine PATH-Variable?
Hast du Abschnitt 3.16 besonders 3.16.3 oder 3.16.4 in der Anleitung, die du verlinkt hast, gelesen?

EinSteiGer
Beiträge: 91
Registriert: 10.12.2016 18:07:39

Re: Texlive und Kile

Beitrag von EinSteiGer » 22.06.2018 18:37:23

Werter smutbert,

ich habe 3.16.3 (aus der oben verlinkten Anleitung) versucht zu befolgen und die folgenden Zeilen im Terminal ausgeführt:

Code: Alles auswählen

PATH=/usr/local/texlive/2018/bin/i386-linux:$PATH; export PATH
MANPATH=/usr/local/texlive/2018/texmf-dist/doc/man:$MANPATH; export MANPATH
INFOPATH=/usr/local/texlive/2018/texmf-dist/doc/info:$INFOPATH; export INFOPATH
Denn ich bin davon ausgegangen, dass für Debian folgendes aus der Anleitung zutrifft und es eines der
Systeme mit einer Bourne-kompatiblen Shell wie bash ist
und bash ist auch auf dem Rechner: GNU bash, Version 4.4.12(1)-release (x86_64-pc-linux-gnu).

Bei 3.16.4 meinte ich, das würde nicht zutreffen, da ich nichts global setzen will. Aber ich habe auch nicht ganz verstanden, was damit gemeint ist und kenne mich auch mit der der grundlegenden Systemadministration nicht aus.

Texlive hatte ich mittels apt-get installiert, bevor ich es deinstalliert habe. Aber evtl. habe ich es im Rahmen der kile-Installation über apt-get ausversehen erneut installiert. Woran kann ich das sehen?

Viele Grüße

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Texlive und Kile

Beitrag von smutbert » 22.06.2018 19:27:38

Du könntest die installierten Pakete mit texlive im Namen auflisten

Code: Alles auswählen

$ dpkg -l '*texlive*' | grep "^ii"
Das mit den drei Variablen, die gesetzt werden ist eigentlich ganz einfach:
Die Shell (und manch andere Software) sucht nur in den Pfaden, die in PATH aufgelistet sind nach ausführbaren Programmen und das Verzeichnis in das die texlive-Installationsroutine die ausführbaren Programme kopiert hat, ist da vermutlich nicht dabei. (Für MANPATH und INFOPATH gilt dasselbe, nur dass das nicht die ausführbaren Programme sondern die Dokumentation, also in man- und Info-Pages betrifft.)

Der Befehl

Code: Alles auswählen

PATH=/usr/local/texlive/2018/bin/i386-linux:$PATH; export PATH
fügt nun das Verzeichnis mit den texlive-Programmen zum Suchpfad hinzu, aber solange du den Befehl nirgendwo verewigst, gilt das nur für die Shell, die gerade läuft, zum Beispiel also die bash in diesem einen Terminalfenster und sobald du das Fenster schließt, ist alles wieder beim alten und bei anders gestarteten Programmen, wie zB einem über das Menü gestarteten kile sowieso.

Außerdem könntest du prüfen ob das Verzeichnis überhaupt stimmt und es nicht zum Beispiel »/usr/local/texlive/2018/bin/amd64-linux« oder so ähnlich lauten müsste.

Versuch einmal gezielt das neu installierte tex zu starten

Code: Alles auswählen

$ /usr/local/texlive/2018/bin/i386-linux/tex
Wenn das funktioniert könntest du kile zumindest als vorübergehende Lösung so starten (ich hoffe dass das mit kile so funktioniert)

Code: Alles auswählen

$ PATH=/usr/local/texlive/2018/bin/i386-linux:$PATH kile
und als Dauerlösung müsstest du den Pfad in eine geeignete Konfigurationsdatei eintragen - das kann, muss aber nicht die »~/.profile« (benutzerspezifisch) oder »/etc/profile« (systemweit) sein. Ob du das nun systemweit (3.16.4) oder nur für deinen Benutzer (3.16.3) machst, spielt nur eine Rolle, wenn mehrere Benutzer auf deinem PC arbeiten.
Zuletzt geändert von smutbert am 22.06.2018 19:28:31, insgesamt 1-mal geändert.

eggy
Beiträge: 3331
Registriert: 10.05.2008 11:23:50

Re: Texlive und Kile

Beitrag von eggy » 22.06.2018 19:28:07

EinSteiGer hat geschrieben: ↑ zum Beitrag ↑
22.06.2018 18:37:23
ich habe 3.16.3 (aus der oben verlinkten Anleitung) versucht zu befolgen und die folgenden Zeilen im Terminal ausgeführt:

Code: Alles auswählen

PATH=/usr/local/texlive/2018/bin/i386-linux:$PATH; export PATH
MANPATH=/usr/local/texlive/2018/texmf-dist/doc/man:$MANPATH; export MANPATH
INFOPATH=/usr/local/texlive/2018/texmf-dist/doc/info:$INFOPATH; export INFOPATH
Hast Du Deine Programme dann auch in diesem Terminal gestartet? Oder hast Du sie anders geöffnet? Die Variablen gelten so nämlich nur für Dinge die dort aufgemacht werden. Ob die Werte gelten, kannst Du einfach nachvollziehen, indem du "echo $MANPATH" ausführst, zuerst in dem Terminal bevor Du die Zeilen ausführst, dann einmal danach und dann einmal in einem neuen Terminal.

Führst Du die Zeilen im Terminal aus und startest z.B. Kile dann aber übers Menü vom Windowmanger gelten für ihn die Zuweisungen nicht.

EinSteiGer
Beiträge: 91
Registriert: 10.12.2016 18:07:39

Re: Texlive und Kile

Beitrag von EinSteiGer » 22.06.2018 20:17:57

Wertes Froum,

vielen Dank für Eure Antworten.

Ich habe ein paar der Dinge gleich ausprobiert:

Code: Alles auswählen

$ /usr/local/texlive/2018/bin/x86_64-linux/tex                                                                                                   
This is TeX, Version 3.14159265 (TeX Live 2018) (preloaded format=tex)                                                                                                             
**
=> Die 2018er Installation ist da.

Dann habe ich noch einmal korigiert und folgenden PATH gesetzt:

Code: Alles auswählen

PATH=/usr/local/texlive/2018/bin/x86_64-linux:$PATH; export PATH
(statt i386)

Bei dpkg bekomme ioch auch die alte (Debian) Installation:

Code: Alles auswählen

dpkg -l '*texlive*' | grep "^ii"
ii  texlive                       2016.20170123-5            all          TeX Live: A decent selection of the TeX Live packages
ii  texlive-base                  2016.20170123-5            all          TeX Live: Essential programs and files
ii  texlive-binaries              2016.20160513.41080.dfsg-2 amd64        Binaries for TeX Live
ii  texlive-extra-utils           2016.20170123-5            all          TeX Live: TeX auxiliary programs
ii  texlive-font-utils            2016.20170123-5            all          TeX Live: Graphics and font utilities
ii  texlive-fonts-recommended     2016.20170123-5            all          TeX Live: Recommended fonts
ii  texlive-fonts-recommended-doc 2016.20170123-5            all          TeX Live: Documentation files for texlive-fonts-recommended
ii  texlive-generic-recommended   2016.20170123-5            all          TeX Live: Generic recommended packages
ii  texlive-latex-base            2016.20170123-5            all          TeX Live: LaTeX fundamental packages
ii  texlive-latex-base-doc        2016.20170123-5            all          TeX Live: Documentation files for texlive-latex-base
ii  texlive-latex-recommended     2016.20170123-5            all          TeX Live: LaTeX recommended packages
ii  texlive-latex-recommended-doc 2016.20170123-5            all          TeX Live: Documentation files for texlive-latex-recommended
ii  texlive-pictures              2016.20170123-5            all          TeX Live: Graphics, pictures, diagrams
ii  texlive-pictures-doc          2016.20170123-5            all          TeX Live: Documentation files for texlive-pictures
ii  texlive-pstricks              2016.20170123-5            all          TeX Live: PSTricks
ii  texlive-pstricks-doc          2016.20170123-5            all          TeX Live: Documentation files for texlive-pstricks
Leider hat

Code: Alles auswählen

PATH=/usr/local/texlive/2018/bin/x86_64-linux:$PATH kile
nicht geholfen, denn kile verwendet immer noch das alte TeX.

Daher die Frage: Was könnte ich noch ändern müssen (bevor ich es in die /etc/profile/.profile eintrage? (das habe ich bisher noch nicht gemacht.)

Ja, eggy, ich habe das alles übers Terminal gemacht, jedoch kile dann über die KDE-Oberfläche gestartet. Was kann ich tun, damit das auch über die Oberfläche funktioniert?

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Texlive und Kile

Beitrag von smutbert » 22.06.2018 21:22:24

EinSteiGer hat geschrieben: ↑ zum Beitrag ↑
22.06.2018 20:17:57
Ja, eggy, ich habe das alles übers Terminal gemacht, jedoch kile dann über die KDE-Oberfläche gestartet. Was kann ich tun, damit das auch über die Oberfläche funktioniert?
Bin zwar nicht eggy, aber du hast zwei Möglichkeiten - entweder PATH generell setzen, dass es das gewünschte texlive im Pfad vorkommt oder nur den Aufruf von kile dahingehend ändern.

Davor gibt es aber noch das Problem, dass das

Code: Alles auswählen

PATH=/usr/local/texlive/2018/bin/x86_64-linux:$PATH kile
nicht wie gewünscht funktioniert hat, denn damit macht man dasselbe nur eben nur für diesen einen Aufruf von kile. Ich hab gerade testweise kile installiert und mir die Einstellungen angeshen - von Haus aus sind dort die Befehle für tex, latex, u.s.w. ohne Pfad eingetragen, das heißt eigentlich sollte es so funktionieren.

Meine vorläufig einzige Idee, zum Testen wäre zuerst alle möglicherweise noch laufenden kile-Instanzen zu beenden und dann mit der exportierten PATH-Variable kile zu starten:

Code: Alles auswählen

$ killall kile
$ PATH=/usr/local/texlive/2018/bin/x86_64-linux:$PATH
$ export PATH
$ kile

EinSteiGer
Beiträge: 91
Registriert: 10.12.2016 18:07:39

Re: Texlive und Kile

Beitrag von EinSteiGer » 22.06.2018 21:37:13

Danke, smutbert,

das (möglicherweise noch laufenden kile-Instanzen zu beenden und dann mit der exportierten PATH-Variable kile zu starten) hat soweit funktioniert.
Jedoch wenn ich kile über die graphische KDE-Oberfläche aufrufe, dann geht das nicht mehr (d.h. dann nutzt er wieder die alte Variante).

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Texlive und Kile

Beitrag von smutbert » 22.06.2018 22:58:35

Ja, das ist soweit klar.

Wenn du generell das neue texlive verwenden willst, kannst du PATH dort setzen wo es ursprünglich gesetzt wird - systemweit in »/etc/profile«. Dort sollte bereits etwas wie

Code: Alles auswählen

if [ "`id -u`" -eq 0 ]; then
  PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
else
  PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games"
fi
export PATH
drin stehen (der else-Zweig ist für normale Benutzer, der then-Zweig davor für root). Du könntest also

Code: Alles auswählen

if [ "`id -u`" -eq 0 ]; then
  PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
else
  PATH="/usr/local/texlive/2018/bin/x86_64-linux:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games"
fi
export PATH
daraus machen.

Die andere Variante wäre nur kile anzupassen. Dazu legst du eine Kopie des .desktop-Starters in deinem Homeverzeichnis an

Code: Alles auswählen

$ cp /usr/share/applications/kde4/kile.desktop ~/.local/share/applications
und passt darin die Exec-Zeile so an, dass sie statt »Exec=kile %U« so aussieht

Code: Alles auswählen

Exec=sh -c "PATH=/usr/local/texlive/2018/bin/x86_64-linux:$PATH kile %U"
(Ehrlich gesagt bin ich mir aber bei keiner der beiden Varianten sicher, dass sie genau so verlässlich funktioniert.)

EinSteiGer
Beiträge: 91
Registriert: 10.12.2016 18:07:39

Re: Texlive und Kile

Beitrag von EinSteiGer » 23.06.2018 08:27:33

Besten Dank, smutbert,

mit nano habe ich die Änderungen in die Datei etc/profile eingetragen und das hat funktioniert.

Nun habe ich nur noch eine Frage:
Gibt es eine Möglichkeit das 2016 Texlive los zu werden ohne das 2018 zu beschädigen?

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Texlive und Kile

Beitrag von smutbert » 23.06.2018 10:57:37

texlive 2018, das du am Paketsystem vorbei installiert hast, sollte keinesfalls unter der Deinstallation der Debian-texlive-Pakete leiden.

Wenn schon gibt es mit anderen Programmen bzw, Pakete Probleme, die von texlive abhängen, aber natürlich nichts von der am Paketsystem vorbei installierten texlive-Version wissen. wie zum Beispiel kile.
kile hat texlive aber nur in den recommends stehen, soweit ich das gesehen habe. Du könntest also einfach einmal ausprobieren was alles deinstalliert würde…

Code: Alles auswählen

# apt -s purge $(dpkg -l '*texlive*' | grep "^ii" | cut -f 3 -d " ")
wenn du alle Pakete mit texlive im Namen deinstallierst.

Wenn dabei nichts deinstalliert wird, was du vermissen würdest, dann kannst du denselben Befehl ohne Simulation (Option -s) ausführen und die Pakete tatsächlich deinstallieren.

EinSteiGer
Beiträge: 91
Registriert: 10.12.2016 18:07:39

Re: Texlive und Kile

Beitrag von EinSteiGer » 25.06.2018 17:30:06

Besten Dank für die Antwort, smutbert,

wenn ich den Test eingebe, dann komme ich zu folgendem Ergebnis:
NoPaste-Eintrag40367

Dabei taucht leider kile auch mit auf.

Gibt es alternativen?

Viele Grüße vom Einsteiger

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Texlive und Kile

Beitrag von smutbert » 25.06.2018 18:17:15

Ja, da habe ich eine Abhängigkeit übersehen und zwar hängt kile direkt von Debiantexlive-latex-base ab. Du kannst also entweder die texlive-Pakete behalten oder ein dummy-Paket erstellen, das so tut als wäre es texlive-latex-base bzw. würde es texlive-latex-base zur Verfügung stellen.

dummy-Pakete kannst du mit Debianequivs erstellen. Zuerst erstellst du eine Textdatei, zB »texlive-dummy« mit dem Inhalt

Code: Alles auswählen

Section: misc
Priority: optional
Standards-Version: 3.9.2

Package: texlive-dummy
Provides: texlive-latex-base
Architecture: all

Description: Dummy package whichs only purpose is to provide texlive-latex-base.
und lässt equivs danach das entsprechende Paket bauen

Code: Alles auswählen

$ equivs-build texlive-dummy
Das Ergebnis sollte ein so gut wie leeres Paket sein, das lediglich dazu da ist die Abhängigkeit von texlive-latex-base zu erfüllen. Nachdem dieses Paket also installiert hast

Code: Alles auswählen

# dpkg -i texlive-dummy_1.0_all.deb
sollte die Ausgabe der simulierten texlive-Deinstallation etwas freundlicher aussehen – du musst allerdings natürlich das eben installierte Paket von der Deinstallation ausnehmen

Code: Alles auswählen

# apt -s purge $(dpkg -l '*texlive*' | grep "^ii" | cut -f 3 -d " ") | grep -v texlive-dummy
Sollte ich noch weitere Abhängigkeiten übersehen haben, kannst du die entsprechenden Pakete ebenfalls in das Provides-Feld der Textdatei eintragen und mit equivs eine neue Version des dummy-Pakets bauen.

EinSteiGer
Beiträge: 91
Registriert: 10.12.2016 18:07:39

Re: Texlive und Kile

Beitrag von EinSteiGer » 26.06.2018 09:14:47

Besten Dank! Da hab ich viel gelernt. Ich werde das alte TeX wohl erst noch eine Zeit drauflassen und wenn ich den Platz brauche das mot dem Dummy probieren.

Antworten