Menu

Main Menu
Talk Get Daily Search

Member's Online

    User Name
    Password

    Porting MythTV ARM assembly optimizations/newer toolchain available?

    Reply
    yani | # 1 | 2008-03-27, 14:07 | Report

    Hi everyone,

    I've been busy porting mythtv to OS2008 recently, however I haven't been able to include the ARMv4l/ARM5vte or ARMV6 assembler optimized libavcodec code because the default toolchain that scratchbox uses errors out with the following error whenever I try

    Originally Posted by
    gcc -c -pipe -fomit-frame-pointer -O3 -DNDEBUG -fPIC -DPIC -pthread -g -Wall -Wno-switch -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -w -D_REENTRANT -DPIC -fPIC -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DPREFIX=\"/usr\" -DLIBDIR=\"/usr/lib\" -DHAVE_AV_CONFIG_H -D_LARGEFILE_SOURCE -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I. -I.. -I../.. -I../libavutil -I../libswscale -I/targets/CHINOOK_ARMEL/usr/include/qt3 -o dsputil.o dsputil.c
    dsputil.c: In function `rd8x8_c':
    dsputil.c:3514: internal compiler error: in assign_stack_temp_for_type, at function.c:658
    Please submit a full bug report,
    with preprocessed source if appropriate.
    Send email to arm-gnu@codesourcery.com for instructions.
    make[3]: *** [dsputil.o] Error 1
    make[3]: Leaving directory `/home/yani/mythbuild/mythtv-0.21/libs/libavcodec'
    make[2]: *** [sub-libavcodec] Error 2
    make[2]: Leaving directory `/home/yani/mythbuild/mythtv-0.21/libs'
    make[1]: *** [sub-libs] Error 2
    make[1]: Leaving directory `/home/yani/mythbuild/mythtv-0.21'
    make: *** [build-stamp] Error 2
    However when I use the cs2007q3-glibc2.5-arm7 toolchain in the scratchbox everything compiles fine, but trying to run on the N810 I get

    Originally Posted by
    Nokia-N810-50-2:~# mythfrontend
    mythfrontend: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by mythfrontend)
    So obviously the cs2007q3-glibc2.5-arm7 toolchain is compiled against a newer glibc++ than on the devices :-(

    Does anyone have a toolchain that would be able to deal with the assembly code, or have any pointers on how to build my own version of the cs2007q3-glibc2.5-arm7 toolchain against the older glibc++?

    Edit | Forward | Quote | Quick Reply | Thanks

     
    Serge | # 2 | 2008-03-27, 16:06 | Report

    This problem has been already fixed in ffmpeg SVN and the patch (with the explanation of the problem - both gcc and ffmpeg are at fault) can be found here:
    http://lists.mplayerhq.hu/pipermail/...ry/042058.html

    Edit | Forward | Quote | Quick Reply | Thanks

     
    yani | # 3 | 2008-03-27, 16:25 | Report

    Thanks a lot! :-) I'm going to try the patch now, perhaps I should just use your mplayer libavcodec code though, were there any other significant changes you made to it?

    By the way what tool chain do you use for building mplayer?

    Edit | Forward | Quote | Quick Reply | Thanks

    Last edited by yani; 2008-03-27 at 16:27.

     
    Serge | # 4 | 2008-03-27, 17:15 | Report

    Originally Posted by yani View Post
    Thanks a lot! :-) I'm going to try the patch now, perhaps I should just use your mplayer libavcodec code though, were there any other significant changes you made to it?
    There were some changes. But upgrade to more recent upstream version is now needed anyway.

    Originally Posted by
    By the way what tool chain do you use for building mplayer?
    Just a standard toolchain from maemo SDK.

    Edit | Forward | Quote | Quick Reply | Thanks

     
vBulletin® Version 3.8.8
Normal Logout