Vine Linux バグトラッキングシステム - Vine Linux
課題の詳細を表示
0001250Vine Linux1 バグ公開2012-01-14 03:022015-12-19 22:25
anonymous 
 
不明 
完了不明 
VineSeed 
 
x86
qt4-4.8.0-3vl7.i686
0001250: [Seed] qt4-4.8.0-3vl7で、ソースパッケージのmakeに失敗する
qt4-4.8.0-3vl7を導入した環境で、MythTV 0.24.1をmakeするときに
以下のエラーメッセージが出て、処理が停止します。
※前バージョンのQt4を使用しているときはmake等出来ていました。

'-----------------------
ccache g++ -c -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fomit-frame-pointer -pthread -g -Wall -Wno-switch -Wpointer-arith -Wredundant-decls -Wno-non-virtual-dtor -funit-at-a-time -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -O3 -Wmissing-declarations -I/usr/include/directfb -D_REENTRANT -D_REENTRANT -DMMX -Di386 -D_GNU_SOURCE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/lib/qt-4.7.2/mkspecs/linux-g++ -I. -I/usr/lib/qt-4.7.2/include/QtCore -I/usr/lib/qt-4.7.2/include/QtGui -I/usr/lib/qt-4.7.2/include -I/usr/include -I/usr/local -I/usr/X11R6/include -I../../external/FFmpeg -I../libmythdb -I.. -I../.. -I. -o freesurround.o freesurround.cpp
In file included from freesurround.cpp:32:0:
../libmythdb/mythverbose.h:6:24: 致命的エラー: QDateTime: そのようなファイルやディレクトリはありません
コンパイルを停止しました。
make[2]: *** [freesurround.o] Error 1
make[2]: Leaving directory `/home/shirow/src/mythtv-0.24.1/libs/libmythfreesurround'
make[1]: *** [sub-libmythfreesurround-make_default] Error 2
make[1]: Leaving directory `/home/shirow/src/mythtv-0.24.1/libs'
make: *** [libs] Error 2
'-----------------------

qt-4.8.0なのに、なぜか「/usr/lib/qt-4.7.2/」を参照してビルドを行っているようです。

ちなみに/usrl/lib以下には、これだけのqt関連のフォルダなどがあります。

/usr/lib/qt3@
/usr/lib/qt-3.3.8
/usr/lib/qt-4.4.3
/usr/lib/qt-4.6.1
/usr/lib/qt-4.6.3
/usr/lib/qt-4.7.1
/usr/lib/qt-4.7.2
/usr/lib/qt4

qt4-4.8.0-3vl7のrpmを見ると「/usr/lib/qt4」が、4.8.0のライブラリのようです。
それなら、makeの時に「/usr/lib/qt4」を参照していないのは変です。

そこでQt4関係は、どれを使用するように設定されてるのか確認してみました。

# ls -la /etc/alternatives/ | grep qt-4*
lrwxrwxrwx 1 root root 31 4月 6 2011 assistant -> /usr/lib/qt-4.7.2/bin/assistant*
lrwxrwxrwx 1 root root 30 1月 12 17:08 linguist -> /usr/lib/qt-4.7.2/bin/linguist*
lrwxrwxrwx 1 root root 30 1月 10 02:19 lrelease -> /usr/lib/qt-4.7.2/bin/lrelease*
lrwxrwxrwx 1 root root 29 1月 10 02:19 lupdate -> /usr/lib/qt-4.7.2/bin/lupdate*
lrwxrwxrwx 1 root root 25 1月 10 02:19 moc -> /usr/lib/qt-4.7.2/bin/moc*
lrwxrwxrwx 1 root root 27 1月 10 02:19 qmake -> /usr/lib/qt-4.7.2/bin/qmake*
lrwxrwxrwx 1 root root 30 1月 10 02:19 qtconfig -> /usr/lib/qt-4.7.2/bin/qtconfig*
lrwxrwxrwx 1 root root 25 1月 10 02:19 uic -> /usr/lib/qt-4.7.2/bin/uic*

やはり、4.8.0では無く4.7.2を使用する様に設定されたままでした。

そこで「/sbin/update-alternatives --config qmake」などを行って、
4.8.0のライブラリ参照するように変更しました。

# ls -la /etc/alternatives/ | grep qt4*
lrwxrwxrwx 1 root root 26 1月 14 02:15 assistant -> /usr/lib/qt4/bin/assistant*
lrwxrwxrwx 1 root root 25 1月 14 02:16 linguist -> /usr/lib/qt4/bin/linguist*
lrwxrwxrwx 1 root root 25 1月 14 02:17 lrelease -> /usr/lib/qt4/bin/lrelease*
lrwxrwxrwx 1 root root 24 1月 14 02:17 lupdate -> /usr/lib/qt4/bin/lupdate*
lrwxrwxrwx 1 root root 20 1月 14 02:17 moc -> /usr/lib/qt4/bin/moc*
lrwxrwxrwx 1 root root 22 1月 14 02:17 qmake -> /usr/lib/qt4/bin/qmake*
lrwxrwxrwx 1 root root 25 1月 14 02:18 qtconfig -> /usr/lib/qt4/bin/qtconfig*
lrwxrwxrwx 1 root root 20 1月 14 02:17 uic -> /usr/lib/qt4/bin/uic*

そこで再度MythTv 0.24.1のmakeを行ったところ、無事完了出来ました。

今までのように、qt4-4.8.0-3vl7をインストールする際に
「/usr/lib/qt-4.8.0」と言うフォルダにインストールし、「/usr/lib/qt4@」を作成して
最新のQtライブラリを参照するように改善する様お願いします。
設定されていません。
課題の履歴
2012-01-14 03:02anonymous新規課題
2015-12-19 22:25tomopコメント追加: 0009681
2015-12-19 22:25tomop状態新規 => 完了

コメント
(0009681)
tomop   
2015-12-19 22:25   
最終更新日から1年以上経過したためクローズします。