Vine Linux バグトラッキングシステム - Vine Linux
課題の詳細を表示
0000662Vine Linux1 バグ公開2009-02-07 07:082009-08-27 14:57
anonymous 
 
不明 
完了不明 
4.2 
 
x86
self-build-vlc-0.8.6i-8vl4
0000662: 「self-build-vlc」が依存関係のためインストール出来ません
「self-build-vlc」をインストールしようとした所、
以下のようにエラーが出るためインストール出来ません。



'-------------------------------------------

# apt-get update
# apt-get install self-build-vlc
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
以下のパッケージが新たにインストールされます:
  self-build-vlc
アップグレード: 0 個, 新規インストール: 1 個, 削除: 0 個, 保留: 0 個
0B/67.5kB のアーカイブを取得する必要があります。
展開後に 93.5kB のディスク容量が追加消費されます。
変更を適用しています...
準備中... ########################################### [100%]
   1:self-build-vlc ########################################### [100%]
     rpm パッケージの作成を開始します。
     ソースファイルのダウンロード中...
     ソースファイルのダウンロードが完了しました。
     rpm パッケージをビルド中...
      (詳細は /var/tmp/self-build-vlc.log を参照してください。)
     *エラー: rpm パッケージをビルドできません。
     *エラー: rpm パッケージがみつかりません。
完了

'-------------------------------------------

またログファイル(/var/tmp/self-build-vlc.log)のエラー箇所を以下に記載します。
*全文については、添付ファイルを参照下さい。



'-------------------------------------------

gcc: /usr/lib/libGL.so: No such file or directory
make[4]: *** [libopengl_plugin.la] エラー 1
make[4]: *** 未完了のジョブを待っています....
gcc -Wl,--as-needed -shared .libs/libimage_plugin_la-image.o -Wl,--rpath -Wl,/var/tmp/self-build-vlc.f16886/rpm/BUILD/vlc-0.8.6i/src/.libs -L/usr/lib -lpthread ../../src/.libs/libvlc.so -L/usr/include -m32 -march=i386 -mcpu=i686 -Wl,-soname -Wl,libimage_plugin.so -o .libs/libimage_plugin.so
creating libimage_plugin.la
(cd .libs && rm -f libimage_plugin.la && ln -s ../libimage_plugin.la libimage_plugin.la)
make[4]: ディレクトリ `/var/tmp/self-build-vlc.f16886/rpm/BUILD/vlc-0.8.6i/modules/video_output' から出ます
make[3]: *** [all-modules] エラー 1
make[3]: ディレクトリ `/var/tmp/self-build-vlc.f16886/rpm/BUILD/vlc-0.8.6i/modules/video_output' から出ます
make[2]: *** [all-recursive] エラー 1
make[2]: ディレクトリ `/var/tmp/self-build-vlc.f16886/rpm/BUILD/vlc-0.8.6i/modules' から出ます
make[1]: *** [all-recursive] エラー 1
make[1]: ディレクトリ `/var/tmp/self-build-vlc.f16886/rpm/BUILD/vlc-0.8.6i' から出ます
make: *** [all] エラー 2
エラー: /var/tmp/rpm-tmp.65834 の不正な終了ステータス (%build)


RPM ビルドエラー:
    /var/tmp/rpm-tmp.65834 の不正な終了ステータス (%build)

'-------------------------------------------

なおspecファイルを参照しながら必要なファイルは全て入れたのですが、
上記エラーがまた出ます。
解決策をお教え頂ければ幸甚です。
よろしくお願い致します。

