So, I've downloaded the code from ffmpeg-android (also tried using the
origional ffmpeg sources with same error).

*Here's the problem... I run my configure script (below):*
#!/bin/bash

PREBUILT=/stuff/android-ndk-r4/build/prebuilt/linux-x86/arm-eabi-4.2.1
PREBUILTLIB=$PREBUILT/lib/gcc/arm-eabi/4.2.1
PLATFORM=/stuff/android-ndk-r4/build/platforms/android-5/arch-arm
PREFIX=/stuff/ffmpeg-android-bin
./configure --target-os=linux \
--arch=armv4t \
--enable-cross-compile \
--cc=$PREBUILT/bin/arm-eabi-gcc \
--cross-prefix=$PREBUILT/bin/arm-eabi- \
--nm=$PREBUILT/bin/arm-eabi-nm \
--extra-cflags="-fpic -DANDROID -I$PLATFORM/usr/include -mthumb-interwork
-ffunction-sections -funwind-tables -fstack-protector -fno-short-enums
-D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__
-march=armv5te -mtune=xscale -msoft-float -Os -fomit-frame-pointer
-fno-strict-aliasing -finline-limit=64 -Wa,--noexecstack" \
--prefix=$PREFIX \
--extra-ldflags="-Wl,-T,$PREBUILT/arm-eabi/lib/ldscripts/armelf.x
-Wl,-rpath-link=$PLATFORM/usr/lib -L$PLATFORM/usr/lib -nostdlib
-nodefaultlibs $PREBUILTLIB/crtbegin.o $PREBUILTLIB/crtend.o -lgcc -lc -lm"
\
--enable-static \
--disable-ffplay \
--disable-ffserver \
--disable-debug \
--enable-small \
--disable-shared \
--disable-yasm > configout.txt

*This runs fine and generates the required files, then I run *
make -j 2 TARGET_ARCH=arm APP=ffmpeg-android
*
*
*And the sad error I get is*
*In file included from
/stuff/android-ndk-r4/build/platforms/android-5/arch-arm/usr/include/linux/in.h:209,
*
*                 from
/stuff/android-ndk-r4/build/platforms/android-5/arch-arm/usr/include/netinet/in.h:33,
*
*                 from libavformat/network.h:36,*
*                 from libavformat/os_support.c:42:*
*/stuff/android-ndk-r4/build/platforms/android-5/arch-arm/usr/include/asm/byteorder.h:
In function '___arch__swab32':*
*/stuff/android-ndk-r4/build/platforms/android-5/arch-arm/usr/include/asm/byteorder.h:25:
warning: implicit declaration of function 'asm'*
*/stuff/android-ndk-r4/build/platforms/android-5/arch-arm/usr/include/asm/byteorder.h:25:
error: expected ')' before ':' token*
*make: *** [libavformat/os_support.o] Error 1*
*make: *** Waiting for unfinished jobs....*

*Any ideas on this one?? I've tried using android-8 instead and tried using
both 4.2.1 and 4.4.0 in the toolchain.*
*
*
*Grrr, no idea where to go from here.*
*
*
-- 
"The greatest challenge to any thinker is stating the problem in a way that
will allow a solution"
- Bertrand Russell

Andy Savage
Cell Phone: +852 936 34341
Skype ID: andy_savage
Linked In: http://www.linkedin.com/in/andysavage


On Wed, Jun 16, 2010 at 2:22 AM, Deva R <[email protected]> wrote:

> Can you share complete log?? since libavformat is built within
> ffmpeg-android, it should be some .mk mismatch.,
>
> Are you using android sdk toolchain or other GNU toolchain??
> if any tool chians used other than android, the binaries should be strictly
> static, as android has its own libc version, so binaries wont work.
>
> btw, i was able to build it with in my SDK., few gcc 4.4 specific breaks
> were there, but it compiled all libraries.
>
>
>
> PS.
> GCC 4.4 build breaks in the shared gitorious tree
>
> diff --git a/libavformat/metadata_compat.c b/libavformat/metadata_compat.c
> index b05fb04..8829940 100644
> --- a/libavformat/metadata_compat.c
> +++ b/libavformat/metadata_compat.c
> @@ -105,7 +105,7 @@ void ff_metadata_demux_compat(AVFormatContext *ctx)
>
>
>  #define FILL_METADATA(s, key, value)
> {                                        \
> -    if (value && *value && !av_metadata_get(s->metadata, #key, NULL,
> 0))      \
> +    if ( (value != NULL )&& *value && !av_metadata_get(s->metadata, #key,
> NULL, 0))      \
>          av_metadata_set(&s->metadata, #key,
> value);                           \
>      }
>  #define FILL_METADATA_STR(s, key)  FILL_METADATA(s, key, s->key)
> diff --git a/libavformat/nutdec.c b/libavformat/nutdec.c
> index 2243d00..babc880 100644
> --- a/libavformat/nutdec.c
> +++ b/libavformat/nutdec.c
> @@ -840,6 +840,7 @@ av_log(s, AV_LOG_DEBUG,
> "read_timestamp(X,%d,%"PRId64",%"PRId64")\n", stream_ind
>      else if(stream_index == -2) return back_ptr;
>
>  assert(0);
> +return -1;
>  }
>
>
>
> On Tue, Jun 15, 2010 at 3:48 PM, Andy Savage <[email protected]> wrote:
>
>> Hi there everyone,
>>
>> Just wondering if somebody has had success building this FFMpeg build
>> for Android? I'm having an issue (that I'm not quite experienced
>> enough to solve).
>>
>> Or perhaps if somebody has already built it maybe they could send me
>> the binary? :)
>>
>> Any help that you guys can give me would be great. Here's the Android
>> Port:
>> http://gitorious.org/~olvaffe/ffmpeg/ffmpeg-android<http://gitorious.org/%7Eolvaffe/ffmpeg/ffmpeg-android>
>>
>> The error I'm getting when I try a make on that code is:
>> make: *** No rule to make target `libavformat/libavformat.a', needed
>> by `all'.  Stop.
>>
>> :-(
>>
>> Kind regards,
>> Andy Savage
>>
>> --
>> unsubscribe: 
>> [email protected]<android-porting%[email protected]>
>> website: http://groups.google.com/group/android-porting
>>
>
>

-- 
unsubscribe: [email protected]
website: http://groups.google.com/group/android-porting

Reply via email to