Bug 9821 - нет поддержки MP4
: нет поддержки MP4
Status: CLOSED FIXED
: Sisyphus
(All bugs in Sisyphus/faac)
: unstable
: all Linux
: P2 normal
Assigned To:
:
:
:
:
:
  Show dependency tree
 
Reported: 2006-07-27 15:05 by
Modified: 2006-08-30 11:26 (History)


Attachments
libmp4v2 configure patch (538 bytes, patch)
2006-08-07 16:58, Andrei Bulava
no flags Details | Diff
Renewed for 1.25 (1.01 KB, patch)
2006-08-27 19:20, Mikhail Zabaluev
no flags Details | Diff


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2006-07-27 15:05:29
$ faac --help 2>&1 |fgrep MP4
MP4 specific options:
  MP4 support unavailable.

$ rpm -qv faac
faac-1.24-alt2

Я разобрался, что поддержка MP4 включается автоматически при наличии в сборочной
среде libmp4v2.so из пакета libmpeg4ip-devel. Пожалуйста, добавьте
libmpeg4ip-devel в BuildRequires.
------- Comment #1 From 2006-07-29 03:48:47 -------
Fixed in faac-1.24-alt3
------- Comment #2 From 2006-08-07 10:55:26 -------
$ rpm -qf /usr/bin/faac
faac-1.24-alt3

$ faac --help 2>&1 | fgrep MP4
MP4 specific options:
  MP4 support unavailable.

Буду проверять, почему так, в hasher'е.
------- Comment #3 From 2006-08-07 16:45:24 -------
Попробовал в hasher и открыл для себя следующее.

./configure --build=i586-alt-linux --host=i586-alt-linux --prefix=/usr
--exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc
--datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib
--libexecdir=/usr/lib --localstatedir=/var/lib --sharedstatedir=/usr/com
--mandir=/usr/share/man --infodir=/usr/share/info --disable-dependency-tracking
--without-included-gettext --disable-static

checking for MP4MetadataDelete in -lmp4v2... no
configure: *** Building without MP4 support ***

config.log:

configure:22505: checking for MP4MetadataDelete in -lmp4v2
configure:22535: i586-alt-linux-gcc -o conftest -pipe -Wall -O2 -march=i586
-mtune=pentium4   conftest.c -lmp4v2 -lstdc++  >&5
/usr/bin/ld: cannot find -lstdc++
collect2: ld returned 1 exit status
configure:22541: $? = 1
configure: failed program was:

<skip />

configure:22567: result: no
configure:22579: *** Building without MP4 support ***

Рискну предположить, что -lstdc++ вставили потому, что в более других
дистрибутивах libmp4v2.so.* не скомпонована с -lstdc++.

Так что есть два варианта, один из которых простой и очевидный: добавить в
BuildRequires ещё и libstdc++-devel; а второй, более прямой: оторвать -lstdc++
в
configure.in. Наверное, учитывая --as-needed, первый вариант в итоге не сделает
много хуже.
------- Comment #4 From 2006-08-07 16:58:42 -------
Created an attachment (id=1556) [details]
libmp4v2 configure patch

С этим патчем я пересобрал faac с поддержкой MP4 в hasher без добавления
BuildRequires: libstdc++-devel
------- Comment #5 From 2006-08-18 20:28:19 -------
(In reply to comment #3)

> Рискну предположить, что -lstdc++ вставили потому, что в более других
> дистрибутивах libmp4v2.so.* не скомпонована с -lstdc++.

Именно так, libmp4v2.so.* использует символы из -lstdc++ и поэтому линкуется с
ней. В более других дистрибутивах пока до этого не доросли.
------- Comment #6 From 2006-08-27 19:20:43 -------
Created an attachment (id=1608) [details]
Renewed for 1.25

Похоже, разработчики совсем не использовали внешний libmp4v2 на Unix.
Патч кривоват для upstream, но для пакета сойдет.
------- Comment #7 From 2006-08-27 19:21:19 -------
Fixed in faac-1.25-alt1