OS:Vine Linux 4.2 x86
gcc:gcc4-4.0.2-0vl3
設定されていません。
log self-build-vlc.log (804,005) 2009-02-07 07:08
http://mantis.vinelinux.org/file_download.php?file_id=167&type=bug
log self-build-vlc.log (1,268,096) 2009-02-07 16:03
http://mantis.vinelinux.org/file_download.php?file_id=168&type=bug
課題の履歴
2009-02-07 07:08anonymous添付ファイル追加: self-build-vlc.log
2009-02-07 07:08anonymous新規課題
2009-02-07 10:54munepiコメント追加: 0003010
2009-02-07 15:13anonymousコメント追加: 0003011
2009-02-07 15:33munepiコメント追加: 0003012
2009-02-07 16:03anonymous添付ファイル追加: self-build-vlc.log
2009-02-07 16:03anonymousコメント追加: 0003013
2009-02-07 16:17munepi状態新規 => テスト待ち
2009-02-07 16:17munepiコメント追加: 0003014
2009-02-07 16:21anonymousコメント追加: 0003015
2009-02-07 16:49munepiコメント追加: 0003016
2009-02-07 18:07anonymousコメント追加: 0003017
2009-02-07 18:25munepiコメント追加: 0003018
2009-08-27 14:57munepi状態テスト待ち => 完了
2009-08-27 14:57munepiコメント追加: 0003019

コメント
(0003010)
munepi   
2009-02-07 10:54   
山本@千葉です。

報告をありがとうございます。
確認させてください。

> checking GL/glu.h usability... yes
> checking GL/glu.h presence... yes
> checking for GL/glu.h... yes
> checking GL/glx.h usability... yes
> checking GL/glx.h presence... yes
> checking for GL/glx.h... yes
  (snip)
> checking GL/gl.h usability... yes
> checking GL/gl.h presence... yes
> checking for GL/gl.h... yes
となっているにも関わらず、どうして
> gcc: /usr/lib/libGL.so: No such file or directory
となっているのか、分かりません。

$ /sbin/ldconfig -p | grep '^[[:blank:]]libGL.so'
でちゃんと libGL.so が見つかりますか?
(0003011)
anonymous   
2009-02-07 15:13   
山本@千葉様、さっそくの解答ありがとうございます。


> > gcc: /usr/lib/libGL.so: No such file or directory
> となっているのか、分かりません。
>
> $ /sbin/ldconfig -p | grep '^[[:blank:]]libGL.so'
> でちゃんと libGL.so が見つかりますか?

指示どおり以下を確認して見ました。

$ /sbin/ldconfig -p | grep '^[[:blank:]]libGL.so'
        libGL.so.1 (libc6) => /usr/lib/libGL.so.1

もしやと思い「libGL.so」を見てみると・・・

$ ls -l /usr/lib/libGL.so*
lrwxrwxrwx 1 root root 32 2月 5日 01:55 /usr/lib/libGL.so -> ../../usr/X11R6/lib/libGL.so.1.2
lrwxrwxrwx 1 root root 15 1月20日 23:22 /usr/lib/libGL.so.1 -> libGL.so.169.12*
-rwxr-xr-x 1 root root 664804 1月20日 23:22 /usr/lib/libGL.so.169.12*

となり、「libGL.so」と「libGL.so.1」ではリンク先が違い、
「libGL.so」についてはリンク切れになっております。

続いて以下も調べて見ました。

$ ls -l /usr/X11R6/lib/libGL.so*
lrwxrwxrwx 1 root root 12 2月 5日 01:55 /usr/X11R6/lib/libGL.so -> libGL.so.1.2

となり、参照元の「libGL.so.1.2」自体が存在していないようです。
たぶん「/usr/lib/libGL.so」のリンク先を「/usr/lib/libGL.so.169.12」に修正したら
vlcのインストールは通りそうですが、「/usr/X11R6/lib/libGL.so」がおかしいままになるので
どうもスッキリしません。

「/usr/lib/libGL.so.169.12」のファイル名を見て疑っているのは、
NVIDIAのドライバー「NVIDIA-Linux-x86-169.12-pkg1.run」をインストールしてるのが原因でしょうか?

引き続きご教授頂ければ幸甚です。
よろしくお願いいたします。
(0003012)
munepi   
2009-02-07 15:33   
山本@千葉です。

手元では VineSeed なのですが,libGL.so について,
当方も NVidia の ドライバを突っ込んでいるので,
基本的には Vine Linux 4.2 でも変わりありません.

