1

qtライブラリに静的にリンクされたqtアプリケーションを構築した後、スタンドアロンのqtアプリケーション(ubuntuで構築され、Red Hat 5.3で展開された、両方とも64ビット)を構築しようとしています。Red Hatでプログラムを実行しようとしたところ、エラーが発生しましたlibc.so.6 が見つからず、GLIBC_2.9 または GLIBC_2.10 がインストールされておらず、必要ではないことを示しています。yum install glibc を実行しようとしましたが、glibc が最新であるというメッセージが表示されます (バージョンは 2.5 だと思います)。ビルド プロセスを再開しようと思いますが、今回は Red Hat インストールからです。この場合、私は何をすべきか教えてください。私の目標は、Red Hat 5 でのみ実行する必要があるスタンドアロンの qt アプリケーションを構築することです (fontconfig.so にも問題があると確信していますが、このライブラリをアプリと同じディレクトリに直接提供するだけです)。

4

1 に答える 1

2

Linuxでポータブルバイナリを作成しようとしていますか?私が知っている2つの方法があります。

まず、おそらく技術的に正しい方法ですが、かなりの苦痛であり、おそらく時間の価値はありません。LSBSDKを使用してQtとアプリをコンパイルします。(または、LSBのQtバージョンが十分に新しい場合は、LSB SDKを使用してアプリをコンパイルします。)

次に、実用的なアプローチ:サポートする予定の最も古いバージョンのglibcを搭載したマシンでQtとアプリをコンパイルします。たとえば、ubuntuでコンパイルしてredhatにデプロイする代わりに、逆の方法を試してください。

さまざまなglibcまたはその他のシステムライブラリをサポートする必要がある場合は、おそらく複数回コンパイルして、複数のバイナリを配布する必要があります。

于 2010-03-19T02:30:40.223 に答える