2016-04-30 4 views
0

Qtとプログラミング全般については初めてです。 QtCreatorで初めてのGUIアプリケーションを作成しました。そのプログラムをQtCreatorから実行すると、私のPiがすべてのボタン/スライダなどで動作している現在のLXDEテーマが使用されます。 しかし、LXterminalから実行すると(プログラムにルートアクセスが必要なため)、プログラムは別のテーマを使用します。これははるかに古くなっています。Qt CreatorではなくLXTerminalから起動した場合、Raspberry Piは異なるテーマを使用します

LXTerminalからプログラムを実行する方法は、現在のPi?を使用していますか?

ありがとうございます!

答えて

0

プログラムにはrootアクセスが必要ありません。あなたのプログラムのいくつかの小さな部分は、おそらく、その小さな部分は、 suid-root実行可能ファイルなどがあります。ルートアクセスは必要ない可能性がありますが、アクセスしようとしているデバイスノードのアクセス許可を調整する必要があります。

ルートアクセスは、作業。 rootアカウントは、guiアプリケーションを実行する対話型アカウントではないため、テーマは設定されていません。

+0

ご回答いただきありがとうございます。プログラムは、ルートアクセスを必要とするWiringPiを使用してRaspberry Pi GPIOにアクセスする必要があります。私は実際にQAppで使用されているテーマに似たテーマを、QApplication :: setStyle( "CleanLooks")という行を使って "CleanLooks"というテーマで使用するようにしました。このテーマはrootで端末から実行するときにプログラムに適用されますアクセス。理想的なソリューションではありませんが、rootアカウントが提供する標準テーマよりもはるかに優れています。 – StuckInALoop

+0

@StuckInALoop WiringPiでは、最新のカーネルを使用し、 '/ dev/gpiomem'を介してgpioにアクセスし、実行ファイルがそのデバイスノードにアクセスできるようにアクセス権を設定する必要があります。これにはルートアクセスは必要ありません。ほとんどの場合、ルートを必要とするコードは壊れており、それ以外の方法を理解していない結果です。 –

関連する問題