Compiling GSTREAMER

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Compiling GSTREAMER

4,897 Views
shanmugamsundar
Contributor IV

hi all,

      I am working in i.MX535 QSB board,  in that i am using the pre-built image of gstreamer for capturing and streaming the videos, i need to cross compile the source code of gstreamer, is there any procedure to compile, if it so can anyone help me with any document or websites.

Thanks,

shan

Labels (3)
0 Kudos
12 Replies

1,806 Views
arunkumar-arm
Contributor I

Dear all,

Kindly help me, in one issue. I am new to this forum.

I want to cross compile GStreamer for ARM CortexA9 platform. I have tried it with peta-linux and yocto-sdk tool chains, but eachtime, its not compiled and give me the same error with both the tools chains.

I have given the following commands for configure:

sudo ./configure CC=/opt/poky/1.6.2/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc CXX=/opt/poky/1.6.2/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-g++ --with-sysroot=/opt/poky/1.6.2/sysroots/ --host=arm --disable-loadsave --disable-tests --disable-examples ${CONFIGURE_FLAGS}

It configures as below:

Configuration

        Version                    : 0.10.36

        Source code location       : .

        Prefix                     : /usr/local/myCrossCompiled

        Compiler                   : /opt/poky/1.6.2/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc -std=gnu99

        Package name               : GStreamer source release

        Package origin             : Unknown package origin

        Documentation (manuals)    : no

        Documentation (API)        : no

        Debug Logging              : yes

        Pipeline XML load/save     : no

        Command-line parser        : yes

        Option parsing in gst_init : yes

        Tracing subsystem          : yes

        Allocation tracing         : yes

        Plugin registry            : yes

        Plugin support           : yes

        Network support            : yes

        Unit testing support       : yes

        Debug                      : yes

        Profiling                  : no

        Building examples          : no

        Building test apps         : no

        Building tests that fail   : no

I get the following errors:

/opt/poky/1.6.2/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/4.8.2/ld: cannot find -lgobject-2.0

/opt/poky/1.6.2/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/4.8.2/ld: cannot find -lgthread-2.0

/opt/poky/1.6.2/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/4.8.2/ld: cannot find -lgmodule-2.0

/opt/poky/1.6.2/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/4.8.2/ld: cannot find -lglib-2.0

Kindly help me, how to resolve this error.

If I configure on X86 machine, it compiles well

Regards

Arun

0 Kudos

1,806 Views
shanmugamsundar
Contributor IV

hi all,

i tried to cross compile the liboil-0.3.14 for the gstreamer it shows the following error, i don't know what to do, can any one help me to fix this error

Configure Command:

./configure --host=arm-none-linux-gnueabi --target=arm-none-linux-gnueabi PLATFORM=MX5X --enable-shared --prefix=/home/oviserver/shanmugam/testing_gst/liboil-0.3.14

Tool Chain i had used:

arm2007q1 toolchain

export PATH=$PATH:/opt/toolchains/2007q1/squashfs-root/bin/

ERROR:

/opt/toolchains/2007q1/squashfs-root/bin/../lib/gcc/arm-none-linux-gnueabi/4.2.0/../../../../arm-none-linux-gnueabi/bin/ld: cannot find -lglib-2.0

collect2: ld returned 1 exit status

make[3]: *** [uberopt] Error 1

make[3]: Leaving directory `/home/oviserver/shanmugam/testing_gst/liboil-0.3.14/examples/uberopt'

make[2]: *** [all-recursive] Error 1

make[2]: Leaving directory `/home/oviserver/shanmugam/testing_gst/liboil-0.3.14/examples'

make[1]: *** [all-recursive] Error 1

