Hallo zusammen, hat schon einmal jemand sirok-meter https://sigrok.org/wiki/Sigrok-meter zum Laufen gebracht? Ich habe die libsigrok incl. Python-Bindings kompilieren koennen, zumindest der Ausgaben des make nach. Leider sagt Sigrok-Meter beim Start, dass das Modul sigrok.core nicht geladen werden konnte. Gibt es einen Trick, wie ich sigrok-meter mitteilen kann, dass es die Files aus ~/libsigrok verwenden soll? Matthias
Leider nein, selbes Problem. Auch mit PYTHON_PATH nicht. Gibt es fuer python sowas wie
1 | ldd |
fuer dynamisch gelinkte native Programme? Matthias
Hi Matthias, wie lautet denn die genaue Fehlermeldung ? Hänge doch mal die Ausgabe mit dran. Gruß Ingo
1 | Unable to use the sigrok Python bindings: |
2 | No module named sigrok.core. |
Und das passiert hier in sigrok-meter
1 | try: |
2 | import sigrok.core as sr |
3 | except Exception as e: |
4 | QtGui.QMessageBox.critical(None, 'Error starting sigrok-meter', |
5 | 'Unable to use the sigrok Python bindings:\n{}.'.format(e)) |
6 | sys.exit(1) |
Matthias
>Leider nein, selbes Problem. >Auch mit PYTHON_PATH nicht. Heisst ja auch PYTHONPATH
Dann hast du kein: sudo make install danach gemacht? Ich habe es unter Ubuntu mal probiert. Durch installieren einiger Pakete läuft das Programm. z.B. sudo apt-get install libsigrok-dev Das Programm selbst sagt: ldd ./sigrok-meter Das Programm ist nicht dynamisch gelinkt Welches Linux hast du?
Am Einfachsten wird wohl sein, Du machst ein "make install", das kannst Du ja auch z.B nach /tmp legen, dann ist's nach dem Reboot wieder weg. Falls nicht bekannt: Beim $ configure kannst Du einen Prefix definieren: $ configure --prefix=/tmp/mein-sigrok-dir Dann landet alles da drunter. (ich hab's probiert, den PYTHONPATH in das libsigrok Source Dir zeigen zu lassen (--> ../bindings/python), dann verschwindet die FM bez. sigrok.core, dafür wird wegen fehlendem _classes gemeckert...)
pegel schrieb: > Dann hast du kein: > > sudo make install > > danach gemacht? > Ich hatte den Eindruck, dass er das vielleicht vermeiden wollte. > Ich habe es unter Ubuntu mal probiert. > Durch installieren einiger Pakete läuft das Programm. > > z.B. > sudo apt-get install libsigrok-dev > Das sind aber relative alte Versionen. > Das Programm selbst sagt: > > ldd ./sigrok-meter > Das Programm ist nicht dynamisch gelinkt > > Welches Linux hast du?
priot schrieb: > Das sind aber relative alte Versionen. Wie das meist so ist. Aber das Programm läuft.
Ja, hast recht. Da mein Plattenplatz zur Neige geht, denke ich schon seit ein paar Tagen darüber nach mal wieder ein richtiges LFS aufzusetzen.
Wenn in diesen Fall python die eigen lib schon eher kennen muss, hilft vielleicht ein: sudo ldconfig -n ~/libsigrok
pegel schrieb: > Das Programm selbst sagt: > > ldd ./sigrok-meter > Das Programm ist nicht dynamisch gelinkt Ja, klar ist ja eher ein Interpreter-Script als ein Programm. > > Welches Linux hast du? Debian Stretch. priot schrieb: > $ configure --prefix=/tmp/mein-sigrok-dir > > Dann landet alles da drunter. > > (ich hab's probiert, den PYTHONPATH in das libsigrok Source Dir zeigen > zu lassen (--> ../bindings/python), dann verschwindet die FM bez. > sigrok.core, dafür wird wegen fehlendem _classes gemeckert...) Ja, das habe ich gemacht, make install hat sich dann beschwert:
1 | You are attempting to install a package to a directory that is not |
2 | on PYTHONPATH and which Python does not read ".pth" files from. The |
3 | installation directory you specified (via --install-dir, --prefix, or |
4 | the distutils default setting) was: |
5 | |
6 | /tmp/mein-sigrok-dir/lib/python2.7/site-packages/ |
7 | |
8 | and your PYTHONPATH environment variable currently contains: |
9 | |
10 | '' |
Das habe ich durch
1 | PYTHONPATH=/tmp/mein-sigrok-dir/lib/python2.7/site-packages/ make install |
geloest.
1 | PYTHONPATH=/tmp/mein-sigrok-dir/lib/python2.7/site-packages/ ./sigrok-meter |
erzeugt jetzt die schon genannte Meldung:
1 | Unable to use the sigrok Python bindings: |
2 | No module named _classes. |
Den Modul sigrok.core findet er also, aber dann. Habe gerade noch einmal ein clean, configure ohne Optionen und make install (als root) gemacht, wieder
1 | Unable to use the sigrok Python bindings: |
2 | No module named _classes. |
Hmmm, was mache ich da falsch? Matthias
Mein Problem ist, dass ich mit Python noch gar nicht beschaeftigt habe. Da ist eben doch Vieles sehr anders als bei kompilierten C-Programmen. Dann wird es jetzt Zeit. Matthias
>Hmmm, was mache ich da falsch?
Dann musst Du evtl noch PKG_CONFIG_PATH setzen. Ich mache das so:
$ PKG_CONFIG_PATH=/usr/local/sigrok/lib/pkgconfig/ ./configure
--prefix=/usr/local/sigrok/
und dann
$ make
$ sudo make install
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.