GUI in C mit sudo starten

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo,

    Ich habe ne LED an meinem Pi angeschlossen und kann die auch mittels <wiringPi.h> steuern, also an und aus schalten.

    Nun habe ich mir gedacht das ich das ganze über ne GUI an & ausschalten möchte.
    Sprich einen Button für an und einen für aus.

    Eine GUI, mit den entsprechenden Buttons, zu bauen ist kein Problem. Genauso wenig das Ansteuern der GPIOs in C.

    Allerdings ist das Problem, dass man zum benutzen der GPIOs sudo rechte braucht. Ich kann aber die GUI nicht mit sudo rechten starten.

    Es kommt immer

    Code
    cannot open display: localhost:10.0

    Weiß da jemand einen Rat?

  • Hi swoopo,

    sorry, aber die Info ist leider ein wenig mager.
    Was verstehst Du unter "GUI"? Hast Du dem Schaltprogramm eine grafische Oberfläche verpasst?
    Dann wirst Du es ja auch aufrufen müssen, oder? Also kannst Du doch vor den Aufruf ein sudo setzen, oder nicht?
    Die Fehlermeldung "cannot open display" hat damit nix zu tun.
    Da Du eine grafische Oberfläche hast, läuft das Programm natürlich auch nur in einer entsprechenden Umgebung. Einfachster Weg: wechsle mal zum Desktop und rufe da das Programm in einem Terminal auf.

    cu,
    -ds-


  • Was verstehst Du unter "GUI"? Hast Du dem Schaltprogramm eine grafische Oberfläche verpasst?


    Genau, ein einfache Fenster mit 2 Buttons.


    Dann wirst Du es ja auch aufrufen müssen, oder? Also kannst Du doch vor den Aufruf ein sudo setzen, oder nicht?


    Nein das geht leider nicht. das sudo funktioniert nur wenn ich keine Grafische Oberfläche habe.


    ... wechsle mal zum Desktop und rufe da das Programm in einem Terminal auf.

    selbes ergebniss
    zfkfjzlr.png

  • Hallo Swoopo,

    gehe doch mal in Deiner IDE in das Menü "Erstellen". Dort sollte es einen Menüpunkt "Kommandos zum Erstellen konfigurieren" oder etwas Ähnliches geben.

    Dann öffnet sich ein Fenster. Einer der Einträge lautet Ausführen. Dort gibst Du vor dem Eintrag ein

    Code
    sudo

    gefolgt von dem, was da bereits steht. Dann auf OK klicken und nochmals probieren.

    Dann sollte es eigentlich funktionieren.

    Gutes Gelingen!

    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

    Einmal editiert, zuletzt von Andreas (22. Juni 2014 um 18:35)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!