RaspberryPi + wiringpi "must be root"

Üdv!
Adott egy RPi2B+ (Raspbian minimal) amin fel van telepítve a wiringpi csomag.
Egy teszt C++ appot készítettem még korábban és induláskor kiírja, hogy:


wiringPiSetup: Must be root. (Did you forget sudo?)

Ezt a wiringpi library írja ki.

Pedig sudo-val indítom az app-ot (sudo ./myapp). Mi lehet a gond?

Hozzászólások

(Bocs az egymás utáni dupla hozzászólásért, de azóta jobban utánanéztem)

Jessie OS alatt máshol található a GPIO portok fájlrendszerbe mappelése: /sys/devices/virtual/gpio/gpio${pin} helyett /sys/class/gpio/gpio${pin}. A LIB, amit használsz, még a régi helyen keresi, nem találja és vélelmezi, hogy nem vagy ROOT.

Egyébként root-ként át tudod állítani a GPIO-k tulajdonosát (például indításkor init.d-ben) a "chown -R user:pi /sys/class/gpio/gpio${pin}"-rel. Így nem kell neki root, akár egy php script is tud bele írni.

Részletesen itt:
https://dissectionbydavid.wordpress.com/2013/10/21/raspberry-pi-using-g…

Egy wiringPi forrást néztem, ott már 2012 jul. 9. óta:
"added support /sys/class/gpio/gpio"

Én is úgy tudtam, hogy pl. /sys/class/gpio/gpio18 útvonalon keresi a gpio18-at. Korábban, mikor teszteltem a GPIO-ot, akkor is ugyanitt figyeltem a gpio étékét.

A linkelt doksit én is olvastam, de köszönöm!

A /sys/class/gpio/gpio18 csak symlink a /sys/devices/platform/soc/3f200000.gpio/gpio/gpio18 könyvtárra.
Ez utóbbit hiába állítom át, a hibaüzenet ugyanaz:

# pwd
/sys/devices/platform/soc/3f200000.gpio/gpio
root@raspberrypi:/sys/devices/platform/soc/3f200000.gpio/gpio# ls -l
total 0
drwxrwx--- 2 pi gpio 0 May 9 12:21 gpio18
drwxrwx--- 2 pi gpio 0 May 9 12:21 gpio21
drwxrwx--- 2 pi gpio 0 May 9 12:21 gpio22
drwxrwx--- 2 pi gpio 0 May 9 12:21 gpio23
drwxrwx--- 2 pi gpio 0 May 9 12:21 gpio27

A friss Raspbian-nal fordítottam újból az app-ot és most szépen működik.