diary/Kojima/2009-10-04
の編集
http://sv5.linet.gr.jp/index.php?diary/Kojima/2009-10-04
[
トップ
] [
編集
|
差分
|
バックアップ
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
-- 雛形とするページ --
diary/Template
[[diary/Kojima]] ・xorg-server-1.6 と libxcb-xlib Plamo-4.7 に収録している libxcb(libxcb-1.1.91)には libxcb-xlib という小さなライブラリがあるのだけど、 libxcb-1.2 以降ではこのライブラリが削除されている。 libxcb-xlib 自体はそれほど重要なライブラリではないのだけれど、libXext.la で dependecy libs に指定されてしまっているため、 libXext.la を参照するライブラリが芋づる式に libxcb-xlib.la を参照することになってしまっていて、X11R74 では多数のライブラリが libxcb-xlib.so をリンクしてしまっている。 その結果、単純に libxcb-1.2 以降(最近では1.4までバージョンアップしている模様)にすると、本来 X11R74 に含まれている libxcb-xlib の機能は不要なライブラリが 軒並み libxcb-xlib が見つからない、というエラーになってしまう。また、*.la ファイルに libxcb-xlib の参照が入っているライブラリは libxcb-xlib の無い状態で再ビルドしないと *.la ファイルの参照は消えない。 このあたりは libtools のバグというか mis-feature っぽいのだけど、xorg-server-1.6 以降にするには libxcb-1.2 以降が必要なので 何とかする必要がある。 google等で調べた結果、既存のライブラリを活かすためには libxcb-xlib.so.0.0.0 を残すとともに、*.la ファイルから libxcb-xlib.la の参照を削除しておけば(libxcb-xlib.so.0.0.0が存在していても)新しくビルドするライブラリには libxcb-xlib が不要になるようなので、libxcb-1.4 のパッケージに 古いlibxcb-xlib.so.0.0.0 を収めるとともに、initpkg で *.la にある libxcb-xlib.la への参照を 削除するようなコードを加えてみる。 こういう方針で作った xorg-server-1.6.4 と必要なライブラリ、ドライバを [[Plamo-test:ftp://plamo.linet.gr.jp/pub/Plamo-test/for-4.7x/xorg-server-1.6]] に置いたので、興味ある人は試してみてください。 動作させるには、このディレクトリにあるファイル(ライブラリ、プロトタイプ、xorg-server 本体)すべてと drivers 以下にある 1.6.4 用のドライバ が必要で、標準的な環境ではキーボード ([[xf86_input_keyboard-1.3.99.1-i586-P1.tgz:ftp://plamo.linet.gr.jp/pub/Plamo-test/for-4.7x/xorg-server-1.6/drivers/xf86_input_keyboard-1.3.99.1-i586-P1.tgz]]) とマウス ([[xf86_input_mouse-1.4.99.1-i586-P1.tgz:ftp://plamo.linet.gr.jp/pub/Plamo-test/for-4.7x/xorg-server-1.6/drivers/xf86_input_mouse-1.4.99.1-i586-P1.tgz]]) に加えて、ビデオチップごとのドライバ(intel系なら [[xf86_video_intel-2.9.0-i586-P2.tgz:ftp://plamo.linet.gr.jp/pub/Plamo-test/for-4.7x/xorg-server-1.6/drivers/xf86_video_intel-2.9.0-i586-P2.tgz]], NVidia系なら [[xf86_video_nv-2.1.15-i586-P1.tgz:ftp://plamo.linet.gr.jp/pub/Plamo-test/for-4.7x/xorg-server-1.6/drivers/xf86_video_nv-2.1.15-i586-P1.tgz]])が必要になります。 ちゃんと動けば、xdpyinfo の結果が name of display: :0.0 version number: 11.0 vendor string: The X.Org Foundation vendor release number: 10604000 X.Org version: 1.6.4 となるはず。 -素晴らしい。 UXAがとうとう動きましたよ(intel)。 但し、付属のintelはcompileに失敗していて空でした。ええと、drmのversionが低いです。あと、xextprotoはversionが逆に上りすぎです(shmstr.hがなくなっていて困る).以上fixするとcompile出来て2DはOKです。3Dが動きませんが、これはMesaでしょうね。これからver upしてみます。 -- [[Honda]] &new{2009-10-05 (月) 02:44:03}; -でも、実はすでに xorg-server 1.7 が出てたりするんだよなぁ。 -- [[kojima]] &new{2009-10-05 (月) 07:10:19}; -おっと失礼、xf86_video_intel、コンパイルに失敗した方のをあげちゃってましたね。とりあえず [[P2:ftp://plamo.linet.gr.jp/pub/Plamo-test/for-4.7x/xorg-server-1.6/drivers/xf86_video_intel-2.9.0-i586-P2.tgz]]に直しておきました。 -- [[kojima]] &new{2009-10-05 (月) 09:00:47}; -ちなみに、手元でビルドし損ねたのは、表題にしている libxcb-xlib がらみだったと思ふ(libdrm は2.4.11のままでも通りそう) それでも2.4.14 が出てるから Mesa の前に更新しておこうか -- [[kojima]] &new{2009-10-05 (月) 09:02:41}; -Mesa-7.5.2 には libXi を更新する必要がありそう(extensions/Xinput.h の参照あり) -- [[kojima]] &new{2009-10-05 (月) 10:00:21}; #comment
タイムスタンプを変更しない
[[diary/Kojima]] ・xorg-server-1.6 と libxcb-xlib Plamo-4.7 に収録している libxcb(libxcb-1.1.91)には libxcb-xlib という小さなライブラリがあるのだけど、 libxcb-1.2 以降ではこのライブラリが削除されている。 libxcb-xlib 自体はそれほど重要なライブラリではないのだけれど、libXext.la で dependecy libs に指定されてしまっているため、 libXext.la を参照するライブラリが芋づる式に libxcb-xlib.la を参照することになってしまっていて、X11R74 では多数のライブラリが libxcb-xlib.so をリンクしてしまっている。 その結果、単純に libxcb-1.2 以降(最近では1.4までバージョンアップしている模様)にすると、本来 X11R74 に含まれている libxcb-xlib の機能は不要なライブラリが 軒並み libxcb-xlib が見つからない、というエラーになってしまう。また、*.la ファイルに libxcb-xlib の参照が入っているライブラリは libxcb-xlib の無い状態で再ビルドしないと *.la ファイルの参照は消えない。 このあたりは libtools のバグというか mis-feature っぽいのだけど、xorg-server-1.6 以降にするには libxcb-1.2 以降が必要なので 何とかする必要がある。 google等で調べた結果、既存のライブラリを活かすためには libxcb-xlib.so.0.0.0 を残すとともに、*.la ファイルから libxcb-xlib.la の参照を削除しておけば(libxcb-xlib.so.0.0.0が存在していても)新しくビルドするライブラリには libxcb-xlib が不要になるようなので、libxcb-1.4 のパッケージに 古いlibxcb-xlib.so.0.0.0 を収めるとともに、initpkg で *.la にある libxcb-xlib.la への参照を 削除するようなコードを加えてみる。 こういう方針で作った xorg-server-1.6.4 と必要なライブラリ、ドライバを [[Plamo-test:ftp://plamo.linet.gr.jp/pub/Plamo-test/for-4.7x/xorg-server-1.6]] に置いたので、興味ある人は試してみてください。 動作させるには、このディレクトリにあるファイル(ライブラリ、プロトタイプ、xorg-server 本体)すべてと drivers 以下にある 1.6.4 用のドライバ が必要で、標準的な環境ではキーボード ([[xf86_input_keyboard-1.3.99.1-i586-P1.tgz:ftp://plamo.linet.gr.jp/pub/Plamo-test/for-4.7x/xorg-server-1.6/drivers/xf86_input_keyboard-1.3.99.1-i586-P1.tgz]]) とマウス ([[xf86_input_mouse-1.4.99.1-i586-P1.tgz:ftp://plamo.linet.gr.jp/pub/Plamo-test/for-4.7x/xorg-server-1.6/drivers/xf86_input_mouse-1.4.99.1-i586-P1.tgz]]) に加えて、ビデオチップごとのドライバ(intel系なら [[xf86_video_intel-2.9.0-i586-P2.tgz:ftp://plamo.linet.gr.jp/pub/Plamo-test/for-4.7x/xorg-server-1.6/drivers/xf86_video_intel-2.9.0-i586-P2.tgz]], NVidia系なら [[xf86_video_nv-2.1.15-i586-P1.tgz:ftp://plamo.linet.gr.jp/pub/Plamo-test/for-4.7x/xorg-server-1.6/drivers/xf86_video_nv-2.1.15-i586-P1.tgz]])が必要になります。 ちゃんと動けば、xdpyinfo の結果が name of display: :0.0 version number: 11.0 vendor string: The X.Org Foundation vendor release number: 10604000 X.Org version: 1.6.4 となるはず。 -素晴らしい。 UXAがとうとう動きましたよ(intel)。 但し、付属のintelはcompileに失敗していて空でした。ええと、drmのversionが低いです。あと、xextprotoはversionが逆に上りすぎです(shmstr.hがなくなっていて困る).以上fixするとcompile出来て2DはOKです。3Dが動きませんが、これはMesaでしょうね。これからver upしてみます。 -- [[Honda]] &new{2009-10-05 (月) 02:44:03}; -でも、実はすでに xorg-server 1.7 が出てたりするんだよなぁ。 -- [[kojima]] &new{2009-10-05 (月) 07:10:19}; -おっと失礼、xf86_video_intel、コンパイルに失敗した方のをあげちゃってましたね。とりあえず [[P2:ftp://plamo.linet.gr.jp/pub/Plamo-test/for-4.7x/xorg-server-1.6/drivers/xf86_video_intel-2.9.0-i586-P2.tgz]]に直しておきました。 -- [[kojima]] &new{2009-10-05 (月) 09:00:47}; -ちなみに、手元でビルドし損ねたのは、表題にしている libxcb-xlib がらみだったと思ふ(libdrm は2.4.11のままでも通りそう) それでも2.4.14 が出てるから Mesa の前に更新しておこうか -- [[kojima]] &new{2009-10-05 (月) 09:02:41}; -Mesa-7.5.2 には libXi を更新する必要がありそう(extensions/Xinput.h の参照あり) -- [[kojima]] &new{2009-10-05 (月) 10:00:21}; #comment
テキスト整形のルールを表示する