Fwd: Is it possible to build Single GCC Executable for armv5, armv6, armv7-{cortex-xx-{A,R,M}},armv8 etc.?
Richard Earnshaw (lists)
Richard.Earnshaw@arm.com
Mon Nov 11 13:42:00 GMT 2019
- Previous message (by thread): Fwd: Is it possible to build Single GCC Executable for armv5, armv6, armv7-{cortex-xx-{A,R,M}},armv8 etc.?
- Next message (by thread): Fwd: Is it possible to build Single GCC Executable for armv5, armv6, armv7-{cortex-xx-{A,R,M}},armv8 etc.?
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
On 11/11/2019 13:33, sayed israr wrote:
> ---------- Forwarded message ---------
> From: Israr Sayed <sd.israr@gmail.com>
> Date: Mon, Nov 11, 2019 at 5:38 PM
> Subject: Re: Is it possible to build Single GCC Executable for armv5,
> armv6, armv7-{cortex-xx-{A,R,M}},armv8 etc.?
> To: Jonathan Wakely <jwakely.gcc@gmail.com>
>
>
> I am building GCC from sources.Where i can configure it with 2 ways:
> (1) --with-arch --with-cpu --with-fpu --with-float options .
> (2) --with-multilib-list= .
> In --with-multilib-list, we can configure for various combinations of
> armv*-*-*.
> For example, I want to build gcc for with arch = armv7, armv7-m, armv7e-m,
> with float = hard, softfp, soft.
> with fpu = fpv, fpv4, fpv4-d16 etc..
> whereas if in configure i mention --with-arch --with-fpu --with-float.That
> will build GCC for those options only.
> I have a prebuilt arm GCC binary for STM32F controllers, which is built for
> whole range of armv7-M, armv7e-m along with FPUs.
> there configure options show --with-multilib-list=rmprofile.
> rmprofile is the multilib option for configure.Which is exactly what
> gcc/config/arm/t-rmprofile file is about.
> I hope i can explain my question better.
You can configure the compiler with --with-multlib-list=xxx
where xxx is any of "aprofile", "rmprofile" and "aprofile,rmprofile"
If you do this, DO NOT specify any of --with-fpu, --with-cpu,
--with-tune or --with-arch.
Be warned, the full set of multilibs is LARGE. It requires a fast
machine and/or a lot of time to build them all.
You can, of course, edit any of the files - the GPL gives you that
right, but if you do so, you're most likely on your own. The multilib
configurations are complex and rely heavily on GNU Makefile trickery to
express all the required combinations.
R.
> ------------------------------------------------------
>
> On Mon, Nov 11, 2019 at 11:40:39AM +0000, Jonathan Wakely wrote:
>> On Sun, 10 Nov 2019 at 11:36, Israr Sayed <sd.israr@gmail.com> wrote:
>>>
>>> Digging into the sources of GCC I noticed in files gcc/config/arm/t-*,
> There are multiple arm target options.
>>>
>>> Reading [GCC internal Manual], These are called Target Makefile
> Fragments, which will be included in main Makefile, like MULTILIB_OPTIONS,
> MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_REQUIRED, MULTILIB_REUSE,
> MULTILIB_EXTRA_OPTS, MULTILIB_OSDIRNAMES, MULTIARCH_DIRNAME.
>>>
>>> What I am not able to understand that how to bring it in at the time of
> configure.Which option to choose?
>>>
>>> More over is it possible to edit those t-* files as per the requirement
> and how?
>>> Please Help.
>>
>> I don't understand your question. Your email's subject talks about a
>> single GCC executable for multiple ARM variants, which is supported
>> automatically. When you configure GCC for an ARM target you can select
>> the specific processor type using the -march and/or -mcpu options. See
>> the documentation of command-line options in the GCC manual.
>>
>> You don't need to do anything special to use the target makefile
>> fragments, they're used automatically, as needed.
- Previous message (by thread): Fwd: Is it possible to build Single GCC Executable for armv5, armv6, armv7-{cortex-xx-{A,R,M}},armv8 etc.?
- Next message (by thread): Fwd: Is it possible to build Single GCC Executable for armv5, armv6, armv7-{cortex-xx-{A,R,M}},armv8 etc.?
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the Gcc-help
mailing list