Seite 1 von 1

Module installieren: pip, zlib usw.

Verfasst: Sonntag 23. September 2018, 08:50
von Octeon
Hallo zusammen,

eigentlich wollte ich nur dieses Modul nutzen:
https://pypi.org/project/aprs/

Also folgendes unter Linux Mint eingegeben:
pip install aprs
Ergebnis:
bash: /usr/local/bin/pip: /usr/bin/python: Defekter Interpreter: Datei oder Verzeichnis nicht gefunden

Also weiter gesucht. Dann:
python -m ensurepip --default-pip
Ergebnis:
Traceback (most recent call last):
File "/usr/local/lib/python3.7/runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "/usr/local/lib/python3.7/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/usr/local/lib/python3.7/ensurepip/__main__.py", line 5, in <module>
sys.exit(ensurepip._main())
File "/usr/local/lib/python3.7/ensurepip/__init__.py", line 204, in _main
default_pip=args.default_pip,
File "/usr/local/lib/python3.7/ensurepip/__init__.py", line 117, in _bootstrap
return _run_pip(args + [p[0] for p in _PROJECTS], additional_paths)
File "/usr/local/lib/python3.7/ensurepip/__init__.py", line 27, in _run_pip
import pip._internal
zipimport.ZipImportError: can't decompress data; zlib not available

Ok, dann weiter nach zlib gesucht und folgendes ausgeführt:
sudo apt-get install zlib1g-dev
Ergebnis: scheint ok zu sein.

Also noch mal:
python -m ensurepip --default-pip
Ergebnis:
[..]
zipimport.ZipImportError: can't decompress data; zlib not available

Oder vielleicht
python3 -m pip install aprs
Ergebnis:
/usr/local/bin/python: No module named pip

Wie gesagt, eigentlich wollte ich nur
import aprs
machen...

Was mache ich falsch? Warum enthält das "aprs-7.0.0.tar.gz" nicht einfach ein "aprs.py"...?

Für Hinweise wäre ich sehr dankbar.

Gruß
Max

Re: Module installieren: pip, zlib usw.

Verfasst: Sonntag 23. September 2018, 09:04
von __deets__
Das sieht nach einer defekten oder zumindest massiv eingeschränktenPython Installation aus. Hast du 3.7 selber compiliert?

Re: Module installieren: pip, zlib usw.

Verfasst: Sonntag 23. September 2018, 12:46
von Octeon
Wenn ich mich recht erinnere: ja!

Wie kann ich denn die vorhandene Python3.7-Installation "reparieren"?

Re: Module installieren: pip, zlib usw.

Verfasst: Sonntag 23. September 2018, 12:52
von Sirius3
Wenn Du Python selbst compilieren willst, dann mußt Du eben dafür sorgen, dass alle Abhängigkeiten erfüllt sind.

Re: Module installieren: pip, zlib usw.

Verfasst: Sonntag 23. September 2018, 13:04
von __deets__
Das nachtraegliche Installieren von libz-dev hilft halt nicht. Dann koennen nur Programme die *in der Zukunft* kompiliert werden Unterztuetzung dafuer einbauen. Wenn du also auf deinem selbstgebauten Python bestehst, musst du es nochmal bauen. Und ein bisschen genauer auf die Ausgaben achten, was da so alles nicht gefunden wurde & darum nicht mitgebaut wird. Da fallen mir noch ne Menge andere Dinge wie zb tkinter etc ein, die du ggf. nicht hast.

Re: Module installieren: pip, zlib usw.

Verfasst: Sonntag 23. September 2018, 13:21
von __blackjack__
Was auch noch zu Problemen führen kann ist das `python` bei Dir anscheinend jetzt Python 3 startet. Das sollte eigentlich immer Python 2 sein. Das `/usr/local/bin/python` würde ich löschen.

Re: Module installieren: pip, zlib usw.

Verfasst: Sonntag 23. September 2018, 14:08
von narpfel
@__blackjack__: Unter Arch Linux und Derivaten ist `python` schon seit etlichen Jahren Python 3. Aber unter Arch muss man normalerweise auch nichts selbst kompilieren, wenn man eine aktuelle Version haben möchte. ;-)

Re: Module installieren: pip, zlib usw.

Verfasst: Sonntag 23. September 2018, 14:36
von snafu
Wobei apt-get eher nach nem Debian-basierten System klingt und da ist python AFAIK Python 2.7.

Re: Module installieren: pip, zlib usw.

Verfasst: Sonntag 23. September 2018, 15:35
von __blackjack__
@narpfel: Dann ist Arch IMHO ziemlich kaputt, denn das `python` ohne irgendwas immer Python 2 bedeutet, ist etwas was die Python-Entwickler festgelegt haben, damit die selben Probleme nicht bei jedem kommenden Major-Versions-Wechsel wieder aufkommen. `python` ist Python 2, `python3` ist Python 3, `python4` wird Python 4, und so weiter.

Re: Module installieren: pip, zlib usw.

Verfasst: Sonntag 23. September 2018, 17:04
von Tholo
Ich hab grad mal nachgeschaut. Das stimmt bei Arch is das so! Der erste Ausdruck is mit Tab

Code: Alles auswählen

[tholo@archer ~]$ py
pycharm-eap        python             python3            python3-config
pydoc              python2            python3.7          python-config
pydoc2             python2.7          python3.7-config   pyvenv
pydoc3             python2.7-config   python3.7m         pyvenv-3.7
pydoc3.7           python2-config     python3.7m-config  
[tholo@archer ~]$ python --version
Python 3.7.0
[tholo@archer ~]$ python2 --version
Python 2.7.15
[tholo@archer ~]$ python2 --version
Python 2.7.15
[tholo@archer ~]$ python2.7 --version
Python 2.7.15
Da ich eh nur mit 3.7 arbeite ist mir das noch nicht aufgefallen. Finde das also nicht verwerflich ;)

Re: Module installieren: pip, zlib usw.

Verfasst: Sonntag 23. September 2018, 17:26
von __blackjack__
@Tholo: Das Problem ist halt das Python-Programme die in der ersten Zeile ``#!/usr/bin/env python`` zu stehen haben unter Windows, Mac, und allen Nicht-Arch-Derivaten funktionieren, nur bei Dir halt nicht. Und umgekehrt musst Du darauf achten das bei Deinen Python 3.x-Programmen nicht so zu machen, denn die werden so dann nur unter Arch-Laufen laufen und überall anders auf die Nase fallen.

Und beim OP ist das zusätzliche Problem das Pakete die er über die Paketverwaltung installiert, erwarten das ``python`` ein Python 2.7 ist. Wenn man das ändert, kann man sich also durchaus das System oder zumindest einzelne Programme/Pakete kaputt machen, weil die mit dem Python 3 unter ``/usr/local/bin/python`` nicht funktionieren werden.

Re: Module installieren: pip, zlib usw.

Verfasst: Sonntag 23. September 2018, 19:45
von Tholo
Ohh an die erste Zeile hab ich garnicht gedacht. Da hast du natürlich recht. Ich werde da genauer drauf achten.
Ich hab mal ein Ticket geschrieben und auf Pep 394 verwiesen.
Da steht das wirklich explizit drin.

Aber wie mir scheint, interessiert das die Arch Devs nicht die verwiesen auf Pep404
https://bugs.archlinux.org/task/23910