mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik sigrok-meter


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: Matthias S. (dachs)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: cat (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
export PYTHONPATH=?

Autor: Matthias S. (dachs)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Leider nein, selbes Problem.
Auch mit PYTHON_PATH nicht.

Gibt es fuer python sowas wie
ldd
 fuer dynamisch gelinkte native Programme?

Matthias

Autor: Ingo D. (ingo2011)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Matthias,

wie lautet denn die genaue Fehlermeldung ?
Hänge doch mal die Ausgabe mit dran.

Gruß Ingo

Autor: Matthias S. (dachs)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Unable to use the sigrok Python bindings:
No module named sigrok.core.

Und das passiert hier in sigrok-meter
    try:
        import sigrok.core as sr
    except Exception as e:
        QtGui.QMessageBox.critical(None, 'Error starting sigrok-meter',
           'Unable to use the sigrok Python bindings:\n{}.'.format(e))
        sys.exit(1)

Matthias

Autor: PYTHONPATH/ (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Leider nein, selbes Problem.
>Auch mit PYTHON_PATH nicht.

Heisst ja auch PYTHONPATH

Autor: Matthias S. (dachs)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Hab ja beides versucht.

Matthias

Autor: pegel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: priot (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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...)

Autor: priot (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: pegel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
priot schrieb:
> Das sind aber relative alte Versionen.

Wie das meist so ist.
Aber das Programm läuft.

Autor: priot (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
pegel schrieb:

> Wie das meist so ist.
> Aber das Programm läuft.

Aus dem repo kann's ja jeder ;-)

Autor: pegel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: pegel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn in diesen Fall python die eigen lib schon eher kennen muss,
hilft vielleicht ein:

sudo ldconfig -n ~/libsigrok

Autor: Matthias S. (dachs)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
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:
You are attempting to install a package to a directory that is not
on PYTHONPATH and which Python does not read ".pth" files from.  The
installation directory you specified (via --install-dir, --prefix, or
the distutils default setting) was:

    /tmp/mein-sigrok-dir/lib/python2.7/site-packages/

and your PYTHONPATH environment variable currently contains:

    ''

Das habe ich durch
PYTHONPATH=/tmp/mein-sigrok-dir/lib/python2.7/site-packages/ make install
geloest.
PYTHONPATH=/tmp/mein-sigrok-dir/lib/python2.7/site-packages/ ./sigrok-meter
 erzeugt jetzt die schon genannte Meldung:
Unable to use the sigrok Python bindings:
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
Unable to use the sigrok Python bindings:
No module named _classes.

Hmmm, was mache ich da falsch?

Matthias

Autor: Matthias S. (dachs)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: priot (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>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

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.