mediatomb on crux ppc -RS/6000

Help
2010-10-16
2013-05-30
  • Björn Lundin

    Björn Lundin - 2010-10-16

    Hi!
    I got mediatomb 0.12.1 running on a ppc mac, leopard, via macports - working fine.
    However, I'd like to move it to an RS/6000 44/170, (power 3) on which I've installed Crux ppc 2.6.

    I found no port via ilenia (a crux port management tool), so I downloaded 0.12.1, did the usual

    ./configure
    make
    make install
    

    It does work to the extent that it replies on web-requets, but
    as soon I start adding media, it crashes. 'Illegal instruction'
    is all I get…

    So, I ran it with strace in the foreground, and I get this as the last lines

    stat("/proc/sys/fs/inotify/max_user_watches", {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
    open("/proc/sys/fs/inotify/max_user_watches", O_RDONLY) = 7
    fstat(7, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
    mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xfff8e45c000
    read(7, "8192\n", 1024)                 = 5
    read(7, "", 1024)                       = 0
    read(7, "", 1024)                       = 0
    close(7)                                = 0
    munmap(0xfff8e45c000, 4096)             = 0
    mmap(NULL, 659456, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xfff87c50000
    futex(0x2d9f6b88, FUTEX_WAKE_PRIVATE, 1) = 1
    open("/mnt/mediatomb/root/.mediatomb/mediatomb.html", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 9
    fstat(9, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
    mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xfff87c0e000
    write(9, "<html><head><meta http-equiv=\"Re"..., 127) = 127
    close(9)                                = 0
    munmap(0xfff87c0e000, 4096)             = 0
    time(NULL)                              = 1287250969
    write(2, "2010-10-16 17:42:49    INFO: ", 292010-10-16 17:42:49    INFO: ) = 29
    write(2, "MediaTomb Web UI can be reached "..., 56MediaTomb Web UI can be reached by following this link:
    ) = 56
    time(NULL)                              = 1287250969
    write(2, "2010-10-16 17:42:49    INFO: ", 292010-10-16 17:42:49    INFO: ) = 29
    write(2, "http://192.168.0.33:49152/\n", 27http://192.168.0.33:49152/
    ) = 27
    rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
    futex(0x2da8a46c, FUTEX_WAIT_PRIVATE, 1, NULL <unfinished ...>
    +++ killed by SIGILL +++
    Illegal instruction
    #
    

    I'd be grateful for insightful comments…
    /Björn

     
  • Björn Lundin

    Björn Lundin - 2010-10-17

    I ran mediatomb with -debug and got

    ......
    stent autoscans (count: 0)
    2010-10-17 14:01:22   DEBUG: [../src/singleton.cc:73] registerSingleton(): registering new singleton... - 6 -> 7
    2010-10-17 14:01:22   DEBUG: [../src/singleton.cc:73] registerSingleton(): registering new singleton... - 7 -> 8
    2010-10-17 14:01:22   DEBUG: [../src/autoscan_inotify.cc:65] AutoscanInotify(): Max watches on the system: 8192
    2010-10-17 14:01:22   DEBUG: [../src/content_manager.cc:747] _rescanDirectory(): start
    2010-10-17 14:01:22    INFO: MediaTomb Web UI can be reached by following this link:
    2010-10-17 14:01:22    INFO: http://192.168.0.33:49152/
    2010-10-17 14:01:22   DEBUG: [../src/server.cc:311] upnp_init(): end
    2010-10-17 14:01:22   DEBUG: [../src/timer.cc:67] triggerWait(): triggerWait. - 0 subscriber(s)
    2010-10-17 14:01:22   DEBUG: [../src/timer.cc:98] triggerWait(): nothing to do, sleeping...
    2010-10-17 14:01:22   DEBUG: [../src/content_manager.cc:821] _rescanDirectory(): Rescanning location: /mnt/mediatomb/root/film
    2010-10-17 14:01:22   DEBUG: [../src/metadata/ffmpeg_handler.cc:249] fillMetadata(): Running ffmpeg handler on /mnt/mediatomb/root/film/D__dsm__rkt-TV3-306450001.m4v
    Illegal instruction
    

    Needless to say, I removed that film, but problem remains.
    So, I did

    ffmpeg
    

    and it exits with 'Illegal instruction'

    strace ffmpeg gives

    mprotect(0xfff79023000, 4096, PROT_READ) = 0
    munmap(0xfff79017000, 42593)            = 0
    set_tid_address(0xfff7754f0d0)          = 16038
    get_robust_list(0xfff7754f0e0, 0x18, 0xfffdb4122d8) = 0
    futex(0xfffdb411fa0, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 1, NULL, 0) = -1 EINVAL (Invalid argument)
    rt_sigaction(SIGRTMIN, {0xfff783760c8, [], SA_SIGINFO}, NULL, 8) = 0
    rt_sigaction(SIGRT_1, {0xfff78376098, [], SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
    rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
    getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0
    ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
    brk(0)                                  = 0x4d8ee000
    brk(0x4d90f000)                         = 0x4d90f000
    --- SIGILL (Illegal instruction) @ 0 (0) ---
    +++ killed by SIGILL +++
    Illegal instruction
    

    which points to ffmpeg. I'll look into ffmpeg intstead

     
  • Jin

    Jin - 2010-10-18

    To test your theory you could compile MediaTomb without ffmpeg support and see if it runs. We only use ffmpeg to extract metadata from video files (and usually there isn't any) and we also need it in combination with ffmpeghtumbnailer. If you can live without those features, then just disable ffmpeg support when running configure.

     
  • Björn Lundin

    Björn Lundin - 2010-10-18

    Yes, indeed, it works when compiled with -disable-ffmpeg :-)
    It also seems that the reason that ffmpeg crashes is that it was compiled with altivec support,
    even though it is run on a cpu that does not support it.
    I'm working with the crux-ppc mailinglist to sort that one out.
    Thank you for your help
    /Björn

     
  • Konni

    Konni - 2010-10-22

    If ffmpeg if almost only used to extract mediainfo …
    I'd like to suggest mediainfo as an alternative … it's a great little program that does exactly that ..
    more info here: http://mediainfo.sourceforge.net/

     
  • Björn Lundin

    Björn Lundin - 2010-10-22

    Thanks, but it seem like it is windows only. I've got linux on a ppc machine…
    But I had build the x86 version of ffmpg, so that is why it did not work.
    Fixing my repositories, and a rebuild fixed the problem.
    /Björn

     

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.





No, thanks