Hi everyone,
i am trying to cross compile gstreamer for imx6qp for arm-linux-androideabi- tool chain.
i am setting the path as fallows for cross compilation
-> export CROSS_COMPILE=~/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/bin/arm-linux-androideabi-
-> export ARCH=arm
-> export PATH=~/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/bin:$PATH
upto this it is fine
then i downloaded gstreamer source from git and i use the following command
----------------------------------------------------------------------------------------------------------------------------------------------------------
sudo ./autogen.sh --prefix=/home/vasu/gstreamer/build CC=arm-linux-androideabi-gcc --target=arm-linux-androideabi --host=arm-linux-androideabi --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm
-----------------------------------------------------------------------------------------------------------------------------------------
but for the above command i got the following error
------------------------------------------------------------------------------------------------------------------------------------------
+ passing argument --prefix=/home/vasu/gstreamer/build to configure
+ passing argument --host=arm-linux-androideabi to configure
+ passing argument --libdir=/home/vasu/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib to configure
+ passing argument --prefix=/home/vasu/gstreamer/build to configure
+ passing argument --target=arm-linux-androideabi to configure
+ passing argument --host=arm-linux-androideabi to configure
+ passing argument --libdir=/home/vasu/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib to configure
+ passing argument --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm to configure
+ passing argument --prefix=/home/vasu/gstreamer/build to configure
+ passing argument --target=arm-linux-androideabi to configure
+ passing argument --host=arm-linux-androideabi to configure
+ passing argument --libdir=/home/vasu/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib to configure
+ passing argument --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm to configure
+ passing argument --disable-dependency-tracking to configure
+ passing argument --disable-shared to configure
+ passing argument --enable-static to configure
+ passing argument --with-pic to configure
+ passing argument --prefix=/home/vasu/gstreamer/build to configure
+ passing argument --target=arm-linux-androideabi to configure
+ passing argument --host=arm-linux-androideabi to configure
+ passing argument --libdir=/home/vasu/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib to configure
+ passing argument --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm to configure
+ passing argument --disable-dependency-tracking to configure
+ passing argument --disable-shared to configure
+ passing argument --enable-static to configure
+ passing argument --with-pic to configure
+ passing argument --prefix=/home/vasu/gstreamer/build to configure
+ passing argument CC=arm-linux-androideabi- to configure
+ passing argument --target=arm-linux-androideabi to configure
+ passing argument --host=arm-linux-androideabi to configure
+ passing argument --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm to configure
+ passing argument --prefix=/home/vasu/gstreamer/build to configure
+ passing argument CC=arm-linux-androideabi to configure
+ passing argument --target=arm-linux-androideabi to configure
+ passing argument --host=arm-linux-androideabi to configure
+ passing argument --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm to configure
+ passing argument --prefix=/home/vasu/gstreamer/build to configure
+ passing argument CC=arm-linux-androideabi-gcc to configure
+ passing argument --target=arm-linux-androideabi to configure
+ passing argument --host=arm-linux-androideabi to configure
+ passing argument --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm to configure
+ options passed to configure: --prefix=/home/vasu/gstreamer/build --host=arm-linux-androideabi --libdir=/home/vasu/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib --prefix=/home/vasu/gstreamer/build --target=arm-linux-androideabi --host=arm-linux-androideabi --libdir=/home/vasu/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm --prefix=/home/vasu/gstreamer/build --target=arm-linux-androideabi --host=arm-linux-androideabi --libdir=/home/vasu/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm --disable-dependency-tracking --disable-shared --enable-static --with-pic --prefix=/home/vasu/gstreamer/build --target=arm-linux-androideabi --host=arm-linux-androideabi --libdir=/home/vasu/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm --disable-dependency-tracking --disable-shared --enable-static --with-pic --prefix=/home/vasu/gstreamer/build CC=arm-linux-androideabi- --target=arm-linux-androideabi --host=arm-linux-androideabi --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm --prefix=/home/vasu/gstreamer/build CC=arm-linux-androideabi --target=arm-linux-androideabi --host=arm-linux-androideabi --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm --prefix=/home/vasu/gstreamer/build CC=arm-linux-androideabi-gcc --target=arm-linux-androideabi --host=arm-linux-androideabi --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm
+ check for build tools
checking for autoreconf ...
/usr/bin/autoreconf
checking for pkg-config ...
/usr/bin/pkg-config
+ running autopoint --force...
libtoolize: putting auxiliary files in '.'.
libtoolize: copying file './ltmain.sh'
libtoolize: putting macros in 'm4'.
libtoolize: copying file 'm4/libtool.m4'
libtoolize: copying file 'm4/ltoptions.m4'
libtoolize: copying file 'm4/ltsugar.m4'
libtoolize: copying file 'm4/ltversion.m4'
libtoolize: copying file 'm4/lt~obsolete.m4'
libtoolize: Remember to add 'LT_INIT' to configure.ac.
libtoolize: Consider adding 'AC_CONFIG_MACRO_DIRS([m4])' to configure.ac,
libtoolize: and rerunning libtoolize and aclocal.
configure.ac:78: warning: The 'AM_PROG_MKDIR_P' macro is deprecated, and its use is discouraged.
configure.ac:78: You should use the Autoconf-provided 'AC_PROG_MKDIR_P' macro instead,
configure.ac:78: and use '$(MKDIR_P)' instead of '$(mkdir_p)'in your Makefile.am files.
configure.ac:65: installing './compile'
configure.ac:11: installing './missing'
common/coverage/lcov.mak:2: warning: .PHONY was already defined in condition GST_GCOV_ENABLED, which is included in condition TRUE ...
Makefile.am:137: 'common/coverage/lcov.mak' included from here
Makefile.am:54: ... '.PHONY' previously defined here
gst/Makefile.am: installing './depcomp'
+ running configure ...
default flags: --enable-maintainer-mode --enable-gtk-doc --enable-failing-tests --enable-poisoning
external flags: --prefix=/home/vasu/gstreamer/build --host=arm-linux-androideabi --libdir=/home/vasu/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib --prefix=/home/vasu/gstreamer/build --target=arm-linux-androideabi --host=arm-linux-androideabi --libdir=/home/vasu/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm --prefix=/home/vasu/gstreamer/build --target=arm-linux-androideabi --host=arm-linux-androideabi --libdir=/home/vasu/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm --disable-dependency-tracking --disable-shared --enable-static --with-pic --prefix=/home/vasu/gstreamer/build --target=arm-linux-androideabi --host=arm-linux-androideabi --libdir=/home/vasu/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm --disable-dependency-tracking --disable-shared --enable-static --with-pic --prefix=/home/vasu/gstreamer/build CC=arm-linux-androideabi- --target=arm-linux-androideabi --host=arm-linux-androideabi --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm --prefix=/home/vasu/gstreamer/build CC=arm-linux-androideabi --target=arm-linux-androideabi --host=arm-linux-androideabi --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm --prefix=/home/vasu/gstreamer/build CC=arm-linux-androideabi-gcc --target=arm-linux-androideabi --host=arm-linux-androideabi --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm
./configure --enable-maintainer-mode --enable-gtk-doc --enable-failing-tests --enable-poisoning --prefix=/home/vasu/gstreamer/build --host=arm-linux-androideabi --libdir=/home/vasu/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib --prefix=/home/vasu/gstreamer/build --target=arm-linux-androideabi --host=arm-linux-androideabi --libdir=/home/vasu/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm --prefix=/home/vasu/gstreamer/build --target=arm-linux-androideabi --host=arm-linux-androideabi --libdir=/home/vasu/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm --disable-dependency-tracking --disable-shared --enable-static --with-pic --prefix=/home/vasu/gstreamer/build --target=arm-linux-androideabi --host=arm-linux-androideabi --libdir=/home/vasu/myandroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm --disable-dependency-tracking --disable-shared --enable-static --with-pic --prefix=/home/vasu/gstreamer/build CC=arm-linux-androideabi- --target=arm-linux-androideabi --host=arm-linux-androideabi --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm --prefix=/home/vasu/gstreamer/build CC=arm-linux-androideabi --target=arm-linux-androideabi --host=arm-linux-androideabi --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm --prefix=/home/vasu/gstreamer/build CC=arm-linux-androideabi-gcc --target=arm-linux-androideabi --host=arm-linux-androideabi --with-sysroot=/home/vasu/myandroid/prebuilts/ndk/9/platforms/android-9/arch-arm
checking build system type... x86_64-pc-linux-gnu
checking host system type... arm-unknown-linux-androideabi
checking target system type... arm-unknown-linux-androideabi
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for arm-linux-androideabi-strip... no
checking for strip... strip
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether UID '0' is supported by ustar format... yes
checking whether GID '0' is supported by ustar format... yes
checking how to create a ustar tar archive... gnutar
checking nano version... 1
checking whether to enable maintainer-specific portions of Makefiles... yes
checking whether make supports nested variables... (cached) yes
checking how to print strings... printf
checking for style of include used by make... GNU
checking for arm-linux-androideabi-gcc... arm-linux-androideabi-gcc
checking whether the C compiler works... no
configure: error: in `/home/vasu/gstreamer':
configure: error: C compiler cannot create executables
See `config.log' for more details
configure failed
--------------------------------------------------------------------------------------------------------------------------------------------------------------
as i am new to this thing please help me in solving this.
Thanks and regards,
Vasu
Hi Vasu,
Try to download another compiler as e.g:
$ wget -c https://releases.linaro.org/14.09/components/toolchain/binaries/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz
$ tar xf gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz
and then create general variable environments:
Then compile
Regards
Hi Bio_TICSFL,
Thanks for the kind reply. we are using using arm_android tool chain. so we need to cross compile that gstreamer using the arm-linux-androideabi- cross compiler.