LINUX.ORG.RU

[!ждем_ебилдов] mplayer-vaapi-git


0

1

Поскольку mplayer-vaapi из оверлея у меня почему-то перестал собираться (после правки ебилда из stuff, там ссылка сменилась)

# emerge -av mplayer-vaapi
[ebuild   R    ] media-video/mplayer-vaapi-20110127  0 kB [1]
 [1] /usr/local/portage

/usr/include/bits/stdio2.h:65:3: warning: call to __builtin___snprintf_chk will always overflow destination buffer [enabled by default]
cc -MD -MP -O2 -pipe -march=btver1 -Wundef  -Wstrict-prototypes -Wmissing-prototypes -Wdisabled-optimization -Wno-pointer-sign -Wdeclaration-after-statement -std=gnu99  -O2 -pipe -march=btver1 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -Ilibdvdread4 -I. -Iffmpeg  -D_REENTRANT   -D_REENTRANT     -I/usr/include/freetype2   -DFF_API_MAX_STREAMS=0 -I/usr/include/dirac   -I/usr/include/schroedinger-1.0 -I/usr/include/orc-0.4   -c -o libmpcodecs/vd_realvid.o libmpcodecs/vd_realvid.c
cc -MD -MP -O2 -pipe -march=btver1 -Wundef  -Wstrict-prototypes -Wmissing-prototypes -Wdisabled-optimization -Wno-pointer-sign -Wdeclaration-after-statement -std=gnu99  -O2 -pipe -march=btver1 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -Ilibdvdread4 -I. -Iffmpeg  -D_REENTRANT   -D_REENTRANT     -I/usr/include/freetype2   -DFF_API_MAX_STREAMS=0 -I/usr/include/dirac   -I/usr/include/schroedinger-1.0 -I/usr/include/orc-0.4   -c -o libmpcodecs/ad_speex.o libmpcodecs/ad_speex.c
libmpcodecs/vd_mpng.c: In function 'pngReadFN':
libmpcodecs/vd_mpng.c:77:19: error: dereferencing pointer to incomplete type
libmpcodecs/vd_mpng.c: In function 'decode':
libmpcodecs/vd_mpng.c:114:14: error: dereferencing pointer to incomplete type
libmpcodecs/vd_mpng.c:131:68: error: dereferencing pointer to incomplete type
make: *** [libmpcodecs/vd_mpng.o] Ошибка 1
make: *** Ожидание завершения заданий...
>>> Source compiled.
>>> Test phase [not enabled]: media-video/mplayer-vaapi-20110127

>>> Install mplayer-vaapi-20110127 into /var/tmp/portage/media-video/mplayer-vaapi-20110127/image/ category media-video
mv: не удалось выполнить stat для «mplayer-vaapi/mplayer»: Нет такого файла или каталога
!!! dobin: mplayer-vaapi/mplayer-vaapi does not exist
dobin failed
>>> Completed installing mplayer-vaapi-20110127 into /var/tmp/portage/media-video/mplayer-vaapi-20110127/image/

 * QA Notice: file does not exist:
 * 
 *      dobin: mplayer-vaapi/mplayer-vaapi does not exist

 * QA Notice: Package triggers severe warnings which indicate that it
 *            may exhibit random runtime failures.
 * /usr/include/bits/stdio2.h:65:3: warning: call to __builtin___snprintf_chk will always overflow destination buffer [enabled by default]

 * Please do not file a Gentoo bug and instead report the above QA
 * issues directly to the upstream developers of this software.
 * Homepage: http://www.splitted-desktop.com/~gbeauchesne/mplayer-vaapi/

>>> Installing (1 of 1) media-video/mplayer-vaapi-20110127

хотя при этом пакет чудом устанавливается, решил запилить плеер из гита. Собрал отдельно плеер вручную - собрался без ошибок.

Пытаюсь написать ебилд:

# cat /usr/local/portage/media-video/mplayer-vaapi/mplayer-vaapi-9999.ebuild

inherit git-2
 
DESCRIPTION="mplayer with patches add VA API support from git"
HOMEPAGE="http://gitorious.org/vaapi/mplayer"
EGIT_REPO_URI="git://gitorious.org/vaapi/mplayer.git"
EGIT_STORAGE_DIR="${DISTDIR}/egit-src/${P}"
  
LICENSE=""
SLOT="0"
KEYWORDS=""
IUSE=""
   
DEPEND="x11-libs/libva
|| ( x11-libs/xvba-video x11-libs/vdpau-video )
"
RDEPEND="${DEPEND}"

src_unpack() {
        git-2_src_unpack
}

src_install() {
        mv ${PN}/mplayer ${PN}/mplayer-vaapi
        into /usr/local/
        dobin ${PN}/mplayer-vaapi
}

но сборка фейлится

# ebuild /usr/local/portage/media-video/mplayer-vaapi/mplayer-vaapi-9999.ebuild compile
 * checking ebuild checksums ;-) ...                                                                                                                                                     [ ok ]
