[opensuse-ja] xorg-x11-sever, xorg-x11-server-extra でエラー
野宮です. openSUSE 12.3(x86_64)での話です. 昨日オンライン更新で, xorg-x11-server xorg-x11-server-extra をアップデートしたところ,xscreensaver の3d画面が使用不可となり,これ は,NVIDIAのdriverの削除・再インストールで解決しました. が,ソフトをビルドすると,案の定, [...] /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../lib64/crt1.o: undefined reference to symbol '__libc_start_main@@GLIBC_2.2.5' /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: note: '__libc_start_main@@GLIBC_2.2.5' is defined in DSO /lib64/libc.so.6 so try adding it to the linker command line /lib64/libc.so.6: could not read symbols: Invalid operation collect2: error: ld returned 1 exit status というエラーでビルドが不可能になりました,案の定,というのは,openSUSE 12.1 で経験済みであることを失念していた,という意味です. ともあれ,このエラーを回復する手立てが無いものでしょうか? 宜しくお願いします. --- ┏━━┓彡 野宮 賢 mail-to: nomiya @ galaxy.dti.ne.jp ┃\/彡 ┗━━┛ 「私たちが今日直面している化学物質の危険性に関する疑問に対し、通常の 科学的な正確さをもって答えようとすれば、たぶんさらに数十年を要するで あろう。」 -- J. V. Rodricks -- -- To unsubscribe, e-mail: opensuse-ja+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-ja+owner@opensuse.org
鎌田@翻訳人です。
[...] /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../lib64/crt1.o: undefined reference to symbol '__libc_start_main@@GLIBC_2.2.5' /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: note: '__libc_start_main@@GLIBC_2.2.5' is defined in DSO /lib64/libc.so.6 so try adding it to the linker command line /lib64/libc.so.6: could not read symbols: Invalid operation collect2: error: ld returned 1 exit status
上記のメッセージから判断する限りでは、glibcにあるべきはずのシンボル (__libc_start_main@@GLIBC_2.2.5)が無い、って言っているだけのような 気がしますが・・ いずれにしても、エラーメッセージ全体と、何をコンパイルしているのかに ついて情報を提供いただければと思います。 以上です。 On Sun, 07 Jul 2013 16:30:11 +0900 野宮 賢 / NOMIYA Masaru <nomiya@galaxy.dti.ne.jp> wrote:
野宮です.
openSUSE 12.3(x86_64)での話です.
昨日オンライン更新で,
xorg-x11-server xorg-x11-server-extra
をアップデートしたところ,xscreensaver の3d画面が使用不可となり,これ は,NVIDIAのdriverの削除・再インストールで解決しました. が,ソフトをビルドすると,案の定,
[...] /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../lib64/crt1.o: undefined reference to symbol '__libc_start_main@@GLIBC_2.2.5' /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: note: '__libc_start_main@@GLIBC_2.2.5' is defined in DSO /lib64/libc.so.6 so try adding it to the linker command line /lib64/libc.so.6: could not read symbols: Invalid operation collect2: error: ld returned 1 exit status
というエラーでビルドが不可能になりました,案の定,というのは,openSUSE 12.1 で経験済みであることを失念していた,という意味です.
ともあれ,このエラーを回復する手立てが無いものでしょうか?
宜しくお願いします.
--- ┏━━┓彡 野宮 賢 mail-to: nomiya @ galaxy.dti.ne.jp ┃\/彡 ┗━━┛ 「私たちが今日直面している化学物質の危険性に関する疑問に対し、通 常の科学的な正確さをもって答えようとすれば、たぶんさらに数十年を要する であろう。」 -- J. V. Rodricks -- -- To unsubscribe, e-mail: opensuse-ja+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-ja+owner@opensuse.org
-- Yasuhiko Kamata E-mail: belphegor@belbel.or.jp -- To unsubscribe, e-mail: opensuse-ja+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-ja+owner@opensuse.org
野宮です. In the Message; Subject : Re: [opensuse-ja] xorg-x11-sever, xorg-x11-server-extra でエラー Message-ID : <20130707180335.bf4155192cd686bbdd58c7a7@belbel.or.jp> Date & Time: Sun, 7 Jul 2013 18:03:35 +0900 Yasuhiko Kamata <belphegor@belbel.or.jp> has written:
鎌田@翻訳人です。
どうも,です.
[...] /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../lib64/crt1.o: undefined reference to symbol '__libc_start_main@@GLIBC_2.2.5' /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: note: '__libc_start_main@@GLIBC_2.2.5' is defined in DSO /lib64/libc.so.6 so try adding it to the linker command line /lib64/libc.so.6: could not read symbols: Invalid operation collect2: error: ld returned 1 exit status
上記のメッセージから判断する限りでは、glibcにあるべきはずのシンボル (__libc_start_main@@GLIBC_2.2.5)が無い、って言っているだけのような 気がしますが・・
そうでうよね. 確かに,nmで観ますと,シンボルが無いんです....(_ _?
いずれにしても、エラーメッセージ全体と、何をコンパイルしているのかに ついて情報を提供いただければと思います。
このことが支障を来すのは,ffmpeg, vlc, efl(WMのenlightenmentの一部です) でのコンパイルです(vlc, eflはビルドの折に出ます). 上記のものは,ffmpeg で ./configure を走らせた時のもので,その config.log を添付させて戴きます.m(_ _)m 宜しくお願いします. --- ┏━━┓彡 野宮 賢 mail-to: nomiya @ galaxy.dti.ne.jp ┃\/彡 ┗━━┛ 「先端技術の開発は、優れた頭脳を持つ人間が集中しないと成功しない。 しかし、技術開発と、それが何をもたらすかを考えることは別だ。 一人の人間に二つは望めない。」 -- M. Crichton --
野宮です. In the Message; Subject : Re: [opensuse-ja] xorg-x11-sever, xorg-x11-server-extra でエラー Message-ID : <87fvvq20hk.wl%nomiya@galaxy.dti.ne.jp> Date & Time: Sun, 07 Jul 2013 18:16:55 +0900 野宮 賢 / NOMIYA Masaru <nomiya@galaxy.dti.ne.jp> has written:
いずれにしても、エラーメッセージ全体と、何をコンパイルしているのかに ついて情報を提供いただければと思います。
このことが支障を来すのは,ffmpeg, vlc, efl(WMのenlightenmentの一部です) でのコンパイルです(vlc, eflはビルドの折に出ます).
vlc のコンパイル時のエラーは,以下のようになります. [...] make[2]: ディレクトリ `/tmp/source/vlc/bin' に入ります CC vlc.o CC override.o CC rootwrap.o CC vlc_static-vlc.o CC vlc_static-override.o CC cachegen.o CCLD vlc-cache-gen rootwrap.c: In function ‘main’: rootwrap.c:244:12: warning: ignoring return value of ‘setuid’, declared with attribute warn_unused_result [-Wunused-result] CCLD vlc-wrapper CCLD vlc CCLD vlc-static /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: cachegen.o: undefined reference to symbol '__printf_chk@@GLIBC_2.3.4' /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: note: '__printf_chk@@GLIBC_2.3.4' is defined in DSO /lib64/libc.so.6 so try adding it to the linker command line /lib64/libc.so.6: could not read symbols: Invalid operation collect2: error: ld returned 1 exit status make[2]: *** [vlc-cache-gen] エラー 1 make[2]: *** 未完了のジョブを待っています.... /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: override.o: undefined reference to symbol 'fflush@@GLIBC_2.2.5' /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: note: 'fflush@@GLIBC_2.2.5' is defined in DSO /lib64/libc.so.6 so try adding it to the linker command line /lib64/libc.so.6: could not read symbols: Invalid operation collect2: error: ld returned 1 exit status make[2]: *** [vlc] エラー 1 /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: vlc_static-override.o: undefined reference to symbol 'fflush@@GLIBC_2.2.5' /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: note: 'fflush@@GLIBC_2.2.5' is defined in DSO /lib64/libc.so.6 so try adding it to the linker command line /lib64/libc.so.6: could not read symbols: Invalid operation collect2: error: ld returned 1 exit status make[2]: *** [vlc-static] エラー 1 make[2]: ディレクトリ `/tmp/source/vlc/bin' から出ます make[1]: *** [all-recursive] エラー 1 make[1]: ディレクトリ `/tmp/source/vlc' から出ます make: *** [all] エラー 2 どうも,libc.so.6 絡みのエラーに思えるのですが.... 因みに,glibc 関連のファイルは上書きインストールしました, --- ┏━━┓彡 野宮 賢 mail-to: nomiya @ galaxy.dti.ne.jp ┃\/彡 ┗━━┛ 「先端技術の開発は、優れた頭脳を持つ人間が集中しないと成功しない。 しかし、技術開発と、それが何をもたらすかを考えることは別だ。 一人の人間に二つは望めない。」 -- M. Crichton -- -- To unsubscribe, e-mail: opensuse-ja+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-ja+owner@opensuse.org
鎌田@翻訳人です。 On Sun, 07 Jul 2013 18:16:55 +0900 野宮 賢 / NOMIYA Masaru <nomiya@galaxy.dti.ne.jp> wrote:
上記のメッセージから判断する限りでは、glibcにあるべきはずのシンボル (__libc_start_main@@GLIBC_2.2.5)が無い、って言っているだけのような 気がしますが・・
そうでうよね. 確かに,nmで観ますと,シンボルが無いんです....(_ _?
"readelf -s /lib64/libc.so.6" を実行してglibcのエントリを読み込めば "__libc_start_main@@GLIBC_2.2.5" が出てくるかと思います。
いずれにしても、エラーメッセージ全体と、何をコンパイルしているのかに ついて情報を提供いただければと思います。
このことが支障を来すのは,ffmpeg, vlc, efl(WMのenlightenmentの一部です ) でのコンパイルです(vlc, eflはビルドの折に出ます).
上記のものは,ffmpeg で ./configure を走らせた時のもので,その config.log を添付させて戴きます.m(_ _)m
メッセージを確認しましたが、エラーメッセージを直接読む限りでは、 "-lc" を付ければ解決するように思われます(が、gccでは-lcは敢えて付け なくてもいいはず・・)。 環境を全て知っているわけではないので憶測ですが、 (1) /usr/local/lib64または他のディレクトリ内に、ディストリビューション 側でも提供されているライブラリ(glibcのlibc.aまたはその他のライブラ リ?)が存在していて、そちらを configure時に読み込んでしまっている。 (2) そもそも実行しているコンパイラ(gcc)がopenSUSEのものではないものに なってしまっている。 などが考えられます。 以上です。 -- Yasuhiko Kamata E-mail: belphegor@belbel.or.jp -- To unsubscribe, e-mail: opensuse-ja+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-ja+owner@opensuse.org
野宮です. In the Message; Subject : Re: [opensuse-ja] xorg-x11-sever, xorg-x11-server-extra でエラー Message-ID : <20130707210222.77110dfeaf2e69d056ef678b@belbel.or.jp> Date & Time: Sun, 7 Jul 2013 21:02:22 +0900 Yasuhiko Kamata <belphegor@belbel.or.jp> has written: [...]
環境を全て知っているわけではないので憶測ですが、
(1) /usr/local/lib64または他のディレクトリ内に、ディストリビューション 側でも提供されているライブラリ(glibcのlibc.aまたはその他のライブラ リ?)が存在していて、そちらを configure時に読み込んでしまっている。
これでした. つまり. $ ld --verbose -lc を実行しますと, /usr/local/lib64/libc.a が現れ,?,と思い調べましたら.ragel のインストールで入ったものでした. これを libc.a.orig とリネームし,実行しましたら,ffmpeg,vlc, efl の全 てを無事コンパイル出来ました. それにしても,凄い洞察力ですねぇ〜..... ともあれ,どうも有難うございます. --- ┏━━┓彡 野宮 賢 mail-to: nomiya @ galaxy.dti.ne.jp ┃\/彡 ┗━━┛ 「先端技術の開発は、優れた頭脳を持つ人間が集中しないと成功しない。 しかし、技術開発と、それが何をもたらすかを考えることは別だ。 一人の人間に二つは望めない。」 -- M. Crichton -- -- To unsubscribe, e-mail: opensuse-ja+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-ja+owner@opensuse.org
participants (2)
-
Yasuhiko Kamata
-
野宮 賢 / NOMIYA Masaru