Jump to content

    

Raspbian отказывает в доступе.

Пытаюсь написать программку для проверки пинов Raspberry. Все скомпилировалось , но при запуске говорит , что не может открыть dev/mem .

Что делать?

Share this post


Link to post
Share on other sites
Пытаюсь написать программку для проверки пинов Raspberry. Все скомпилировалось , но при запуске говорит , что не может открыть dev/mem .

Что делать?

 

sudo?

ошибку то дает какуюто?

Share this post


Link to post
Share on other sites

При запуске из среды Qt : exited with code 1

Если самостоятельно запускать , то ничего не происходит.

 

 

Share this post


Link to post
Share on other sites
При запуске из среды Qt : exited with code 1

Если самостоятельно запускать , то ничего не происходит.

 

Что значит "ничего не происходит"?

Откуда известно что ошибка при открытии /dev/mem?

Если функция вернула -1, errno должен быть установлен.

 

Qt запускается из под sudo?

Смотрите логи программы. В нормально написанной программе проверяются возвраты всех функций, ошибки логгируются

Share this post


Link to post
Share on other sites
Откуда известно что ошибка при открытии /dev/mem?

Кутэ говорит.

 

Qt запускается из под sudo?

Нет. Я второй день в этом упражняюсь.

Запуск моей программки в терминале через sudo -работает.

Можно ли как -нибудь настроить Qt, чтобы без танцев с бубном sudo?

 

Share this post


Link to post
Share on other sites

SUID-бит на бинарник поставить. К /dev/mem доступ возможен (по понятным причинам) только руту.

Можно еще попробовать сменить права доступа к /dev/mem, но сомневаюсь, что это сработает.

Share this post


Link to post
Share on other sites
и запускать Qt

И фигвам. :crying:

Его продукту также отлуп. Наверно, он не в той папке живет.

Share this post


Link to post
Share on other sites
Пытаюсь написать программку для проверки пинов Raspberry. Все скомпилировалось , но при запуске говорит , что не может открыть dev/mem .

Что делать?

 

Извините за ответ не совсем по теме, но допускаю, что он может быть вам полезен если вы решаете практическую задачу, а не изучаете способ проверки пинов.

Дело в том, что в Линуксе есть встроенная в кернел поддержка доступа к пинам. Вы можете даже командой из шелла управлять или читать пины.

 

Еще есть библиотека для Распбиана, позволяющая делать еще и ШИМ кроме прочего. Я с год назад даже ее использовал, но она легко ищется в гугле. Я искал написав запрос по английски.

 

Вот вам инструкция:

https://www.kernel.org/doc/Documentation/gpio/sysfs.txt

 

 

 

А теперь по теме.

Посмотрите системные логи. Зачастую апликации докладывают там о своих проблемах. В Распбиане (Debian, Ubuntu) это: /var/log/syslog. В Красной Шляпе (Федора и ЦентОС) /var/log/messages

Edited by Tarbal

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this