Illegal Instruction on MIPS platform

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Illegal Instruction on MIPS platform

Yan Seiner

I have an embedded platform with an older (0.8.7) version of ffmpeg.   I'd
like to upgrade to something more recent.

I cross-compiled ffmpeg 1.0.  It dies with "illegal instruction".  The
older version runs justs fine.

Here's the configure options I used:

configuration: --enable-cross-compile
--cross-prefix=mips-openwrt-linux-uclibc- --arch=mips --target-os=linux
--prefix=/usr --enable-shared --enable-static --disable-debug
--pkg-config=pkg-config --enable-gpl --enable-version3 --disable-asm
--disable-doc --disable-dxva2 --enable-pthreads --disable-mipsfpu
--disable-optimizations --enable-small --disable-stripping --enable-zlib
--disable-outdevs

This is the platform I am using:

system type        : Atheros AR7161 rev 2
machine            : Buffalo WZR-HP-AG300H
processor        : 0
cpu model        : MIPS 24Kc V7.4
BogoMIPS        : 452.19

My debugging options are limited...  Anything I can do to trace this down?




--


_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user
Reply | Threaded
Open this post in threaded view
|

Re: Illegal Instruction on MIPS platform

rogerdpack2
On 11/19/12, Yan Seiner <[hidden email]> wrote:

>
> I have an embedded platform with an older (0.8.7) version of ffmpeg.   I'd
> like to upgrade to something more recent.
>
> I cross-compiled ffmpeg 1.0.  It dies with "illegal instruction".  The
> older version runs justs fine.
>
> Here's the configure options I used:
>
> configuration: --enable-cross-compile
> --cross-prefix=mips-openwrt-linux-uclibc- --arch=mips --target-os=linux
> --prefix=/usr --enable-shared --enable-static --disable-debug
> --pkg-config=pkg-config --enable-gpl --enable-version3 --disable-asm
> --disable-doc --disable-dxva2 --enable-pthreads --disable-mipsfpu
> --disable-optimizations --enable-small --disable-stripping --enable-zlib
> --disable-outdevs
>
> This is the platform I am using:
>
> system type        : Atheros AR7161 rev 2
> machine            : Buffalo WZR-HP-AG300H
> processor        : 0
> cpu model        : MIPS 24Kc V7.4
> BogoMIPS        : 452.19
>
> My debugging options are limited...  Anything I can do to trace this down?

gdb with a debug build possible, to get a backtrace?
-r
_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user
Reply | Threaded
Open this post in threaded view
|

Re: Illegal Instruction on MIPS platform

Yan Seiner
In reply to this post by Yan Seiner

On Mon, November 19, 2012 7:53 am, Yan Seiner wrote:
>
> I have an embedded platform with an older (0.8.7) version of ffmpeg.   I'd
> like to upgrade to something more recent.
>
> I cross-compiled ffmpeg 1.0.  It dies with "illegal instruction".  The
> older version runs justs fine.

I just tried 0.11.2 and it builds just fine.  Something in the 1.0 build
breaks on cross-compile for MIPS.  :confused:

_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user
Reply | Threaded
Open this post in threaded view
|

Re: Illegal Instruction on MIPS platform

Yan Seiner
In reply to this post by rogerdpack2

On Mon, November 19, 2012 10:07 am, Roger Pack wrote:
> On 11/19/12, Yan Seiner <[hidden email]> wrote:
>>
>> I have an embedded platform with an older (0.8.7) version of ffmpeg.
>> I'd
>> like to upgrade to something more recent.
>>
>> I cross-compiled ffmpeg 1.0.  It dies with "illegal instruction".  The
>> older version runs justs fine.

>> My debugging options are limited...  Anything I can do to trace this
>> down?
>
> gdb with a debug build possible, to get a backtrace?

I can try.... I'll see what the OpenWRT devs have to say...  0.11.2 builds
and runs fine.

_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user
Reply | Threaded
Open this post in threaded view
|

Re: Illegal Instruction on MIPS platform

rogerdpack2
> I can try.... I'll see what the OpenWRT devs have to say...  0.11.2 builds
> and runs fine.

I suppose you could try to use git-bisect to see which commit "broke" it...
-r
_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user
Reply | Threaded
Open this post in threaded view
|

Illegal Instruction on MIPS platform

Jonathan Isom
In reply to this post by Yan Seiner
On Monday, November 19, 2012, Yan Seiner wrote:

>
> On Mon, November 19, 2012 7:53 am, Yan Seiner wrote:
> >
> > I have an embedded platform with an older (0.8.7) version of ffmpeg.
> I'd
> > like to upgrade to something more recent.
> >
> > I cross-compiled ffmpeg 1.0.  It dies with "illegal instruction".  The
> > older version runs justs fine.
>
> I just tried 0.11.2 and it builds just fine.  Something in the 1.0 build
> breaks on cross-compile for MIPS.  :confused:


I'd verify the cflags. Add something like "--march=Kc24" to it.

> _______________________________________________
> ffmpeg-user mailing list
> [hidden email]
> http://ffmpeg.org/mailman/listinfo/ffmpeg-user
>
_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user
Reply | Threaded
Open this post in threaded view
|

Re: Illegal Instruction on MIPS platform

Carl Eugen Hoyos
In reply to this post by Yan Seiner
Yan Seiner <yan <at> seiner.com> writes:

> I just tried 0.11.2 and it builds just fine.  Something
> in the 1.0 build breaks on cross-compile for MIPS.
> :confused:

1st step: Test current git heat.
2nd step: Look at gdb output and post it here
3rd step: Use git bisect to find the responsible change.

(Remember that nearly all developers have no access to
MIPS hardware, so there is not much else you can do if
the march suggestion does not work.)

Carl Eugen

_______________________________________________
ffmpeg-user mailing list
[hidden email]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user
Reply | Threaded
Open this post in threaded view
|

Re: Illegal Instruction on MIPS platform

Jake Park
This post has NOT been accepted by the mailing list yet.
This post was updated on .
In reply to this post by Yan Seiner
I had the same problem and have found the solution.

First, read below commit log :
http://git.videolan.org/?p=ffmpeg.git;a=commit;h=3827a86eacd04d9d7b356f769be553f7b8cca361


Try to build using these options :
--disable-mipsfpu --disable-mips32r2 --disable-mipsdspr1 --disable-mipsdspr2