diary/Kojima

・X11R7.1

Plamo-4.21 では更新しないつもりだけど,そろそろモジュール化された X の ビルドを試してみようかと手を出したところ,ハマることハマること..(苦笑

従来は一つのディレクトリ(xc/)に全てのソースが展開されて,全体を設定する site.def 等で必要なオプション等を調整して make World すればよかったのだ けど,今ではそれぞれのアプリが独立したディレクトリに展開され,それぞれ のディレクトリで configure スクリプトで設定,ビルドする形式になっている.

最初は「xserver だけでもビルドできるのかな?」と ftp.x.org(のミラー)か ら落してきた xorg-server-X11R7.1-1.1.0.tar.bz2 を展開して configure と かしてみたけど,必要なパーツが足らずに configure が失敗する模様.とりあ えず configure でエラーになったパーツをまずビルドしてみようか,,と試み るも,さらにそのパーツが必要とするパーツがあって,,みたいな悪循環.しかたないか,,と あらためて xorgのwikiを読んで build-from-tarball.sh というスクリプトでビルドする必要があることを知る始末.

というわけで,このスクリプトでビルドしようとしたのだけど,どうも 7.1 の tarball には必要なパッケージが抜けている感じ.当初は 7.0 のソースを流用したり していたのだけど,よく分からないので 7.0 をビルドしてみることに.

ところが,7.0 のソースコードだと libXfont あたりで呼び出している freetype ライブラリが 2.2 以前を想定して FT_INTERNAL を使っているため, コンパイルエラーになる.Google で探したらパッチがあったので,それをあて て通ることを確認したのだけど,build-from-tarball.sh は全てのパッケージ を tar.{gz,bz2} から展開するので,パッチをあてたファイルを改めて tar.bz2 に固め直したり,,と悪戦苦闘.

結局,ほぼ一日かけて 7.0 のソースコードはビルドできるようになったのだけ ど,build-from-tarball.sh で(/usr/X11R6 以外の)インストール先を指定する と,それが ${PREFIX} に指定されて,pkgconfig のパスに埋め込まれた上でそ こにインストールされてしまうので,そのままではパッケージ化には使えない 悪寒..パッケージ化する場合は ${PREFIX}=/usr/X11R6 にして configure & build した上で,いったん ${DESTDIR}=`pwd`/work とでもして手元にインストー ルしてパッケージ化し,それを installpkg でインストールして次に進む,み たいな手順が必要になりそうだなぁ..面倒だけど build-from-tarball.sh を 読んで依存関係を解読するしかないかなぁ..



トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2021-12-17 (金) 16:35:41