>>> Unpacking source...
Cloning into bare repository /usr/portage/distfiles/egit-src/mplayer.git...
remote: Counting objects: 36619, done.
remote: Compressing objects: 100% (9603/9603), done.
remote: Total 36619 (delta 27253), reused 36015 (delta 26651)
Receiving objects: 100% (36619/36619), 23.04 MiB | 882 KiB/s, done.
Resolving deltas: 100% (27253/27253), done.
GIT NEW clone -->
   repository:               git://gitorious.org/vaapi/mplayer.git
   at the commit:            d924b0781e57ebfda774941c734a57a75c81aa4b
   branch:                   master
   storage directory:        "/usr/portage/distfiles/egit-src/mplayer.git"
   checkout type:            bare repository
Cloning into /var/tmp/portage/media-video/mplayer-vaapi-9999/work/mplayer-vaapi-9999...
done.
Branch branch-master set up to track remote branch master from origin.
Switched to a new branch 'branch-master'
>>> Unpacked to /var/tmp/portage/media-video/mplayer-vaapi-9999/work/mplayer-vaapi-9999
>>> Source unpacked in /var/tmp/portage/media-video/mplayer-vaapi-9999/work
>>> Compiling source in /var/tmp/portage/media-video/mplayer-vaapi-9999/work/mplayer-vaapi-9999 ...
./configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --libdir=/usr/lib64
No FFmpeg checkout, press enter to download one with git or CTRL+C to abort
Cloning into ffmpeg...
remote: Counting objects: 199187, done.
remote: Compressing objects: 100% (46300/46300), done.
remote: Total 199187 (delta 156131), reused 194534 (delta 152583)
Receiving objects: 100% (199187/199187), 50.83 MiB | 916 KiB/s, done.
Resolving deltas: 100% (156131/156131), done.
Note: checking out 'd93b6340d70f47ab77b2640ee2bbc7524d68b20f'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b new_branch_name

HEAD is now at d93b634... Add dpx encoding regression test.
Unknown parameter: --build=x86_64-pc-linux-gnu
 * ERROR: media-video/mplayer-vaapi-9999 failed (compile phase):
 *   econf failed
 * 
 * Call stack:
 *          ebuild.sh, line  75:  Called src_compile
 *        environment, line 487:  Called _eapi0_src_compile
 *   phase-helpers.sh, line 535:  Called econf
 *   phase-helpers.sh, line 467:  Called die
 * The specific snippet of code:
 *                      die "econf failed"
 * 
 * If you need support, post the output of 'emerge --info =media-video/mplayer-vaapi-9999',
 * the complete build log and the output of 'emerge -pqv =media-video/mplayer-vaapi-9999'.
 * This ebuild is from an overlay named 'x-portage': '/usr/local/portage/'
 * The complete build log is located at '/var/tmp/portage/media-video/mplayer-vaapi-9999/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-video/mplayer-vaapi-9999/temp/environment'.
 * S: '/var/tmp/portage/media-video/mplayer-vaapi-9999/work/mplayer-vaapi-9999'

Причина ошибки скорее всего том, что configure тащит из гита определенную версию ffmpeg'а

# кусок из configure
if ! test -e ffmpeg ; then
    echo "No FFmpeg checkout, press enter to download one with git or CTRL+C to abort"
    read tmp
    if ! git clone git://git.videolan.org/ffmpeg.git ffmpeg ; then
        rm -rf ffmpeg
        echo "Failed to get a FFmpeg checkout"
        exit 1
    fi
    ffrevision=d93b6340d70f47ab77b2640ee2bbc7524d68b20f
    cd ffmpeg && git checkout $ffrevision && cd ..
fi
и .git ffmpeg'а записывается в /usr/portage/distfiles/egit-src/mplayer.git поверх гит файлов mplayer'а.

Вопрос: как можно заставить портаж писать гитовские файлы в другую папку во время ./configure? Читал это, пробовал менять переменные до src_configure(), но не помогло.


Ответ на: комментарий от AlexVIP

Не оно.

btver1 = AMD E-350 (Bobcat)
bdver1 = AMD FX-8xxx/6xxx/4xxx (Bulldozer)

Kadi ()
Ответ на: комментарий от Kadi

Точнее там линейка C-30/50/60, E-240/300/350/450, T-24L/30L/40N/44R/48N/52R/56N, Z-01, а у меня E-350.

Kadi ()

Советую бросить сборку гит-версии... вообще-то проще было бы подпилить mplayer-9999 из /usr/portage/ там как бы почти всё тоже, только вместо svn git. mplayer-1.0_rc4_p20110322-r51 из calculate собирается с vaapi - только счас проверял...

wavilen ()
Ответ на: комментарий от wavilen

> бросить сборку гит-версии
Собственно поступил негентушно-собрал из гита вручную и закинул в /usr/local/bin, благо там всего 1 файл на выходе.

> 20110322 в оверлее нашел только 20110127. И он таки не собирается.

Kadi ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.