> $ ls -l /usr/lib/libGL.so*
> lrwxrwxrwx 1 root root 32 2月 5日 01:55 /usr/lib/libGL.so ->
> ../../usr/X11R6/lib/libGL.so.1.2
> lrwxrwxrwx 1 root root 15 1月20日 23:22 /usr/lib/libGL.so.1 ->
> libGL.so.169.12*
> -rwxr-xr-x 1 root root 664804 1月20日 23:22 /usr/lib/libGL.so.169.12*
>
> となり、「libGL.so」と「libGL.so.1」ではリンク先が違い、
> 「libGL.so」についてはリンク切れになっております。
どうしてこのようになってしまったのか、私には分かりかねますが、
たぶん XOrg-gl-devel の更新と NVIDIA-Linux-x86-169.12-pkg1.run のインストールの順番か、
あるいは、NVIDIA のドライバーのインストールのときに何かオプションを指定したか、
何かしたかなんだと思います。
ちなみに当方の環境では、以下のようになっています。
$ ls -l /usr/lib/libGL.so*
lrwxrwxrwx 1 root root 10 2月 7日 09:30 /usr/lib/libGL.so -> libGL.so.1*
lrwxrwxrwx 1 root root 15 2月 7日 09:30 /usr/lib/libGL.so.1 -> libGL.so.180.22*
-rwxr-xr-x 1 root root 701784 2月 7日 09:30 /usr/lib/libGL.so.180.22*

> 続いて以下も調べて見ました。
>
> $ ls -l /usr/X11R6/lib/libGL.so*
> lrwxrwxrwx 1 root root 12 2月 5日 01:55 /usr/X11R6/lib/libGL.so ->
> libGL.so.1.2
>
> となり、参照元の「libGL.so.1.2」自体が存在していないようです。
> たぶん「/usr/lib/libGL.so」のリンク先を「/usr/lib/libGL.so.169.12」に修正
> したら
> vlcのインストールは通りそうですが、「/usr/X11R6/lib/libGL.so」がおかしい
> ままになるので
> どうもスッキリしません。
>
> 「/usr/lib/libGL.so.169.12」のファイル名を見て疑っているのは、
> NVIDIAのドライバー「NVIDIA-Linux-x86-169.12-pkg1.run」をインストールして
> るのが原因でしょうか?
まず、お使いの NVIDIA の型番が何か分かりませんが、NVIDIA-Linux-x86-169.12-pkg1.run で
X11 モジュールドライバ nvidia を作って、X が立ち上がっていると思いますので、
NVIDIA-Linux-x86-169.12-pkg1.run のインストールをしているからといって、それが原因ではないはずです。

さて、解決策ですが、/usr/lib/libGL.so のリンク先を /usr/lib/libGL.so.1 へ変更すれば、たぶんいけると思います。
どうしても気持ち悪いようでしたら、
$ sudo bash /park/src/nvidia/NVIDIA-Linux-x86-169.12-pkg1.run -s
などを実行して、再度インストールし直せば、勝手にやってくれるんじゃないかと思われます。
# すみません、中のスクリプトを覗いていません。
(0003013)
anonymous   
2009-02-07 16:03   
追記です。

もしやと思い、以下のことを追加で試してみました。

# apt-get update
# apt-get reinstall XOrg-gl XOrg-gl-devel
# /sbin/ldconfig

すると、「/usr/X11R6/lib/libGL.so.1.2」がインストールされ、
「/usr/X11R6/lib/libGL.so」と「/usr/lib/libGL.so」のリンク切れも解消しました。

# locate libGL.so
/usr/X11R6/lib/libGL.so.1
/usr/X11R6/lib/libGL.so.1.2
/usr/X11R6/lib/libGL.so
/usr/lib/libGL.so.1
/usr/lib/libGL.so
/usr/lib/libGL.so.169.12

それで再度「self-build-vlc」を導入してみました。

# apt-get update
# apt-get install self-build-vlc
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
以下のパッケージが新たにインストールされます:
  self-build-vlc
アップグレード: 0 個, 新規インストール: 1 個, 削除: 0 個, 保留: 0 個
0B/67.5kB のアーカイブを取得する必要があります。
展開後に 93.5kB のディスク容量が追加消費されます。
変更を適用しています...
準備中... ########################################### [100%]
   1:self-build-vlc ########################################### [100%]
     rpm パッケージの作成を開始します。
     ソースファイルのダウンロード中...
     ソースファイルのダウンロードが完了しました。
     rpm パッケージをビルド中...
      (詳細は /var/tmp/self-build-vlc.log を参照してください。)
     rpm パッケージのビルドが完了しました。
     作成した rpm パッケージから必要なファイルを事前に配置しました。
