public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
From: BERTRAND Joel <joel.bertrand@systella.fr>
To: gcc-help@gcc.gnu.org
Subject: Re: Build a cross compiler for Android target (arm)
Date: Mon, 17 Oct 2011 07:44:00 -0000	[thread overview]
Message-ID: <4E9BDCB4.9060007@systella.fr> (raw)
In-Reply-To: <4E9BCC09.3030701@wippies.com>

Kai Ruottu a écrit :
> 15.10.2011 12:41, BERTRAND Joel kirjoitti:
>
>> I'm trying to build a cross compiler for Android target as I want to
>> obtain a Fortran compiler.
>>
>> Of course, I have installed android ndk to have sysroot.
>> Build process stops with :
>>
>> checking whether the
>> /home/bertrand/android/ndk/compilers/gcc-build/./gcc/xgcc
>> -B/home/bertrand/android/ndk/compilers/gcc-build/./gcc/
>> -B/home/bertrand/android/ndk/compilers/arm-android-eabi/bin/
>> -B/home/bertrand/android/ndk/compilers/arm-android-eabi/lib/ -isystem
>> /home/bertrand/android/ndk/compilers/arm-android-eabi/include -isystem
>> /home/bertrand/android/ndk/compilers/arm-android-eabi/sys-include linker
>> (/home/bertrand/android/ndk/compilers/gcc-build/./gcc/collect-ld)
>> supports shared libraries... yes
>> checking dynamic linker characteristics... no
>> checking how to hardcode library paths into programs... immediate
>> checking for shl_load... configure: error: Link tests are not allowed
>> after GCC_NO_EXECUTABLES.
>> make[1]: *** [configure-target-libstdc++-v3] Erreur 1
>
> Ok, you have the GCC binaries ready (in $build/gcc) and also
> libgcc (in $build/libgcc) and then your build crashes when
> trying to configure libstdc++-v3 ... The C parts are OK, but
> getting the C++ library fails. So what would be the sane
> reaction in this situation?
>
> For me it would be to try to compile and link a simple "Hello
> World" app with the new GCC... But maybe Android is too weird
> for this, no experience about whether it even supports simple
> "console" apps in a terminal window, requiring some really
> complex application as that "Hello World". The very common
> Windows 3.1 and its 32-bit extension "Win32s" hadn't any
> console for running "text-mode Windows applications" :(

	I have tested that my gcc/gfortran can compile and link android 
applications. I haven't tested if I can run these applications on a real 
android system.

> In any case installing only the GCC binaries and the libgcc
> happens with :
>
> make install-gcc
> make install-target-libgcc
>
> after which you can try compiling and linking that "Hello
> World" and can see what errors you will get when linking...
>
> The typical mistake is to not allow the self-made gmp, mpfr
> or mpc shared libs being found by the new GCC binaries but
> then the crash should happen already during the libgcc
> configure - that the new 'xgcc' and 'cc1' can be started is
> a sanity test there... So a "sanity test for the builder"
> could be whether one is capable to try tests like :
>
> ./xgcc -v

cauchy:[~/android/ndk/compilers/gcc-build/gcc] > ./xgcc -v
Using built-in specs.
COLLECT_GCC=./xgcc
Target: arm-android-eabi
Configured with: ../gcc-4.6.1/configure 
--prefix=/home/bertrand/android/ndk/compilers --disable-libquadmath 
--target=arm-android-eabi --with-gnu-as --with-gnu-ld 
--enable-languages=c,c++,fortran 
--with-mpfr=/home/bertrand/android/ndk/compilers 
--with-gmp=/home/bertrand/android/ndk/compilers 
--with-mpc=/home/bertrand/android/ndk/compilers --disable-libssp 
--enable-threads --disable-nls --disable-libgomp --disable-shared 
--disable-tls --with-float=soft --with-fpu=vfp --with-arch=armv5te 
--enable-target-optspace 
--with-sysroot=/home/bertrand/android/ndk/sysroot/ 
--host=x86_64-unknown-linux-gnu
Thread model: single
gcc version 4.6.1 (GCC)

> ./xgcc --help

	Works.

> ./cc1 --help

	Works too.

> in the $build/gcc directory without installing anything
> there first, in order to see whether the new GCC executables
> can be run in the cross host system...

	Regards,

	JKB

      parent reply	other threads:[~2011-10-17  7:44 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-10-15  9:41 BERTRAND Joel
2011-10-17  6:33 ` Kai Ruottu
2011-10-17  6:45   ` Jeffrey Walton
     [not found]     ` <4E9BDC91.4010801@systella.fr>
2011-10-17  7:44       ` BERTRAND Joel
2011-10-17  8:05     ` BERTRAND Joel
2011-10-17  7:44   ` BERTRAND Joel [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4E9BDCB4.9060007@systella.fr \
    --to=joel.bertrand@systella.fr \
    --cc=gcc-help@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).