Red Hat Enterprise Linux 5.2で共有ライブラリに宣言されて使用されているQtリソースを初期化する方法がわかりません。Qtリソースを共有ライブラリから初期化する方法は?
共有ライブラリにQtリソースファイルを追加し、 "resource"という接頭辞を追加し、 "files/styleSheet.xsl"というファイルを追加しました。リソースファイルの名前は "resources.qrc"です。 QFile :: existsはfalseを返しますか?問題は、Linuxの下で、あなたは同様にあなたの共有ライブラリとアプリケーションの両方でQtのリソースファイル(* .qrc)と命名していることができないということである任意のヒントや提案を事前に
MySharedLib::MySharedLib()
{
// I think Q_INIT_RESOURCE basically expands to this:
// The resource file is named "resources.qrc"
extern int qInitResources_resources();
qInitResources_resources();
QString resourcePath = ":/resource/files/styleSheet.xsl";
if(false == QFile::exists(resourcePath))
{
printf("*** Error - Resource path not found : \"%s\"\n", resourcePath.toLatin1().data());
}
}
おかげで、
関連:[Plugin(.so)からのQt UIのトラブルシューティング](http://stackoverflow.com/questions/5097087/) –
私は不思議ですが、この問題を解決できましたか?私は非常に似た問題を抱えており、解決策を見つけることができません。 – DRAX