Hallo,
ich möchte eine über 10 Jahre alte Software zum Laufen bekommen auf einem aktuellen bullseye. Die Software basiert auf python 2.6, welches nicht mehr im repository ist. Allerdings bringt die software wohl alle python bins und libs mit. Leider kenne ich mich mit python nicht aus.
Versuche ich sie zu starten, bekomme ich die Fehlermeldung:
/usr/share/tuxdroid/py4tux/bin/python2.6 /usr/share/tuxdroid/tuxhttpserver/tuxhttpserver.py
[..]
ImportError: libpython2.6.so.1.0: cannot open shared object file: No such file or directory
Vorhanden ist allerdings eine libpython2.6.a:
`--> find -iname '*libpython2.6*'
./tuxdroid/py4tux/lib/python2.6/config/libpython2.6.a
./tuxdroid/py4tux/lib/libpython2.6.a
Ist das die nötige lib? Sie endet ja nicht auf so (shared object). Wenn sie das ist, wie muss ich sie angeben, damit sie angenommen wird. Geht das über Umgebungsvariablen LD_LIBRARY_PATH= oder LD_PRELOAD=?
Danke im Voraus,
Kermit
python 2.6 binaries - shared object
Re: python 2.6 binaries - shared object
Evtl. findest Du im Archiv die richtige Version:
https://snapshot.debian.org/binary/python2.6/
Ob sich so ein altes Paket aber noch installieren läßt, glaube ich eher nicht.
Du könntest aber in das Paket schauen und die Lib manuell an die richtige Stelle kopieren.
Ist zwar nicht die sauberste Lösung, aber wenn es funktioniert. Mußt Dir nur merken, was Du am Paketmanager vorbei gemacht hast...
https://snapshot.debian.org/binary/python2.6/
Ob sich so ein altes Paket aber noch installieren läßt, glaube ich eher nicht.
Du könntest aber in das Paket schauen und die Lib manuell an die richtige Stelle kopieren.
Ist zwar nicht die sauberste Lösung, aber wenn es funktioniert. Mußt Dir nur merken, was Du am Paketmanager vorbei gemacht hast...
Re: python 2.6 binaries - shared object
Nein.
Die sauberste Möglichkeit, deine antike Software zum Laufen zu bekommen, wäre, ihr eine ebenso antike Umgebung in einer VM oder einem Container zur Verfügung zu stellen. Dadurch lässt sie sich auch etwas isolieren, was bei so altem Kram in der Regel keine schlechte Idee ist.
Re: python 2.6 binaries - shared object
Bullseye bringt noch immer Python 2 mit, nur nicht mehr als Standard. Python unterscheidet grob zwischen v2 und v3, Es spielt also keine Rolle, dass du 2.6 benötigst und 2.7 angeboten wird. Ergo - kein Snapshot, keine VM - einfach aus den Paketquellen installieren...Kermit24 hat geschrieben:26.12.2022 18:21:29Hallo,
ich möchte eine über 10 Jahre alte Software zum Laufen bekommen auf einem aktuellen bullseye. Die Software basiert auf python 2.6, welches nicht mehr im repository ist. Allerdings bringt die software wohl alle python bins und libs mit. Leider kenne ich mich mit python nicht aus.
Re: python 2.6 binaries - shared object
Python 2.7 bringt aber libpython2.6.so nicht mit, gegen welches das mitgebrachte Python der antiken Software des TE gelinkt zu sein scheint. Möglicherweise funktioniert’s, einen Link zu erstellen, der auf libpython2.7.so zeigt – drauf wetten würde ich allerdings nicht direkt.tobo hat geschrieben:27.12.2022 00:14:29Es spielt also keine Rolle, dass du 2.6 benötigst und 2.7 angeboten wird.
Vielleicht lässt sich die Software auch dazu bewegen, das systemweite Python zu nutzen – in dem Fall würde es vermutlich tatsächlich funktionieren.
Re: python 2.6 binaries - shared object
Kommt drauf an ob das Programm als .py oder .pyc vorliegt. Im letzteren Fall wird es vermutlich nicht gehen, da der bytecode meines Wissens nicht kompatibel ist.niemand hat geschrieben:27.12.2022 07:54:31Vielleicht lässt sich die Software auch dazu bewegen, das systemweite Python zu nutzen – in dem Fall würde es vermutlich tatsächlich funktionieren.
Aber ich versteh nicht ganz wieso das Ding seinen interpreter mitbringt aber nicht die libraries... Kann man das ganze als Paket irgendwo runterladen, um sich mal ein Bild zu machen?