Qt Creator代码作为用户,但以root身份运行和调试

时间:2016-06-02 18:02:43

标签: c++ c linux qt wiringpi

是否可以将QtCreator作为nornal用户执行,但是以root身份运行和调试应用程序?

这在开发基于WiringPi的应用程序时很有用,这有助于访问GPIO,但需要root才能有效地启用对硬件的访问。

为了更清楚我的意图,我希望当我在QtCretor中点击Ctrl+R时,它会以root身份运行应用程序。调试的想法一样,当我点击F5时,它会以root身份启动调试模式。当QtCreator由普通用户运行时,所有这一切。

3 个答案:

答案 0 :(得分:4)

WiringPi不需要root访问权限。您需要正确设置相关设备节点的属性,这就是全部。确保WiringPi可以使用operator.ifloordiv,用户可以写入。它可用于4.1和更新的内核IIRC。

您的问题是X-Y问题。是的,根访问回避设备节点属性错误的问题,但它根本不是一个合适的解决方案。不要以root身份运行您的应用程序。

答案 1 :(得分:0)

简短的回答是否定的。即使您可以从非根QtCreator上下文中启动应用程序以root身份运行,您也无法连接到正在运行的进程并对其进行调试。

最好以root身份运行QtCreator。

如果您需要为GPIO引脚开发“用户模式”接口,您可以尝试 本教程:LED Driver

它显示了在/ sys树中创建节点的方法,它可以为您提供对GPIO的用户模式访问。

答案 2 :(得分:0)

我今天解决了以下评论后的wiringPi相同的问题:https://askubuntu.com/a/711130

就我而言:

工具 - >选项 - >环境用" / usr / bin / xterm -e sudo"替换了默认字符串。在终端选项中。

另外,不要忘记转到 Projects>建设与发展运行>运行并选中在终端中运行框。