[devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1)
Alexey Tourbin
at на altlinux.ru
Вс Май 17 17:27:47 MSD 2009
On Sun, May 17, 2009 at 05:07:52PM +0400, Dmitry V. Levin wrote:
> On Sun, May 17, 2009 at 10:12:09AM +0400, Alexey Tourbin wrote:
> > On Sat, May 16, 2009 at 10:34:22PM +0400, Girar Builder robot wrote:
> > > http://git.altlinux.org/tasks/6576/task/log
> > >
> > > 2009-May-16 22:14:01 :: task #6576 for sisyphus started:
> > > #1 build 1.0-alt35.29311.1 from /people/ender/packages/mplayer.git
> > > 2009-May-16 22:14:05 :: created pkg.tar for mplayer.git tag 1.0-alt35.29311.1
> > > 2009-May-16 22:14:06 :: [i586] mplayer.git 1.0-alt35.29311.1: build start
> > > 2009-May-16 22:14:06 :: [x86_64] mplayer.git 1.0-alt35.29311.1: build start
> > > TOOLS/bmovl-test.c:39: warning: ignoring return value of 'write', declared with attribute warn_unused_result
> > > /usr/lib64/libSDL-1.2.so.0: undefined reference to `snd_pcm_hw_params_set_period_size_near на ALSA_0.9'
> > > /usr/lib64/libSDL-1.2.so.0: undefined reference to `snd_pcm_hw_params_set_periods_near на ALSA_0.9'
> > > /usr/lib64/libSDL-1.2.so.0: undefined reference to `snd_pcm_hw_params_set_rate_near на ALSA_0.9'
> > > /usr/lib64/libSDL-1.2.so.0: undefined reference to `snd_pcm_hw_params_get_channels на ALSA_0.9'
> > > collect2: ld returned 1 exit status
> >
> > После обновления libalsa что-то сломалось в symbol versioning.
> >
> > [at на altair ~]$ rpmpeek /ALT/archive/Sisyphus/2009/05/01/files/x86_64/RPMS/libalsa-1.0.19-alt1.x86_64.rpm readelf -aW ./usr/lib64/libasound.so.2 |grep -w snd_pcm_hw_params_get_channels
> > 231: 00000000000519d0 31 FUNC GLOBAL DEFAULT 12 snd_pcm_hw_params_get_channels на ALSA_0.9
> > 233: 00000000000519c0 15 FUNC GLOBAL DEFAULT 12 snd_pcm_hw_params_get_channels@@ALSA_0.9.0rc4
> > [at на altair ~]$ rpmpeek /ALT/Sisyphus/files/x86_64/RPMS/libalsa-1.0.20-alt1.x86_64.rpm readelf -aW ./usr/lib64/libasound.so.2 |grep -w snd_pcm_hw_params_get_channels
> > 493: 0000000000051080 15 FUNC WEAK DEFAULT 12 snd_pcm_hw_params_get_channels@@ALSA_0.9.0rc4
> > [at на altair ~]$
> >
> > Похоже, что это связано не с изменениями в libalsa, а с изменениями
> > в binutils.
>
> У libalsa и раньше случались неприятности с symbol versioning, так что
> надо сперва проверить предыдущую версию libalsa.
Я немного проверил. В libalsa не видно ничего такого, что должно
задевать ABI столь странным образом. В частности, файл src/Versions.in
не изменился.
$ git clone git://git.altlinux.org/gears/l/libalsa.git
$ cd libalsa
$ git diff --stat 1.0.19-alt1..1.0.20-alt1
.../tags/0f2005a18a1444d5ac93beac1581549bc9397007 | 8 +
.../tags/b015ae2d51734e11d44d4f11f3d053a74f88041c | 8 -
.gear/tags/list | 2 +-
configure.in | 4 +-
include/sound/asound.h | 2 +-
libalsa.spec | 5 +-
src/conf/cards/CMI8788.conf | 13 +-
src/conf/cards/GUS.conf | 47 ----
src/conf/cards/HDA-Intel.conf | 3 +
src/control/control_ext.c | 18 ++-
src/mixer/simple_none.c | 7 +
src/pcm/pcm.c | 58 +++--
src/pcm/pcm_file.c | 266 ++++++++++++++++----
src/pcm/pcm_hw.c | 4 +
src/pcm/pcm_plug.c | 35 ++-
src/seq/seq.c | 44 ++--
src/seq/seqmid.c | 4 +-
17 files changed, 349 insertions(+), 179 deletions(-)
$
А результат сборки изменился очень странно. Было
GLOBAL DEFAULT 12 snd_pcm_hw_params_get_channels на ALSA_0.9
GLOBAL DEFAULT 12 snd_pcm_hw_params_get_channels@@ALSA_0.9.0rc4
Стало
WEAK DEFAULT 12 snd_pcm_hw_params_get_channels@@ALSA_0.9.0rc4
Заметь что дефолтного символа теперь нет, а тот который остался стал weak.
Там ещё много символов стало weak.
$ rpmsodiff /ALT/archive/Sisyphus/2009/05/01/files/x86_64/RPMS/libalsa-1.0.19-alt1.x86_64.rpm /ALT/Sisyphus/files/x86_64/RPMS/libalsa-1.0.20-alt1.x86_64.rpm
common sonames:
libasound.so.2 /usr/lib64/libasound.so.2.0.0 /usr/lib64/libasound.so.2.0.0
--- libalsa-1.0.19-alt1/libasound.so.2 2009-01-19 22:38:13 +0300
+++ libalsa-1.0.20-alt1/libasound.so.2 2009-05-15 15:31:37 +0400
@@ -243,4 +243,4 @@
snd_ctl_elem_info_get_device T
-snd_ctl_elem_info_get_dimension T
-snd_ctl_elem_info_get_dimensions T
+snd_ctl_elem_info_get_dimension W
+snd_ctl_elem_info_get_dimensions W
snd_ctl_elem_info_get_id T
@@ -760,3 +760,3 @@
snd_pcm_format_width T
-snd_pcm_forward T
+snd_pcm_forward W
snd_pcm_forwardable T
...
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : отсутствует
Тип : application/pgp-signature
Размер : 197 байтов
Описание: отсутствует
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20090517/caddc93c/attachment.bin>
Подробная информация о списке рассылки Devel