完了
作成した rpm パッケージをインストール中...
準備中... ########################################### [100%]
   1:vlc ########################################### [ 50%]
   2:vlc-devel ########################################### [100%]
インストールが完了しました。
インストールしたファイルを /var/cache/apt/archives に移動しました。

'---------------------------------------------------------------

インストールが無事完了しました。
そのときのログ(/var/tmp/self-build-vlc.log)を添付しておきます。
このまま様子を見てみて、おかしな点があれば再度ご報告させて頂きます。
お手数をお掛けしまして申し訳ございません。
ご教授ありがとうございました。

*NVIDIAドライバーについては、特にオプションの指定は無く普通にインストールしていました。
*返信が入れ違いになってしまい申し訳ございません。
(0003014)
munepi   
2009-02-07 16:17   
本件につきましては、質問者の環境において、
libGL.so のリンク先が適切でなかったために起こった不具合で、
もはや、分類「バグ」に相当しないと思われます。
しかしながら、しばらく様子を見て頂けるということなので、
状態を完了にせずにとりあえず「確認待ち」へ変更します。
しばらく経って問題なかれば、またご報告して頂ければ幸いです。
(0003015)
anonymous   
2009-02-07 16:21   
またまた追記です。

無事インストールが完了したため、
vlcを立ち上げて メニューの「設定」などを開くとエラーが出て
vlc自体が落ちてしまいます。

$ vlc
VLC media player 0.8.6i Janus
*** glibc detected *** corrupted double-linked list: 0x083af358 ***
アボートしました

細かいエラー内容が無いので、原因がまったくわかりません。
たびたび申し訳ございませんが、ご教授下さい。
よろしくお願いいたします。
(0003016)
munepi   
2009-02-07 16:49   
山本@千葉です。

BTS でこういうやり取りをするのははじめてですが…、もう少し続けます。

いくつか確認させて頂きたいことがあります。
1. 再度、以下のコマンドを実行するとどうなりますか?
$ /sbin/ldconfig -p | grep '^[[:blank:]]libGL.so'
$ ls -l /usr/X11R6/lib/libGL.so*
$ ls -l /usr/lib/libGL.so*

2. gcc は 3.3.6 ですか?4.0.2 ですか?
$ ls -l /usr/bin/gcc
$ ls -l /etc/alternatives/gcc

> $ vlc
> VLC media player 0.8.6i Janus
> *** glibc detected *** corrupted double-linked list: 0x083af358 ***
> アボートしました
この手の glibc のエラーは、gcc 4.0.2 でビルドしたときに、頻繁に起こりました。
一応、self-build-vlc は gcc-3.3.6 でビルドすることを想定しています。
もし update-alternatives で gcc を 4.0.2 へ変更されていたならば、
以下を検証して下さい。

self-build-vlc-0.8.6i-8vl4.src.rpm を展開されて、
$HOME/rpm/SOURCES/vlc.spec の 201 行目を
- #export CC=gcc-4.0.2 CXX=g++-4.0.2
+ export CC=gcc-3.3.6 CXX=g++-3.3.6
へ変更したのち、
$ rpmbuild -ba $HOME/rpm/SOURCES/vlc.spec
で正常にビルドできて、起動できるでしょうか?
(0003017)
anonymous   
2009-02-07 18:07   
山本@千葉様

お手数をおかけし申し訳ございません。
ご指示頂いた点に付いて確認致しました。

> いくつか確認させて頂きたいことがあります。
> 1. 再度、以下のコマンドを実行するとどうなりますか?
> $ /sbin/ldconfig -p | grep '^[[:blank:]]libGL.so'
> $ ls -l /usr/X11R6/lib/libGL.so*
> $ ls -l /usr/lib/libGL.so*

$ /sbin/ldconfig -p | grep '^[[:blank:]]libGL.so'
        libGL.so.1 (libc6) => /usr/X11R6/lib/libGL.so.1
        libGL.so.1 (libc6) => /usr/lib/libGL.so.1
        libGL.so (libc6) => /usr/X11R6/lib/libGL.so
        libGL.so (libc6) => /usr/lib/libGL.so
