This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM365 IPNC avi_save compile problem



Hi, all

I am trying to modify LIST INFO of the avi file, so I modify the code in avi_save/armffmpeg/libavformat/avformat.h

form

#define LIBAVFORMAT_IDENT       "Lavf" AV_STRINGIFY(LIBAVFORMAT_VERSION)

to

#define LIBAVFORMAT_IDENT       "TEST_AVI_MAKER"

And I build a new libavformat.a as the steps below

1. avi_save/armffmpeg/configure

2. cd libavformat/

3. make

 I copy the libavformat.a to the folder /avi_save/lib to replace the original one.

and then do make all at folder avi_save

but there is an error occur, the error message is

/opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin/../lib/gcc/armv5tl-montavista-linux-gnueabi/4.2.0/../../../../armv5tl-montavista-linux-gnueabi/bin/ld: skipping incompatible ./lib/libavformat.a when searching for -lavformat
/opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin/../lib/gcc/armv5tl-montavista-linux-gnueabi/4.2.0/../../../../armv5tl-montavista-linux-gnueabi/bin/ld: cannot find -lavformat
collect2: ld exit 1

I found that the library file I build is much bigger than the original one,

-rw-r--r--. 1 root root  8400760 2011-05-24 12:32 libavformat.a
-rwxr-xr-x. 1  507 users  105006 2010-09-03 12:00 libavformat.a_original

Can anyone help me to solve this problem?

Thanks.

Regards,

Stevie

 

 

  • Hi, all

    I do follow the steps of the file compile_step.txt as below :

    1. x264
    - ./configure --disable-pthread --disable-asm --prefix=./../../ --host=arm-linux --cross-prefix=arm_v5t_le-
    - make;make install

    2. Faac
    - download from "http://sourceforge.net/projects/faac/"
    - decompress at folder "ipnc_app\multimedia\avi_save\armffmpeg\faac"
    - make distclean
    - ./bootstrap
    - ./configure --prefix=$(Absolute PATH to the AVI_SAVE) --enable-static --host=arm CC=arm_v5t_le-gcc CXX=arm_v5t_le-g++
       Here, $(Absolute PATH to the AVI_SAVE) may like /opt/workdir/IPNC_MT_DM368_NEW_UI/ipnc_app/multimedia/avi_save
    - make;make install

    3. FFMPEG
    ./configure --arch=arm41 --cpu=armv5te --disable-muxers --enable-muxer=avi --disable-encoders --enable-encoder=pcm_mulaw --enable-encoder=aac --enable-encoder=libx264 --enable-encoder=mjpeg --enable-encoder=mpeg4 --disable-decoders --disable-indevs --disable-outdevs --disable-filters --disable-parsers --disable-demuxers --disable-protocol=pipe --disable-bsfs --disable-ffmpeg --disable-ffserver --disable-ffplay  --enable-small --disable-debug --enable-cross-compile --cross-prefix=arm_v5t_le- --disable-mmx  --disable-network --disable-zlib --disable-debug --enable-libx264 --enable-libfaac --enable-nonfree --enable-gpl --extra-cflags=-I./../include --extra-ldflags=-L./../lib --prefix=./..
    - make;make install

     

    But there are two problems ,

    1. while doing build x264 there are some error

    Unknown option "--disable-pthread".
    See ./configure --help for available options.

    Unknown option "--disable-pthread".
    See ./configure --help for available options.

    So I change the command to ./configure --disable-asm --prefix=./../../ --host-cc=arm-linux --cross-prefix=arm_v5t_le-

    Then it is OK.

    2. After I do all the step above, I see that all libxxxx.a files in the folder avi_save/lib are all updated.

        But when I do "make all" at the avi_save to build Appro_avi_save, the same problem occurs,

    /opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin/../lib/gcc/armv5tl-montavista-linux-gnueabi/4.2.0/../../../../armv5tl-montavista-linux-gnueabi/bin/ld: skipping incompatible ./lib/libavformat.a when searching for -lavformat
    /opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin/../lib/gcc/armv5tl-montavista-linux-gnueabi/4.2.0/../../../../armv5tl-montavista-linux-gnueabi/bin/ld: cannot find -lavformat
    collect2: ld exit 1
    make: *** [Appro_avi_save] Error 1

    So I still need help.

    Thanks.

    Regards,

    Stevie

     

  • Hi, all

    I found that I am not using the arm_v5t_le- toolchain to compile the ffmpeg, so the format is incompatible to link.

    I just add --host-cc=arm_v5t_le-gcc to configure before make, then the library with correct  format can be build.

    Thanks.

    Regards,

    Stevie