試験運用中なLinux備忘録・旧記事

はてなダイアリーで公開していた2007年5月-2015年3月の記事を保存しています。

x86_64版Gentoo Linuxの自前管理32bitライブラリのその後(2008/9/17現在)

「x86_64版Gentoo Linuxの32bitライブラリを自前で管理(概要と、ビルド方法について)」の頃からx86_32版ライブラリの自前管理をしているのだが、今回、ある実験の関係でx86_32版のPulseAudioとそのALSA向けプラグインを追加した。

  1. x86_32版PulseAudioの追加
  2. 公式のemul-linux-x86-soundlibsの構成パッケージをメモ
  3. 関連: emul-linux-x86-javaは削除

x86_32版PulseAudioの追加

準備として、

の2つを事前に(FEATURES/CHOST/ABI指定の上で)ビルドの上、システム上に配置しておく。*3その後でPulseAudioをビルドした。「X」「avahi」「hal」「jack」といったUSEフラグは外した。
その後、ALSA向けアプリケーションからPulseAudioを使用するためのプラグインを含んだ「alsa-plugins」をビルドすることになる。
.tbz2パッケージが作成できたら、後は「x86_64版Gentoo Linuxの自前管理32bitライブラリを更新(2008/6/10現在)」のときと同じ要領でまとめ直してダイジェストを作成、インストールという流れ。
また、「x86_64版Gentoo Linuxの自前管理32bitライブラリを更新(2008/6/10現在)」で変更したeclassファイルについても、幾つかのファイルを追加するために変更を行った。

公式のemul-linux-x86-soundlibsの構成パッケージをメモ

x86_32版ライブラリの自前管理を始めて結構経つので、公式Portageツリー版のsoundlibsに含まれるパッケージ名をこの機会に調べてみた。今回使用したのは20080810版。
$ sudo emerge -avOf "=emul-linux-x86-soundlibs-20080810"
$ tar jxf [DISTDIRの場所]/emul-linux-x86-soundlibs-20080810.tar.bz2
$ ls var/db/pkg/*
var/db/pkg/dev-libs/:
liboil-0.3.15

var/db/pkg/kde-base/:
arts-3.5.9

var/db/pkg/media-libs/:
alsa-lib-1.0.16     libmikmod-3.1.11-r4   libvorbis-1.2.1_rc1
alsa-oss-1.0.15     libmodplug-0.8.4-r2   portaudio-18.1-r6
audiofile-0.2.6-r3  libogg-1.1.3
flac-1.2.1-r1       libsndfile-1.0.17-r1

var/db/pkg/media-sound/:
esound-0.2.38-r1  jack-audio-connection-kit-0.103.0  pulseaudio-0.9.9

var/db/pkg/net-www/:
libflashsupport-1.2

PulseAudio自体は入っているが、alsa-pluginsのほうは入っていないようだ。

$ ls usr/lib32/alsa-lib/libasound_module_*pulse*
ls: cannot access usr/lib32/alsa-lib/libasound_module_*pulse*: そのようなファイルやディレクトリはありません

また、x86_64版とのバージョンも異なり、.soファイルのバージョン名部分も違うので、まずそう。

$ qlist -e pulseaudio | grep libpulse.so.0.
/usr/lib64/libpulse.so.0.6.0
$ ls usr/lib32/libpulse.so.0.*
usr/lib32/libpulse.so.0.4.0

今回、自前管理でPulseAudio関係を追加したことにより

$ ls /usr/lib32/alsa-lib/libasound_module_*pulse*      
/usr/lib32/alsa-lib/libasound_module_conf_pulse.la
/usr/lib32/alsa-lib/libasound_module_conf_pulse.so
/usr/lib32/alsa-lib/libasound_module_ctl_pulse.la
/usr/lib32/alsa-lib/libasound_module_ctl_pulse.so
/usr/lib32/alsa-lib/libasound_module_pcm_pulse.la
/usr/lib32/alsa-lib/libasound_module_pcm_pulse.so
$ qlist soundlibs | grep libpulse.so.0.
/usr/lib32/libpulse.so.0.6.0

このように、x86_64版と同じバージョンのPulseAudioに加えてALSA向けプラグインもインストールされた状態になった。

関連: emul-linux-x86-javaは削除

OpenOffice.orgがこれまで要求してきたx86_32版Javaの「emul-linux-x86-java」は、OpenOffice.orgのバージョン3からx86_64版の実行ファイルが公式に配布されるようになったことにより「openoffice-bin」もx86_64版が利用できるようになり、どのパッケージからも使用されなくなったため、削除することに。
(2008/10/13)OpenOffice.orgはバージョン3.0.0が正式坂になっている。

使用したバージョン:

  • alsa-plugins 1.0.17-r1
  • PulseAudio 0.9.12

*1:使用したバージョンは0.3.15

*2:使用したバージョンは1.2_beta3_p2

*3:今回は「.tbz2作成」「パッケージとしてまとめ直す」「ダイジェスト作成」「インストール」の流れを繰り返す形で追加していった