3

fontconfig を新しいバージョンに更新したいのですが、OS がまだ古い fontconfig を見つけているようで、qt をビルドするには新しいバージョンが必要です。Red Hat 5.3 に新しいバージョンを認識させるにはどうすればよいですか? これが役立つかどうかはわかりませんが、fontconfig を検索すると、cache というフォルダーにいくつかのファイルが見つかりました。yum update を実行すると、すべてが最新であることが示されますが、そのバージョンは古すぎて FcFreeTypeQueryFace がありません。これが間違ったサイトであり、それを変更する場合は、コメントを送ってください.

4

2 に答える 2

6

RHEL または CentOS 5.x でこのエラーが発生した場合:

/home/esutton/qtsdk-2010.02/qt/lib/libQtGui.so: undefined reference to `FcFreeTypeQueryFace'
collect2: ld returned 1 exit status

どうやら libQtGui.so は libfontconfig `FcFreeTypeQueryFace' メソッドを使用しようとして失敗します。バージョン 2.4.2 より前は存在しなかったか、バージョン 2.4.2 で署名が変更された可能性があります。どちらかわかりませんが、更新されたバージョンを次の場所にインストールする必要があります: '''/usr/lib/libfontconfig.so.1'''

直し方

ソースをダウンロードし、見つけられると予想される場所にインストールするように構成します。

cd /usr/src
wget http://fontconfig.org/release/fontconfig-2.4.2.tar.gz
tar -zxf fontconfig-2.4.2.tar.gz
cd fontconfig-2.4.2
./configure -prefix=/usr
make
make install <- Run as root or use sudo

これを行った後、fontconfig ライブラリの場所を Qt プロジェクトの .pro ファイルに追加する必要はありません。

LIBS += -L/opt/fontconfig-2.4.2/lib

これは、RHEL 5.3 でうまくいきました。これが役立つことを願っています!

-エド

于 2010-03-26T13:04:54.337 に答える
1

どちらかにする必要があります

  • おそらく Red Hat 固有ではない rpm を見つけて、より最近の fontconfig ビルドをインストールします。たとえば、 rpm.pbone.netを試してください。

また

  • または、ソースを入手して、自分でビルドしてインストールします。システムに既存の fontconfig rpm に依存するソフトウェアがある場合、yum が提供するバージョンをアンインストールすることはできません。その場合は、ビルド プロセスのインストール部分を気にせず、ビルドしてそのままにしておきます。次に、ローカルにビルドされたバージョンへのパスが、Qt のコンパイル時に使用されたものであることを確認する必要があります。すべてがうまくいくと言っているわけではありませんが、rpmオプションがなければ、それが私自身の目標です。
于 2010-03-19T20:48:48.697 に答える