$ ls -l /usr/X11R6/lib/libGL.so*
lrwxrwxrwx 1 root root 12 2月 7日 15:23 /usr/X11R6/lib/libGL.so -> libGL.so.1.2*
lrwxrwxrwx 1 root root 12 2月 7日 15:23 /usr/X11R6/lib/libGL.so.1 -> libGL.so.1.2*
-rwxr-xr-x 1 root root 424432 6月14日 2008 /usr/X11R6/lib/libGL.so.1.2*
]$ ls -l /usr/lib/libGL.so*
lrwxrwxrwx 1 root root 32 2月 7日 15:23 /usr/lib/libGL.so -> ../../usr/X11R6/lib/libGL.so.1.2*
lrwxrwxrwx 1 root root 15 2月 7日 15:23 /usr/lib/libGL.so.1 -> libGL.so.169.12*
-rwxr-xr-x 1 root root 664804 1月20日 23:22 /usr/lib/libGL.so.169.12*

ライブラリ関係は大丈夫なようです。
 
> 2. gcc は 3.3.6 ですか?4.0.2 ですか?
> $ ls -l /usr/bin/gcc
> $ ls -l /etc/alternatives/gcc

$ ls -l /usr/bin/gcc
lrwxrwxrwx 1 root root 21 2月 4日 20:57 /usr/bin/gcc -> /etc/alternatives/gcc*
$ ls -l /etc/alternatives/gcc
lrwxrwxrwx 1 root root 18 2月 7日 05:21 /etc/alternatives/gcc -> /usr/bin/gcc-4.0.2*

MythTVをインストールするため、4.0.2へ変更しておりました。
 
> > $ vlc
> > VLC media player 0.8.6i Janus
> > *** glibc detected *** corrupted double-linked list: 0x083af358 ***
> > アボートしました
> この手の glibc のエラーは、gcc 4.0.2 でビルドしたときに、頻繁に起こりまし
> た。
> 一応、self-build-vlc は gcc-3.3.6 でビルドすることを想定しています。
> もし update-alternatives で gcc を 4.0.2 へ変更されていたならば、
> 以下を検証して下さい。
>
> self-build-vlc-0.8.6i-8vl4.src.rpm を展開されて、
> $HOME/rpm/SOURCES/vlc.spec の 201 行目を
> - #export CC=gcc-4.0.2 CXX=g++-4.0.2
> + export CC=gcc-3.3.6 CXX=g++-3.3.6
> へ変更したのち、
> $ rpmbuild -ba $HOME/rpm/SOURCES/vlc.spec
> で正常にビルドできて、起動できるでしょうか?

vlc.specの上記箇所を修正後、リビルドしインストールが無事完了しました。
いろいろ設定などを変更し、ファイルを再生してみましたがエラーは発生しなくなりました。
ご指摘のとおり、gcc 4.0.2にてビルドしてたのが原因のようです。
お忙しい中、何度もご解答頂きありがとうございました。
(0003018)
munepi   
2009-02-07 18:25   
山本@千葉です。

検証して頂きまして有難うございます。

> MythTVをインストールするため、4.0.2へ変更しておりました。
(snip)
> > $HOME/rpm/SOURCES/vlc.spec の 201 行目を
> > - #export CC=gcc-4.0.2 CXX=g++-4.0.2
> > + export CC=gcc-3.3.6 CXX=g++-3.3.6
(snip)
> vlc.specの上記箇所を修正後、リビルドしインストールが無事完了しました。
> いろいろ設定などを変更し、ファイルを再生してみましたがエラーは発生しなく
> なりました。
> ご指摘のとおり、gcc 4.0.2にてビルドしてたのが原因のようです。
はやりそうでしたか。

> お忙しい中、何度もご解答頂きありがとうございました。
いえいえ、こちらこそ、self-build を作成する上の注意点を気付かされました。
後で self-build-vlc を修正しておきます。
self-build-vlc の更新が来た際に、
ぜひともビルド・動作報告をして頂けると有難いです。
(0003019)
munepi   
2009-08-27 14:57   
その後特に問題が無いようですので,「完了」にします.