Создание правила udev, которое использует информацию от родителя в его имени SYMLINK

Во-первых, убедитесь, что вы можете запускать приложение в интерактивном режиме (например, из оболочки). Это исключит проблему с кросс-компиляцией, которая довольно легко может пойти не так.

Убедившись, что он работает, вы можете попробовать запустить его из /etc/rc.local . В большинстве дистрибутивов это должно запускаться автоматически при запуске.

В Интернете также есть много справочной информации о том, когда rc.local не запускается при загрузке. Я не знаю, какой дистрибутив работает на вашей плате, но в этом ответе об Ubuntu есть хороший совет.

2
07.11.2017, 20:51
1 ответ

Я думаю, ваша основная проблема заключалась в том, что вы пытались использовать %s{devpath}вместо простого использования $devpath.

Что-то вроде этого должно работать:

SUBSYSTEM=="usb", ATTRS{idVendor}=="20ce", ATTRS{idProduct}=="0023", SYMLINK+="attenuators/$devpath"

Остерегайтесь ATTRSвместоATTR(обратите внимание на S в конце, вы перепутали их несколько раз ), потому что вы фильтруете какой-то родительский узел. См. Разница между ATTRS и ATTR в правилах udev?

2
06.07.2020, 10:30

Теги

Похожие вопросы