* [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1)
@ 2009-05-17 6:12 ` Alexey Tourbin
2009-05-17 7:30 ` Afanasov Dmitry
` (3 more replies)
0 siblings, 4 replies; 30+ messages in thread
From: Alexey Tourbin @ 2009-05-17 6:12 UTC (permalink / raw)
To: devel
[-- Attachment #1: Type: text/plain, Size: 1868 bytes --]
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.
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1)
2009-05-17 6:12 ` [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1) Alexey Tourbin
@ 2009-05-17 7:30 ` Afanasov Dmitry
2009-05-17 12:54 ` Alexey Tourbin
2009-05-17 13:07 ` Dmitry V. Levin
` (2 subsequent siblings)
3 siblings, 1 reply; 30+ messages in thread
From: Afanasov Dmitry @ 2009-05-17 7:30 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 1342 bytes --]
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:
> [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.
причем:
1. только на x86_64
2. лечится добавлением -ldl -lasound -lm
эта проблема вплывала только при компиляции утилит bmovl-test и
fastmemcpybench. пробовал добавить к сборочной команде эти библиотеки, но
опять-таки на x86_64 -lSDL_image -ldl -lasound -lm почему-то раскрывалось
в полные пути a-la /usr/lib64/libSDL_image.so.
потому я пока выключил сборку этих утилит.
--
С уважением
Афанасов Дмитрий
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1)
2009-05-17 7:30 ` Afanasov Dmitry
@ 2009-05-17 12:54 ` Alexey Tourbin
2009-05-17 14:21 ` Afanasov Dmitry
0 siblings, 1 reply; 30+ messages in thread
From: Alexey Tourbin @ 2009-05-17 12:54 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 4222 bytes --]
On Sun, May 17, 2009 at 11:30:51AM +0400, Afanasov Dmitry 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:
> > [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.
> причем:
> 1. только на x86_64
> 2. лечится добавлением -ldl -lasound -lm
Мне представляется, что проблема гораздо серьезнее, так что не надо её
лечить "по месту". Проблема состоит в том, что нарушается сопоставление
между названиями ABI интерфейсов и входящими в них символами. Такие
нарушения сейчас в явном виде никак не отлавливаются, и это может очень
плохо кончиться.
Собственно, это уже плохо кончилось: в сизифе появились пакеты со
сломанным ABI. Вот ещё один такой пакет.
$ hsh --no-stuff --init && hsh-install bluez-alsa
...
<13>May 17 12:43:06 rpmi: libalsa-1.0.20-alt1 installed
<13>May 17 12:43:06 rpmi: libusb-1.0-alt2 installed
<13>May 17 12:43:06 rpmi: libusb-compat-0.1.0-alt2 installed
<13>May 17 12:43:06 rpmi: libnl-1.1-alt2 installed
<13>May 17 12:43:06 rpmi: libdbus-1.2.14-alt1 installed
<13>May 17 12:43:06 rpmi: setserial-1:2.17-alt1 installed
<13>May 17 12:43:06 rpmi: libbluez4-4.39-alt1 installed
<13>May 17 12:43:06 rpmi: bluez-4.39-alt1 installed
<13>May 17 12:43:06 rpmi: bluez-alsa-4.39-alt1 installed
$ hsh-run -- ldd -r /usr/lib64/alsa-lib/libasound_module_pcm_bluetooth.so
symbol snd_pcm_sw_params_get_start_threshold, version ALSA_0.9.0rc4 not defined in file libasound.so.2 with link time reference (/usr/lib64/alsa-lib/libasound_module_pcm_bluetooth.so)
libasound.so.2 => /usr/lib64/libasound.so.2 (0x00002ae319e2c000)
librt.so.1 => /lib64/librt.so.1 (0x00002ae31a110000)
libc.so.6 => /lib64/libc.so.6 (0x00002ae31a318000)
libm.so.6 => /lib64/libm.so.6 (0x00002ae31a665000)
libdl.so.2 => /lib64/libdl.so.2 (0x00002ae31a8e7000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00002ae31aaeb000)
/lib64/ld-linux-x86-64.so.2 (0x00002ae3199f9000)
$
Нужно сделать следующее:
1) Попытаться быстро понять, что именно изменилось в binutils (или где),
и какие пакеты пострадают в результате этих изменений.
2) Переделать проверку bad_elf_symbols, чтобы она дополнительно
проверяля совпадение интерфейсов, если у требуемого символа есть
требование на интерфейс. Я уже очень давно собираюсь этим заняться,
но никак не могу понять, какой backend лучше всего использовать.
Грубо говоря, мне нужно сдампить секцию .dynsym со всякой дополнительной
информацией. Точнее, к каждому символу мне нужно всего две информации.
Во-первых, является ли этот символ FUNC или OBJECT (то есть код или
данные), или же ни то ни другое (это будет ещё одна проверка, чтобы код
не разрешался в данные). Во-вторых, есть ли у этого символа versioning.
Варианты backend'ов такие:
- objdump -T
- readelf --???
- преловая привязка к libelf
objdump -T дампит то что нужно, но у него запутанный вывод.
Для readelf я не понял как его попросить сдампить .dynsym.
Вывод readelf несколько проще.
Писать привязку к libelf -- это не настолько просто, как хотелось бы.
> эта проблема вплывала только при компиляции утилит bmovl-test и
> fastmemcpybench. пробовал добавить к сборочной команде эти библиотеки, но
> опять-таки на x86_64 -lSDL_image -ldl -lasound -lm почему-то раскрывалось
> в полные пути a-la /usr/lib64/libSDL_image.so.
>
> потому я пока выключил сборку этих утилит.
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1)
2009-05-17 6:12 ` [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1) Alexey Tourbin
2009-05-17 7:30 ` Afanasov Dmitry
@ 2009-05-17 13:07 ` Dmitry V. Levin
2009-05-17 13:27 ` Alexey Tourbin
2009-05-17 13:28 ` Valery V. Inozemtsev
2009-05-17 13:28 ` [devel] libalsa ABI breakage Dmitry V. Levin
2009-05-17 14:07 ` [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1) Sergey Vlasov
3 siblings, 2 replies; 30+ messages in thread
From: Dmitry V. Levin @ 2009-05-17 13:07 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 2123 bytes --]
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.
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1)
2009-05-17 13:07 ` Dmitry V. Levin
@ 2009-05-17 13:27 ` Alexey Tourbin
2009-05-17 13:28 ` Valery V. Inozemtsev
1 sibling, 0 replies; 30+ messages in thread
From: Alexey Tourbin @ 2009-05-17 13:27 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 4827 bytes --]
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
...
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1)
2009-05-17 13:07 ` Dmitry V. Levin
2009-05-17 13:27 ` Alexey Tourbin
@ 2009-05-17 13:28 ` Valery V. Inozemtsev
1 sibling, 0 replies; 30+ messages in thread
From: Valery V. Inozemtsev @ 2009-05-17 13:28 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 507 bytes --]
[...]
> >
> > Похоже, что это связано не с изменениями в libalsa, а с изменениями
> > в binutils.
>
> У libalsa и раньше случались неприятности с symbol versioning, так что
> надо сперва проверить предыдущую версию libalsa.
т.к.
$ git diff v1.0.19..v1.0.20 src/Versions.in
ничего не дает, то все же это не в libalsa
--
Valery V. Inozemtsev
[-- Attachment #2: Эта часть сообщения подписана цифровой подписью --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa ABI breakage
2009-05-17 6:12 ` [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1) Alexey Tourbin
2009-05-17 7:30 ` Afanasov Dmitry
2009-05-17 13:07 ` Dmitry V. Levin
@ 2009-05-17 13:28 ` Dmitry V. Levin
2009-05-17 13:32 ` Dmitry V. Levin
2009-05-17 13:33 ` Valery V. Inozemtsev
2009-05-17 14:07 ` [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1) Sergey Vlasov
3 siblings, 2 replies; 30+ messages in thread
From: Dmitry V. Levin @ 2009-05-17 13:28 UTC (permalink / raw)
To: ALT Devel discussion list; +Cc: Valery V. Inozemtsev
[-- Attachment #1: Type: text/plain, Size: 1017 bytes --]
On Sun, May 17, 2009 at 10:12:09AM +0400, Alexey Tourbin wrote:
[...]
> Похоже, что это связано не с изменениями в libalsa, а с изменениями
> в binutils.
Судя по ошибкам в /tasks/6474/build/1/*/log, сломалась проверка
"checking for versioned symbols" (вероятно, из-за обновления libtool),
в результате у библиотеки сменился versioning, но мантейнер этого
просто не заметил.
В старом логе это выглядит так:
checking for versioned symbols... yes
В новом логе это выглядит так:
checking for versioned symbols... grep: libtool: No such file or directory
./configure: line 12212: test: too many arguments
./configure: line 12215: test: -gt: unary operator expected
broken libtool - use libtool v1.4+; no versions
Насколько я понимаю, после того, как сборка libalsa будет исправлена, и
зафиксенная libalsa попадёт в Сизиф, придётся пересобрать те пакеты,
которые уже успели собрать с кривособранной libalsa.
P.S. Валера, читай логи сборки своих пакетов внимательнее, пожалуйста.
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa ABI breakage
2009-05-17 13:28 ` [devel] libalsa ABI breakage Dmitry V. Levin
@ 2009-05-17 13:32 ` Dmitry V. Levin
2009-05-17 14:11 ` Valery V. Inozemtsev
2009-05-17 13:33 ` Valery V. Inozemtsev
1 sibling, 1 reply; 30+ messages in thread
From: Dmitry V. Levin @ 2009-05-17 13:32 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 937 bytes --]
On Sun, May 17, 2009 at 05:28:45PM +0400, Dmitry V. Levin wrote:
> On Sun, May 17, 2009 at 10:12:09AM +0400, Alexey Tourbin wrote:
> [...]
> > Похоже, что это связано не с изменениями в libalsa, а с изменениями
> > в binutils.
>
> Судя по ошибкам в /tasks/6474/build/1/*/log, сломалась проверка
> "checking for versioned symbols" (вероятно, из-за обновления libtool),
> в результате у библиотеки сменился versioning, но мантейнер этого
> просто не заметил.
>
> В старом логе это выглядит так:
> checking for versioned symbols... yes
>
> В новом логе это выглядит так:
> checking for versioned symbols... grep: libtool: No such file or directory
> ./configure: line 12212: test: too many arguments
> ./configure: line 12215: test: -gt: unary operator expected
> broken libtool - use libtool v1.4+; no versions
Оно пытается узнать версию файла libtool, который на этой стадии сборки
ещё не создан.
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa ABI breakage
2009-05-17 13:28 ` [devel] libalsa ABI breakage Dmitry V. Levin
2009-05-17 13:32 ` Dmitry V. Levin
@ 2009-05-17 13:33 ` Valery V. Inozemtsev
2009-05-24 10:32 ` Michael Shigorin
1 sibling, 1 reply; 30+ messages in thread
From: Valery V. Inozemtsev @ 2009-05-17 13:33 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 1594 bytes --]
В Вск, 17/05/2009 в 17:28 +0400, Dmitry V. Levin пишет:
> On Sun, May 17, 2009 at 10:12:09AM +0400, Alexey Tourbin wrote:
> [...]
> > Похоже, что это связано не с изменениями в libalsa, а с изменениями
> > в binutils.
>
> Судя по ошибкам в /tasks/6474/build/1/*/log, сломалась проверка
> "checking for versioned symbols" (вероятно, из-за обновления libtool),
> в результате у библиотеки сменился versioning, но мантейнер этого
> просто не заметил.
>
> В старом логе это выглядит так:
> checking for versioned symbols... yes
>
> В новом логе это выглядит так:
> checking for versioned symbols... grep: libtool: No such file or directory
> ./configure: line 12212: test: too many arguments
> ./configure: line 12215: test: -gt: unary operator expected
> broken libtool - use libtool v1.4+; no versions
>
> Насколько я понимаю, после того, как сборка libalsa будет исправлена, и
> зафиксенная libalsa попадёт в Сизиф, придётся пересобрать те пакеты,
> которые уже успели собрать с кривособранной libalsa.
>
> P.S. Валера, читай логи сборки своих пакетов внимательнее, пожалуйста.
ага... я еще и виноват
--
Valery V. Inozemtsev
[-- Attachment #2: Эта часть сообщения подписана цифровой подписью --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1)
2009-05-17 6:12 ` [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1) Alexey Tourbin
` (2 preceding siblings ...)
2009-05-17 13:28 ` [devel] libalsa ABI breakage Dmitry V. Levin
@ 2009-05-17 14:07 ` Sergey Vlasov
2009-05-17 15:20 ` Sergey Vlasov
3 siblings, 1 reply; 30+ messages in thread
From: Sergey Vlasov @ 2009-05-17 14:07 UTC (permalink / raw)
To: devel
[-- Attachment #1: Type: text/plain, Size: 1254 bytes --]
On Sun, May 17, 2009 at 10:12:09AM +0400, Alexey Tourbin wrote:
> После обновления 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 или libtool:
http://git.altlinux.org/tasks/6474/build/1/x86_64/log
checking for versioned symbols... grep: libtool: No such file or directory
./configure: line 12212: test: too many arguments
./configure: line 12215: test: -gt: unary operator expected
broken libtool - use libtool v1.4+; no versions
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa ABI breakage
2009-05-17 13:32 ` Dmitry V. Levin
@ 2009-05-17 14:11 ` Valery V. Inozemtsev
2009-05-17 14:26 ` Dmitry V. Levin
0 siblings, 1 reply; 30+ messages in thread
From: Valery V. Inozemtsev @ 2009-05-17 14:11 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 590 bytes --]
> > checking for versioned symbols... grep: libtool: No such file or directory
> > ./configure: line 12212: test: too many arguments
> > ./configure: line 12215: test: -gt: unary operator expected
> > broken libtool - use libtool v1.4+; no versions
>
> Оно пытается узнать версию файла libtool, который на этой стадии сборки
> ещё не создан.
это я тоже заметил
task #6630 с исправленной 1.0.20-alt2
осталось выявить пострадавших
--
Valery V. Inozemtsev
[-- Attachment #2: Эта часть сообщения подписана цифровой подписью --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1)
2009-05-17 12:54 ` Alexey Tourbin
@ 2009-05-17 14:21 ` Afanasov Dmitry
2009-05-17 14:26 ` Valery V. Inozemtsev
0 siblings, 1 reply; 30+ messages in thread
From: Afanasov Dmitry @ 2009-05-17 14:21 UTC (permalink / raw)
To: devel
[-- Attachment #1: Type: text/plain, Size: 1718 bytes --]
On Sun, May 17, 2009 at 04:54:07PM +0400, Alexey Tourbin wrote:
> On Sun, May 17, 2009 at 11:30:51AM +0400, Afanasov Dmitry 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:
> > > [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.
> > причем:
> > 1. только на x86_64
> > 2. лечится добавлением -ldl -lasound -lm
>
> Мне представляется, что проблема гораздо серьезнее, так что не надо её
> лечить "по месту". Проблема состоит в том, что нарушается сопоставление
> между названиями ABI интерфейсов и входящими в них символами. Такие
> нарушения сейчас в явном виде никак не отлавливаются, и это может очень
> плохо кончиться.
интересно, значит я правильно просто выключил сборку пострадавших утилит.
освежится alsa, или кто сломался, отправлю на пересборку, мне как раз с
yasm'ом новым собрать надо.
--
С уважением
Афанасов Дмитрий
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1)
2009-05-17 14:21 ` Afanasov Dmitry
@ 2009-05-17 14:26 ` Valery V. Inozemtsev
2009-05-17 15:16 ` Afanasov Dmitry
0 siblings, 1 reply; 30+ messages in thread
From: Valery V. Inozemtsev @ 2009-05-17 14:26 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 273 bytes --]
[...]
> освежится alsa,
освежилась. цветет и пахнет
> или кто сломался, отправлю на пересборку, мне как раз с
> yasm'ом новым собрать надо.
--
Valery V. Inozemtsev
[-- Attachment #2: Эта часть сообщения подписана цифровой подписью --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa ABI breakage
2009-05-17 14:11 ` Valery V. Inozemtsev
@ 2009-05-17 14:26 ` Dmitry V. Levin
2009-05-17 14:33 ` Valery V. Inozemtsev
0 siblings, 1 reply; 30+ messages in thread
From: Dmitry V. Levin @ 2009-05-17 14:26 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 936 bytes --]
On Sun, May 17, 2009 at 06:11:09PM +0400, Valery V. Inozemtsev wrote:
> > > checking for versioned symbols... grep: libtool: No such file or directory
> > > ./configure: line 12212: test: too many arguments
> > > ./configure: line 12215: test: -gt: unary operator expected
> > > broken libtool - use libtool v1.4+; no versions
> >
> > Оно пытается узнать версию файла libtool, который на этой стадии сборки
> > ещё не создан.
>
> это я тоже заметил
> task #6630 с исправленной 1.0.20-alt2
> осталось выявить пострадавших
Слинкованные с libasound.so.2, собранные после libalsa-1.0.20-alt1.src.rpm:
May 17 03:22 mplayer-1.0-alt35.29311.1.src.rpm
May 16 15:25 gimp-2.6.6-alt3.src.rpm
May 15 18:50 vice-2.1-alt2.src.rpm
May 15 17:52 qmmp-0.3.0-alt0.1.svn949.src.rpm
May 15 15:39 alsa-tools-1.0.20-alt1.src.rpm
May 15 15:32 alsa-utils-1.0.20-alt1.src.rpm
May 15 15:32 alsa-plugins-1.0.20-alt1.src.rpm
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa ABI breakage
2009-05-17 14:26 ` Dmitry V. Levin
@ 2009-05-17 14:33 ` Valery V. Inozemtsev
2009-05-17 15:05 ` Alexey Tourbin
0 siblings, 1 reply; 30+ messages in thread
From: Valery V. Inozemtsev @ 2009-05-17 14:33 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 689 bytes --]
> > task #6630 с исправленной 1.0.20-alt2
> > осталось выявить пострадавших
>
> Слинкованные с libasound.so.2, собранные после libalsa-1.0.20-alt1.src.rpm:
>
> May 17 03:22 mplayer-1.0-alt35.29311.1.src.rpm
> May 16 15:25 gimp-2.6.6-alt3.src.rpm
> May 15 18:50 vice-2.1-alt2.src.rpm
> May 15 17:52 qmmp-0.3.0-alt0.1.svn949.src.rpm
> May 15 15:39 alsa-tools-1.0.20-alt1.src.rpm
> May 15 15:32 alsa-utils-1.0.20-alt1.src.rpm
> May 15 15:32 alsa-plugins-1.0.20-alt1.src.rpm
3 последних работают. как проверить неработоспособность?
--
Valery V. Inozemtsev
[-- Attachment #2: Эта часть сообщения подписана цифровой подписью --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa ABI breakage
2009-05-17 14:33 ` Valery V. Inozemtsev
@ 2009-05-17 15:05 ` Alexey Tourbin
2009-05-17 15:08 ` Valery V. Inozemtsev
2009-05-17 16:33 ` Sergey Vlasov
0 siblings, 2 replies; 30+ messages in thread
From: Alexey Tourbin @ 2009-05-17 15:05 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 791 bytes --]
On Sun, May 17, 2009 at 06:33:43PM +0400, Valery V. Inozemtsev wrote:
> > > task #6630 с исправленной 1.0.20-alt2
> > > осталось выявить пострадавших
> >
> > Слинкованные с libasound.so.2, собранные после libalsa-1.0.20-alt1.src.rpm:
> >
> > May 17 03:22 mplayer-1.0-alt35.29311.1.src.rpm
> > May 16 15:25 gimp-2.6.6-alt3.src.rpm
> > May 15 18:50 vice-2.1-alt2.src.rpm
> > May 15 17:52 qmmp-0.3.0-alt0.1.svn949.src.rpm
> > May 15 15:39 alsa-tools-1.0.20-alt1.src.rpm
> > May 15 15:32 alsa-utils-1.0.20-alt1.src.rpm
> > May 15 15:32 alsa-plugins-1.0.20-alt1.src.rpm
>
> 3 последних работают. как проверить неработоспособность?
Если с новым (исправленным) пакетом libalsa команда 'ldd -r'
не ругается (на все файлы из этих пакетов), то в принципе можно
не пересобирать.
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa ABI breakage
2009-05-17 15:05 ` Alexey Tourbin
@ 2009-05-17 15:08 ` Valery V. Inozemtsev
2009-05-17 15:52 ` Max Ivanov
2009-05-17 16:33 ` Sergey Vlasov
1 sibling, 1 reply; 30+ messages in thread
From: Valery V. Inozemtsev @ 2009-05-17 15:08 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 1171 bytes --]
В Вск, 17/05/2009 в 19:05 +0400, Alexey Tourbin пишет:
> On Sun, May 17, 2009 at 06:33:43PM +0400, Valery V. Inozemtsev wrote:
> > > > task #6630 с исправленной 1.0.20-alt2
> > > > осталось выявить пострадавших
> > >
> > > Слинкованные с libasound.so.2, собранные после libalsa-1.0.20-alt1.src.rpm:
> > >
> > > May 17 03:22 mplayer-1.0-alt35.29311.1.src.rpm
> > > May 16 15:25 gimp-2.6.6-alt3.src.rpm
> > > May 15 18:50 vice-2.1-alt2.src.rpm
> > > May 15 17:52 qmmp-0.3.0-alt0.1.svn949.src.rpm
> > > May 15 15:39 alsa-tools-1.0.20-alt1.src.rpm
> > > May 15 15:32 alsa-utils-1.0.20-alt1.src.rpm
> > > May 15 15:32 alsa-plugins-1.0.20-alt1.src.rpm
> >
> > 3 последних работают. как проверить неработоспособность?
>
> Если с новым (исправленным) пакетом libalsa команда 'ldd -r'
> не ругается (на все файлы из этих пакетов), то в принципе можно
> не пересобирать.
нет, не ругается
--
Valery V. Inozemtsev
[-- Attachment #2: Эта часть сообщения подписана цифровой подписью --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1)
2009-05-17 14:26 ` Valery V. Inozemtsev
@ 2009-05-17 15:16 ` Afanasov Dmitry
0 siblings, 0 replies; 30+ messages in thread
From: Afanasov Dmitry @ 2009-05-17 15:16 UTC (permalink / raw)
To: devel
[-- Attachment #1: Type: text/plain, Size: 243 bytes --]
On Sun, May 17, 2009 at 06:26:13PM +0400, Valery V. Inozemtsev wrote:
> [...]
> > освежится alsa,
>
> освежилась. цветет и пахнет
как жешь вы ж быстро ж жешь :)
понял, отправляю на пересборку.
--
С уважением
Афанасов Дмитрий
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1)
2009-05-17 14:07 ` [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1) Sergey Vlasov
@ 2009-05-17 15:20 ` Sergey Vlasov
2009-05-17 15:43 ` Valery V. Inozemtsev
0 siblings, 1 reply; 30+ messages in thread
From: Sergey Vlasov @ 2009-05-17 15:20 UTC (permalink / raw)
To: devel
[-- Attachment #1: Type: text/plain, Size: 3998 bytes --]
On Sun, May 17, 2009 at 06:07:08PM +0400, Sergey Vlasov wrote:
> On Sun, May 17, 2009 at 10:12:09AM +0400, Alexey Tourbin wrote:
> > После обновления 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 или libtool:
>
> http://git.altlinux.org/tasks/6474/build/1/x86_64/log
>
> checking for versioned symbols... grep: libtool: No such file or directory
> ./configure: line 12212: test: too many arguments
> ./configure: line 12215: test: -gt: unary operator expected
> broken libtool - use libtool v1.4+; no versions
На самом деле там несколько ошибок, одна из которых (сломавшаяся
проверка версии libtool) вызвала проявление второй (неверная
информация в Versions.in).
Проверка в configure.in сейчас выглядит следующим образом:
dnl Check for versioned symbols
AC_MSG_CHECKING(for versioned symbols)
AC_ARG_WITH(versioned,
AS_HELP_STRING([--with-versioned],
[shared library will be compiled with versioned symbols (default = yes)]),
versioned="$withval", versioned="yes")
if test "$versioned" = "yes"; then
# it seems that GNU ld versions since 2.10 are not broken
xres=$macro_version
major=`echo $xres | cut -d . -f 1`
minor=`echo $xres | cut -d . -f 2`
pass=0
if test $major -eq 1 -a $minor -gt 3; then
pass=1
else
if test $major -gt 1; then
pass=1
fi
fi
if test $pass -eq 1; then
AC_DEFINE(VERSIONED_SYMBOLS,,[compiled with versioned symbols])
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(broken libtool - use libtool v1.4+; no versions)
fi
else
AC_MSG_RESULT(no)
fi
AM_CONDITIONAL(VERSIONED_SYMBOLS, test x$versioned = xyes)
(раньше xres=... был другой, там и происходили ошибки). При этом,
если тест версии libtool не проходил, получалось, что
AC_DEFINE(VERSIONED_SYMBOLS) не определялся, но на
AM_CONDITIONAL(VERSIONED_SYMBOLS) это не влияло; в результате в
src/Makefile.am в любом случае ставилось
VSYMS = -Wl,--version-script=Versions
При отсутствии AC_DEFINE(VERSIONED_SYMBOLS) в коде libalsa версии
символов не назначаются при компиляции (см. include/alsa-symbols.h), в
этом случае для каждого символа может существовать только одна версия,
которая назначается в файле src/Versions.in при сборке разделяемой
библиотеки. Однако для некоторых символов snd_pcm_sw_params_* (список
в src/pcm/pcm.c, для них используется макрос OBSOLETE1) в
src/Versions.in не прописана версия ALSA_0.9.0rc4, в результате при
такой сборке для них по умолчанию назначается версия ALSA_0.9, что
неправильно. Других изменений в ABI существовавших ранее функций в
libalsa не было (только добавления новых функций), поэтому, если бы не
эта ошибка в Versions.in, сборка без поддержки symbol versioning никак
бы не проявилась (перестали бы работать только очень старые бинарники,
собранные с древними версиями libalsa до 0.9.0rc4). В нормальной
ситуации эта ошибка не проявляется, поскольку версии назначаются при
компиляции через asm(".symver ...").
Пересобирать бинарники, собранные с неправильной версией libalsa,
необходимо, иначе при вызовах функций snd_pcm_sw_params_*, для которых
была установлена неправильная версия, они будут падать.
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1)
2009-05-17 15:20 ` Sergey Vlasov
@ 2009-05-17 15:43 ` Valery V. Inozemtsev
2009-05-17 16:39 ` Sergey Vlasov
0 siblings, 1 reply; 30+ messages in thread
From: Valery V. Inozemtsev @ 2009-05-17 15:43 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 731 bytes --]
[..]
> Пересобирать бинарники, собранные с неправильной версией libalsa,
> необходимо, иначе при вызовах функций snd_pcm_sw_params_*, для которых
> была установлена неправильная версия, они будут падать.
$ readelf -a /usr/bin/aplay | grep snd_pcm_info_get_name@
3: 00000000 0 FUNC GLOBAL DEFAULT UND
snd_pcm_info_get_name@ALSA_0.9 (3)
$ readelf -a /usr/lib/libasound.so.2 | grep snd_pcm_info_get_name@
1137: 00042e40 76 FUNC GLOBAL DEFAULT 12
snd_pcm_info_get_name@@ALSA_0.9
как оно при этом работает?
--
Valery V. Inozemtsev
[-- Attachment #2: Эта часть сообщения подписана цифровой подписью --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa ABI breakage
2009-05-17 15:08 ` Valery V. Inozemtsev
@ 2009-05-17 15:52 ` Max Ivanov
2009-05-17 17:31 ` Sergey Vlasov
0 siblings, 1 reply; 30+ messages in thread
From: Max Ivanov @ 2009-05-17 15:52 UTC (permalink / raw)
To: ALT Linux Team development discussions
еще timidity в список на пересборку занесите. С вновь приплывшей
libalsa не работает.
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa ABI breakage
2009-05-17 15:05 ` Alexey Tourbin
2009-05-17 15:08 ` Valery V. Inozemtsev
@ 2009-05-17 16:33 ` Sergey Vlasov
2009-05-17 16:47 ` Alexey Tourbin
1 sibling, 1 reply; 30+ messages in thread
From: Sergey Vlasov @ 2009-05-17 16:33 UTC (permalink / raw)
To: devel
[-- Attachment #1: Type: text/plain, Size: 1112 bytes --]
On Sun, May 17, 2009 at 07:05:16PM +0400, Alexey Tourbin wrote:
> On Sun, May 17, 2009 at 06:33:43PM +0400, Valery V. Inozemtsev wrote:
> > > > task #6630 с исправленной 1.0.20-alt2
> > > > осталось выявить пострадавших
> > >
> > > Слинкованные с libasound.so.2, собранные после libalsa-1.0.20-alt1.src.rpm:
> > >
> > > May 17 03:22 mplayer-1.0-alt35.29311.1.src.rpm
> > > May 16 15:25 gimp-2.6.6-alt3.src.rpm
> > > May 15 18:50 vice-2.1-alt2.src.rpm
> > > May 15 17:52 qmmp-0.3.0-alt0.1.svn949.src.rpm
> > > May 15 15:39 alsa-tools-1.0.20-alt1.src.rpm
> > > May 15 15:32 alsa-utils-1.0.20-alt1.src.rpm
> > > May 15 15:32 alsa-plugins-1.0.20-alt1.src.rpm
> >
> > 3 последних работают. как проверить неработоспособность?
>
> Если с новым (исправленным) пакетом libalsa команда 'ldd -r'
> не ругается (на все файлы из этих пакетов), то в принципе можно
> не пересобирать.
В данном случае это не показатель - для некоторых символов назначалась
неверная, но при этом существующая, версия, в результате ldd -r
ругаться не будет, но при выполнении будет вызываться функция со
старым ABI.
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1)
2009-05-17 15:43 ` Valery V. Inozemtsev
@ 2009-05-17 16:39 ` Sergey Vlasov
0 siblings, 0 replies; 30+ messages in thread
From: Sergey Vlasov @ 2009-05-17 16:39 UTC (permalink / raw)
To: devel
[-- Attachment #1: Type: text/plain, Size: 1084 bytes --]
On Sun, May 17, 2009 at 07:43:41PM +0400, Valery V. Inozemtsev wrote:
> [..]
> > Пересобирать бинарники, собранные с неправильной версией libalsa,
> > необходимо, иначе при вызовах функций snd_pcm_sw_params_*, для которых
> > была установлена неправильная версия, они будут падать.
>
> $ readelf -a /usr/bin/aplay | grep snd_pcm_info_get_name@
> 3: 00000000 0 FUNC GLOBAL DEFAULT UND
> snd_pcm_info_get_name@ALSA_0.9 (3)
>
> $ readelf -a /usr/lib/libasound.so.2 | grep snd_pcm_info_get_name@
> 1137: 00042e40 76 FUNC GLOBAL DEFAULT 12
> snd_pcm_info_get_name@@ALSA_0.9
>
> как оно при этом работает?
Тут как раз всё правильно. "@@" обозначает версию, используемую по
умолчанию при сборке с этой библиотекой; у snd_pcm_info_get_name
только одна реализация, с которой проблем вроде бы нет.
Сравнивать в данном случае нужно вывод
readelf -s $FILE | sed -ne '4,$p' | grep -v UNDEF | cut -c32- | LC_ALL=C sort -k5
для старой и новой libasound.so.2; различия GLOBAL/WEAK при этом не
особо важны, а вот изменение версий существенно.
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa ABI breakage
2009-05-17 16:33 ` Sergey Vlasov
@ 2009-05-17 16:47 ` Alexey Tourbin
2009-05-17 17:22 ` Sergey Vlasov
0 siblings, 1 reply; 30+ messages in thread
From: Alexey Tourbin @ 2009-05-17 16:47 UTC (permalink / raw)
To: devel
[-- Attachment #1: Type: text/plain, Size: 1002 bytes --]
On Sun, May 17, 2009 at 08:33:04PM +0400, Sergey Vlasov wrote:
> > > > May 17 03:22 mplayer-1.0-alt35.29311.1.src.rpm
> > > > May 16 15:25 gimp-2.6.6-alt3.src.rpm
> > > > May 15 18:50 vice-2.1-alt2.src.rpm
> > > > May 15 17:52 qmmp-0.3.0-alt0.1.svn949.src.rpm
> > > > May 15 15:39 alsa-tools-1.0.20-alt1.src.rpm
> > > > May 15 15:32 alsa-utils-1.0.20-alt1.src.rpm
> > > > May 15 15:32 alsa-plugins-1.0.20-alt1.src.rpm
> > >
> > > 3 последних работают. как проверить неработоспособность?
> >
> > Если с новым (исправленным) пакетом libalsa команда 'ldd -r'
> > не ругается (на все файлы из этих пакетов), то в принципе можно
> > не пересобирать.
>
> В данном случае это не показатель - для некоторых символов назначалась
> неверная, но при этом существующая, версия, в результате ldd -r
> ругаться не будет, но при выполнении будет вызываться функция со
> старым ABI.
Увы. А что значит "неверная"? Там разные прототипы у реализаций или
в чем ещё несовместимость заключается?
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa ABI breakage
2009-05-17 16:47 ` Alexey Tourbin
@ 2009-05-17 17:22 ` Sergey Vlasov
2009-05-18 0:25 ` Dmitry V. Levin
0 siblings, 1 reply; 30+ messages in thread
From: Sergey Vlasov @ 2009-05-17 17:22 UTC (permalink / raw)
To: devel
[-- Attachment #1: Type: text/plain, Size: 1892 bytes --]
On Sun, May 17, 2009 at 08:47:46PM +0400, Alexey Tourbin wrote:
> On Sun, May 17, 2009 at 08:33:04PM +0400, Sergey Vlasov wrote:
> > > > > May 17 03:22 mplayer-1.0-alt35.29311.1.src.rpm
> > > > > May 16 15:25 gimp-2.6.6-alt3.src.rpm
> > > > > May 15 18:50 vice-2.1-alt2.src.rpm
> > > > > May 15 17:52 qmmp-0.3.0-alt0.1.svn949.src.rpm
> > > > > May 15 15:39 alsa-tools-1.0.20-alt1.src.rpm
> > > > > May 15 15:32 alsa-utils-1.0.20-alt1.src.rpm
> > > > > May 15 15:32 alsa-plugins-1.0.20-alt1.src.rpm
> > > >
> > > > 3 последних работают. как проверить неработоспособность?
> > >
> > > Если с новым (исправленным) пакетом libalsa команда 'ldd -r'
> > > не ругается (на все файлы из этих пакетов), то в принципе можно
> > > не пересобирать.
> >
> > В данном случае это не показатель - для некоторых символов назначалась
> > неверная, но при этом существующая, версия, в результате ldd -r
> > ругаться не будет, но при выполнении будет вызываться функция со
> > старым ABI.
>
> Увы. А что значит "неверная"? Там разные прототипы у реализаций или
> в чем ещё несовместимость заключается?
Разные прототипы (в основном переход на передачу значения по
указателю, а сама функция возвращает код ошибки - в первоначальном
варианте не было возможности вернуть этот код).
Старый вариант:
snd_pcm_tstamp_t snd_pcm_sw_params_get_tstamp_mode(const snd_pcm_sw_params_t *params);
Новый вариант:
int snd_pcm_sw_params_get_tstamp_mode(const snd_pcm_sw_params_t *params, snd_pcm_tstamp_t *val);
(это как раз одна из сломанных функций).
Кстати, нашёл там ещё одну опечатку - в include/pcm_old.h:
asm(".symver snd_pcm_sw_params_get_stop_threshold,snd_pcm_sw_params_set_stop_threshold@ALSA_0.9");
(этот кусок используется только в #ifdef ALSA_PCM_OLD_SW_PARAMS_API -
т.е., при сборке программ, которые так и не были переведены на
использование нового API).
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa ABI breakage
2009-05-17 15:52 ` Max Ivanov
@ 2009-05-17 17:31 ` Sergey Vlasov
2009-05-24 10:30 ` Michael Shigorin
0 siblings, 1 reply; 30+ messages in thread
From: Sergey Vlasov @ 2009-05-17 17:31 UTC (permalink / raw)
To: devel
[-- Attachment #1: Type: text/plain, Size: 457 bytes --]
On Sun, May 17, 2009 at 07:52:04PM +0400, Max Ivanov wrote:
> еще timidity в список на пересборку занесите. С вновь приплывшей
> libalsa не работает.
libalsa-1.0.20-alt1 - это как раз сломанная. А TiMidity++ до сих пор
использует #define ALSA_PCM_OLD_HW_PARAMS_API; #define
ALSA_PCM_OLD_SW_PARAMS_API - вот эти старые функции и отвалились в той
сборке libalsa (а пересборка TiMidity++ со сломанной таким образом
libalsa вообще не должна пройти).
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa ABI breakage
2009-05-17 17:22 ` Sergey Vlasov
@ 2009-05-18 0:25 ` Dmitry V. Levin
0 siblings, 0 replies; 30+ messages in thread
From: Dmitry V. Levin @ 2009-05-18 0:25 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 540 bytes --]
On Sun, May 17, 2009 at 09:22:35PM +0400, Sergey Vlasov wrote:
[...]
> Кстати, нашёл там ещё одну опечатку - в include/pcm_old.h:
>
> asm(".symver snd_pcm_sw_params_get_stop_threshold,snd_pcm_sw_params_set_stop_threshold@ALSA_0.9");
При вызове "set" будет вызван "get"? Чем ты находишь такие опечатки?
> (этот кусок используется только в #ifdef ALSA_PCM_OLD_SW_PARAMS_API -
> т.е., при сборке программ, которые так и не были переведены на
> использование нового API).
Может быть, ещё не поздно исправить? :)
--
ldv
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa ABI breakage
2009-05-17 17:31 ` Sergey Vlasov
@ 2009-05-24 10:30 ` Michael Shigorin
0 siblings, 0 replies; 30+ messages in thread
From: Michael Shigorin @ 2009-05-24 10:30 UTC (permalink / raw)
To: devel
On Sun, May 17, 2009 at 09:31:22PM +0400, Sergey Vlasov wrote:
> > еще timidity в список на пересборку занесите. С вновь
> > приплывшей libalsa не работает.
> libalsa-1.0.20-alt1 - это как раз сломанная. А TiMidity++ до
> сих пор использует #define ALSA_PCM_OLD_HW_PARAMS_API; #define
> ALSA_PCM_OLD_SW_PARAMS_API - вот эти старые функции и
> отвалились в той сборке libalsa (а пересборка TiMidity++ со
> сломанной таким образом libalsa вообще не должна пройти).
TiMidity++ отдам в хорошие руки -- давненько не пользовался,
хотя рассылку пользовательскую и сейчас порой читаю.
vice проверил -- по крайней мере не упал:
Sound: Opened device `alsa', speed 22050Hz, fragment size 21ms, buffer size 170ms
reSID: MOS6581, filter on, sampling rate 22050Hz - fast
Drive 8: RESET.
Sound: Warning - Buffer drained
Sound: Warning - Buffer drained
Exiting...
Sound: Closing device `alsa'
на всякий отправил пересобраться.
--
---- WBR, Michael Shigorin <mike@altlinux.ru>
------ Linux.Kiev http://www.linux.kiev.ua/
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa ABI breakage
2009-05-17 13:33 ` Valery V. Inozemtsev
@ 2009-05-24 10:32 ` Michael Shigorin
2009-05-24 12:17 ` Damir Shayhutdinov
0 siblings, 1 reply; 30+ messages in thread
From: Michael Shigorin @ 2009-05-24 10:32 UTC (permalink / raw)
To: ALT Devel discussion list
On Sun, May 17, 2009 at 05:33:39PM +0400, Valery V. Inozemtsev wrote:
> > В новом логе это выглядит так:
> > checking for versioned symbols... grep: libtool: No such file or directory
[...]
> > P.S. Валера, читай логи сборки своих пакетов внимательнее, пожалуйста.
> ага... я еще и виноват
Не знаю, кто виноват, но я бы тоже не заметил.
Можно ли что-либо предпринять для автоматизации чтения логов
на предмет типичных ошибок? Придумали же logwatch :)
--
---- WBR, Michael Shigorin <mike@altlinux.ru>
------ Linux.Kiev http://www.linux.kiev.ua/
^ permalink raw reply [flat|nested] 30+ messages in thread
* Re: [devel] libalsa ABI breakage
2009-05-24 10:32 ` Michael Shigorin
@ 2009-05-24 12:17 ` Damir Shayhutdinov
0 siblings, 0 replies; 30+ messages in thread
From: Damir Shayhutdinov @ 2009-05-24 12:17 UTC (permalink / raw)
To: ALT Linux Team development discussions
> Не знаю, кто виноват, но я бы тоже не заметил.
>
> Можно ли что-либо предпринять для автоматизации чтения логов
> на предмет типичных ошибок? Придумали же logwatch :)
Наверное нужны diff-ы логов, особенно интересуют диффы вывода ./configure
Я бы не отказался от того, что при прохождении свежего пакета в Сизиф
мне бы на почту скидывался diff процесса сборки между новой версией и
старой.
^ permalink raw reply [flat|nested] 30+ messages in thread
end of thread, other threads:[~2009-05-24 12:17 UTC | newest]
Thread overview: 30+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-05-17 6:12 ` [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1) Alexey Tourbin
2009-05-17 7:30 ` Afanasov Dmitry
2009-05-17 12:54 ` Alexey Tourbin
2009-05-17 14:21 ` Afanasov Dmitry
2009-05-17 14:26 ` Valery V. Inozemtsev
2009-05-17 15:16 ` Afanasov Dmitry
2009-05-17 13:07 ` Dmitry V. Levin
2009-05-17 13:27 ` Alexey Tourbin
2009-05-17 13:28 ` Valery V. Inozemtsev
2009-05-17 13:28 ` [devel] libalsa ABI breakage Dmitry V. Levin
2009-05-17 13:32 ` Dmitry V. Levin
2009-05-17 14:11 ` Valery V. Inozemtsev
2009-05-17 14:26 ` Dmitry V. Levin
2009-05-17 14:33 ` Valery V. Inozemtsev
2009-05-17 15:05 ` Alexey Tourbin
2009-05-17 15:08 ` Valery V. Inozemtsev
2009-05-17 15:52 ` Max Ivanov
2009-05-17 17:31 ` Sergey Vlasov
2009-05-24 10:30 ` Michael Shigorin
2009-05-17 16:33 ` Sergey Vlasov
2009-05-17 16:47 ` Alexey Tourbin
2009-05-17 17:22 ` Sergey Vlasov
2009-05-18 0:25 ` Dmitry V. Levin
2009-05-17 13:33 ` Valery V. Inozemtsev
2009-05-24 10:32 ` Michael Shigorin
2009-05-24 12:17 ` Damir Shayhutdinov
2009-05-17 14:07 ` [devel] libalsa (FAILED mplayer.git=1.0-alt35.29311.1) Sergey Vlasov
2009-05-17 15:20 ` Sergey Vlasov
2009-05-17 15:43 ` Valery V. Inozemtsev
2009-05-17 16:39 ` Sergey Vlasov
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git