web-dev-qa-db-ja.com

Qt起動エラー:シンボル検索エラー:libQt5XcbQpa.so.5:未定義のシンボル:FT_Get_Font_Format

まず、qt-opensource-linux-x64-5.12.3.runソフトウェアをqt公式Webサイトからダウンロードしました。

次に、。/ qt-opensource-linux-x64-5.12.3.runコマンドを使用して、rhel 7.4システムにqt-opensource-linux-x64-5.12.3.runファイルをインストールしました。

Qtソフトウェアを正常にインストールした後、次のようにしてターミナルからqtcreatorを実行しました。

[root @ localhost bin]#./qtcreator ./ qtcreator:シンボル検索エラー:/opt/Qt5.12.3/Tools/QtCreator/lib/Qt/plugins/platforms/../../lib/libQt5XcbQpa .so.5:未定義のシンボル:FT_Get_Font_Format

上記の強調表示されたエラーが発生しました。
問題を解決するために私を案内してください。

マイシステムの詳細: [root @ localhost bin]#uname -a Linux localhost.localdomain 3.10.0-693.el7.x86_64#1 SMP Thu Jul 6 19:56:57 EDT 2017 x86_64 x86_64 x86_64 GNU/Linux

2
vignesh b.e

CentOS 7のQT 5.13でも同じ問題がありました。私はそれを実行して解決しました:

Sudo yum update freetype-devel

うまくいかない場合はお知らせください。

2
rutgersmike

RHEL 7.4では、freetypeパッケージはfreetype-2.4.11-15.el7.x86_64.rpmであり、シンボルFT_Get_X11_Font_Formatを定義しますが、FT_Get_Font_Formatは定義しません。

[root@localhost /]# readelf -s /lib64/libfreetype.so.6 | grep -i font_format
   406: 0000000000020960    43 FUNC    GLOBAL DEFAULT   11 FT_Get_X11_Font_Format

freetype APIが変更されましたFT_Get_X11_Font_FormatFT_Get_Font_Formatに名前が変更されました バージョン2.6

[root@localhost /]# readelf -s /lib64/libfreetype.so.6 | grep -i font_format
   345: 00000000000232a0    43 FUNC    GLOBAL DEFAULT   12 FT_Get_X11_Font_Format
   523: 0000000000023270    43 FUNC    GLOBAL DEFAULT   12 FT_Get_Font_Format

FT_Get_X11_Font_Formatは、下位互換性のためにまだ存在しています。

freetype> = 2.6でコンパイルされたプログラムは新しいAPIを使用する可能性があり、これにより、このようなプログラムは古いバージョンのfreetypeでは動作しなくなります。

これを修正するには、freetypefreetype-develを更新するだけで、バージョン2.8にアップグレードされます(現在)。

yum update freetype
yum update freetype-devel

yum update freetype-develの応答が次の場合:

更新対象としてマークされたパッケージはありません

これは、freetype-develをインストールしなかったことを意味します。したがって、freetypeを更新するだけで済みます。

yumを使用できない場合は、 freetype-2.8 をダウンロードして手動でアップグレードできます。

rpm -Uvh freetype-2.8-12.el7.x86_64.rpm
0
vdavid