Ubuntu10.04でQt5.0.1を使用していますが、アプリケーションでは、実行時にQSharedPointerを適切なdynamic_cast(object_cast)変換と一緒に使用する必要があります。これらの変換は、実行時に適切にロードされる共有オブジェクトで呼び出されます。Ubuntu 10.04オペレーティングシステムを搭載した組み込みコンピューターで実行するには、アプリケーションをデプロイする必要があります。そのため、Ubuntu10.04でQtを使用しています。
アプリケーションをビルドし、Qtライブラリがインストールされているのと同じマシンで実行すると、すべてが期待どおりに機能します。
ただし、組み込みコンピューターでアプリケーションを実行すると、qSharedPointerDynamicCast(および同様のQSharedPointer :: dynamicCast、qSharedPointerObjectCast、QSharedPointer :: objectCast)が失敗し、nullポインターが返されます。両方のマシンの構成が同じであることを確認しました。dynamic_cast/object_castの問題を除いて、すべてが正常に機能しているようです。
これはRTTIの問題かもしれないと思いますが、徹底的にグーグルした後、問題の解決策が見つかりませんでした。