【发布时间】:2021-01-16 03:47:13
【问题描述】:
我在 Qt creator 中创建了一个应用程序,当我在正常模式和 sudo 模式下运行它时,它的颜色和图标不同,为什么会发生这种情况,我觉得在 sudo 模式下看起来很棒。请参阅下面的图片。
以上是应用在正常模式下运行时
这是它在 sudo 模式下的样子。
我需要在 sudo 模式下运行我的应用程序,因为它使用树莓派中的 GPIO 引脚。但是在 sudo 模式下运行会提供一个警告,即
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root' when running sudo commands
我的 QSettings 文件保存在根文件夹的某个位置。为了避免这种情况(以便设置文件将保存在 .config 文件夹中),我使用以下命令启动了我的应用程序
sudo -E ./MyApp
所以环境变量被保留,QSettings 被保存在 .config 文件夹中,但应用看起来像普通模式(第一张图片)。
所以我的问题是 - 如何保留环境变量,同时应用看起来像 sudo 模式(第二张图片)?
我在 Qtcreator (qt5) 中使用 c++ 在树莓派操作系统中创建应用程序
【问题讨论】:
-
也许您使用的是不同的外壳?例如zsh/bash/sh/...
-
您不需要
sudo或 root 在 Pi 上使用 GPIO:stackoverflow.com/questions/12133860/… -
当您使用
sudo时,您将作为不同的用户(root用户)运行,该用户具有不同的 UI 元素设置和主题。
标签: c++ qt raspberry-pi qt5