make[1]: Leaving directory `/home/oviserver/shanmugam/testing_gst/liboil-0.3.14'

make: *** [all] Error 2

Thanks,

shan

0 Kudos

1,806 Views
OtavioSalvador
Senior Contributor II

Yes, another missing library.

I told you, it is easier using Yocto or LTIB.

0 Kudos

1,806 Views
shanmugamsundar
Contributor IV

hi

when i tried to configure the gstreamer plugin [gst-fsl-plugin-2.0.3.orig] its not configuring it shows the following error, can any one tell me what is the error ? is it cofigure path error?

ERROR:

configure: WARNING: you should use --build, --host, --target

configure: WARNING: invalid host type: /home/oviserver/shanmugam/testing_gst/gst-fsl-plugin-2.0.3.orig/usr/lib/

checking whether to enable maintainer-specific portions of Makefiles... no

checking for a BSD-compatible install... /usr/bin/install -c

checking whether build environment is sane... yes

checking for gawk... no

checking for mawk... mawk

checking whether make sets $(MAKE)... yes

checking for arm-none-linux-gnueabi-strip... arm-none-linux-gnueabi-strip

checking for generating Plugins for gcc... no

checking for arm-none-linux-gnueabi-gcc... arm-none-linux-gnueabi-gcc

checking for C compiler default output file name... a.out

checking whether the C compiler works... yes

checking whether we are cross compiling... yes

checking for suffix of executables...

checking for suffix of object files... o

checking whether we are using the GNU C compiler... yes

checking whether arm-none-linux-gnueabi-gcc accepts -g... yes

checking for arm-none-linux-gnueabi-gcc option to accept ANSI C... none needed

checking for style of include used by make... GNU

checking dependency style of arm-none-linux-gnueabi-gcc... gcc3

checking build system type... Invalid configuration `/home/oviserver/shanmugam/testing_gst/gst-fsl-plugin-2.0.3.orig/usr/lib/': machine `/home/oviserver/shanmugam/testing_gst/gst-fsl-plugin' not recognized

configure: error: /bin/sh ./config.sub /home/oviserver/shanmugam/testing_gst/gst-fsl-plugin-2.0.3.orig/usr/lib/ failed


Thanks

shan

0 Kudos

1,806 Views
OtavioSalvador
Senior Contributor II

Hard to say what is wrong. Your toolchain use seems invalid but I cannot spot why from the error log only. You may need to check the --host --target options.

0 Kudos

1,806 Views
shanmugamsundar
Contributor IV

hi

first i configure the [gst-fsl-plugin-2.0.3.orig] it shows the error

configure: error: you need gstreamer development packages installed !


And i configure the gst-plugin-base it shows

checking for LIBOIL... no

configure: error: liboil-0.3.14 or later is required


And i download the liboil-0.3.14.tar.gz and configure it no errors, when i give make command it shows the error

ERROR:

../liboil/.libs/liboil-0.3.so: undefined reference to `oil_cpu_detect_arch'

collect2: ld returned 1 exit status

make[3]: *** [build_prototypes] Error 1

make[3]: Leaving directory `/home/oviserver/shanmugam/testing_gst/liboil-0.3.14/liboil'

make[2]: *** [all-recursive] Error 1

make[2]: Leaving directory `/home/oviserver/shanmugam/testing_gst/liboil-0.3.14/liboil'

make[1]: *** [all-recursive] Error 1

make[1]: Leaving directory `/home/oviserver/shanmugam/testing_gst/liboil-0.3.14'

make: *** [all] Error 2


can you help me to fix this problem, i dont know what to do

Note:

  If i compile the liboil and then i can able to compile the whole source


Thanks

shan


0 Kudos

1,806 Views
shanmugamsundar
Contributor IV

hi

     i want to use the gstreamer for an another arm platform so,if i get a procedure it would helps me a lot

Thanks,

shan

0 Kudos

1,806 Views
OtavioSalvador
Senior Contributor II

Do you need to cross compile it to upgrade it or another reason?

In case you wish to upgrade it, I'd suggest you to use Yocto for it.

0 Kudos

1,806 Views
shanmugamsundar
Contributor IV

hi OtavioSalvador,

                 i don't want to upgrade it, i need to customize it for the client requirement, is it possible with the freescale's IMX_MMCODECS_11.09



Thanks,

shan

0 Kudos

1,806 Views
OtavioSalvador
Senior Contributor II

So it depends how used to LTIB you are. I always use Yocto for projects and customer projects so it'd be my choice but if you have an working solution based in LTIB stick to it.

0 Kudos

1,806 Views
shanmugamsundar
Contributor IV

thanks, and do you know how to cross compile the gstreamer source, is there any special procedure, why i am asking was i haven't ever compiled the source

0 Kudos

1,806 Views
OtavioSalvador
Senior Contributor II

Yes; but I advice you to use LTIB or Yocto to make it. The shortest route is to use a pre-build toolchain and just build those libraries but needs to be careful to have compatible ABI objects.

If you want, learm more about Yocto at http://www.yoctoproject.org

0 Kudos