public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
* Anybody ever got an ARM Thumb-2 cross compiler to work?
@ 2022-06-15 23:17 Gary Oblock
  2022-06-16  6:31 ` Jonathan Wakely
  0 siblings, 1 reply; 6+ messages in thread
From: Gary Oblock @ 2022-06-15 23:17 UTC (permalink / raw)
  To: Gary Oblock via Gcc-help

The subject line says it all...

I'm beginning to think off the shelf gcc cross compilers are impossible
to create because of binutils. At other companies we for the most part
created custom assemblers, loaders and libraries from scratch
when we built a gcc cross compiler.

Well?

Gary


CONFIDENTIALITY NOTICE: This e-mail message, including any attachments, is for the sole use of the intended recipient(s) and contains information that is confidential and proprietary to Ampere Computing or its subsidiaries. It is to be used solely for the purpose of furthering the parties' business relationship. Any unauthorized review, copying, or distribution of this email (or any attachments thereto) is strictly prohibited. If you are not the intended recipient, please contact the sender immediately and permanently delete the original and any copies of this email and any attachments thereto.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Anybody ever got an ARM Thumb-2 cross compiler to work?
  2022-06-15 23:17 Anybody ever got an ARM Thumb-2 cross compiler to work? Gary Oblock
@ 2022-06-16  6:31 ` Jonathan Wakely
  2022-06-16  7:11   ` Gary Oblock
  0 siblings, 1 reply; 6+ messages in thread
From: Jonathan Wakely @ 2022-06-16  6:31 UTC (permalink / raw)
  To: Gary Oblock; +Cc: Gary Oblock via Gcc-help

On Thu, 16 Jun 2022, 00:18 Gary Oblock via Gcc-help, <gcc-help@gcc.gnu.org>
wrote:

> The subject line says it all...
>
> I'm beginning to think off the shelf gcc cross compilers are impossible
> to create because of binutils.


Why?

What do you mean by "off the shelf"?

At other companies we for the most part
> created custom assemblers, loaders and libraries from scratch
> when we built a gcc cross compiler.
>

Why can't you just build a cross binutils too?

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Anybody ever got an ARM Thumb-2 cross compiler to work?
  2022-06-16  6:31 ` Jonathan Wakely
@ 2022-06-16  7:11   ` Gary Oblock
  2022-06-16  7:45     ` Christophe Lyon
  0 siblings, 1 reply; 6+ messages in thread
From: Gary Oblock @ 2022-06-16  7:11 UTC (permalink / raw)
  To: Jonathan Wakely; +Cc: Gary Oblock via Gcc-help

Jonathan

By off the shelf, I mean not creating a new target description file. Something
which I'm not at all experienced in (optimizations are my thing so I'm an
amateur at creating a cross-compiler.)

I can't seem to figure out what the binutils or the gcc target is for Thumb-2.
If you know, please let me know. I suspect that is an obsolete target
that no longer exists for the latest binutils and GCC 12.

Thanks,

Gary

________________________________
From: Jonathan Wakely <jwakely.gcc@gmail.com>
Sent: Wednesday, June 15, 2022 11:31 PM
To: Gary Oblock <gary@amperecomputing.com>
Cc: Gary Oblock via Gcc-help <gcc-help@gcc.gnu.org>
Subject: Re: Anybody ever got an ARM Thumb-2 cross compiler to work?

[EXTERNAL EMAIL NOTICE: This email originated from an external sender. Please be mindful of safe email handling and proprietary information protection practices.]



On Thu, 16 Jun 2022, 00:18 Gary Oblock via Gcc-help, <gcc-help@gcc.gnu.org<mailto:gcc-help@gcc.gnu.org>> wrote:
The subject line says it all...

I'm beginning to think off the shelf gcc cross compilers are impossible
to create because of binutils.

Why?

What do you mean by "off the shelf"?

At other companies we for the most part
created custom assemblers, loaders and libraries from scratch
when we built a gcc cross compiler.

Why can't you just build a cross binutils too?

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Anybody ever got an ARM Thumb-2 cross compiler to work?
  2022-06-16  7:11   ` Gary Oblock
@ 2022-06-16  7:45     ` Christophe Lyon
  2022-06-16 21:06       ` Gary Oblock
  0 siblings, 1 reply; 6+ messages in thread
From: Christophe Lyon @ 2022-06-16  7:45 UTC (permalink / raw)
  To: Gary Oblock; +Cc: Jonathan Wakely, Gary Oblock via Gcc-help

Hi Gary,

Sorry, your request is not entirely clear to me either.
IIUC what you want to achieve has been working for decades and is certainly
not obsolete :-)

If you don't need to build such a toolchain, you can download pre-built
binary toolchains from Arm for instance:
https://developer.arm.com/Tools%20and%20Software/GNU%20Toolchain#Technical-Specifications

If you want to build a cross toolchain, it's not straightforward but very
well supported. I think there are already plenty of
documentation describing how to do that.

The important thing is to get the right target triplet when configuring
your toolchain, you want something like arm-eabi or arm-linux-gnueabi, as
opposed to aarch64*.

Once the build has completed, when using the compiler make sure to generate
code for an architecture/cpu that actually supports Thumb-2 (via
-march=XX/-mcpu=XXX), and use -mthumb, as it's generally not the default.

Christophe


On Thu, Jun 16, 2022 at 9:11 AM Gary Oblock via Gcc-help <
gcc-help@gcc.gnu.org> wrote:

> Jonathan
>
> By off the shelf, I mean not creating a new target description file.
> Something
> which I'm not at all experienced in (optimizations are my thing so I'm an
> amateur at creating a cross-compiler.)
>
> I can't seem to figure out what the binutils or the gcc target is for
> Thumb-2.
> If you know, please let me know. I suspect that is an obsolete target
> that no longer exists for the latest binutils and GCC 12.
>
> Thanks,
>
> Gary
>
> ________________________________
> From: Jonathan Wakely <jwakely.gcc@gmail.com>
> Sent: Wednesday, June 15, 2022 11:31 PM
> To: Gary Oblock <gary@amperecomputing.com>
> Cc: Gary Oblock via Gcc-help <gcc-help@gcc.gnu.org>
> Subject: Re: Anybody ever got an ARM Thumb-2 cross compiler to work?
>
> [EXTERNAL EMAIL NOTICE: This email originated from an external sender.
> Please be mindful of safe email handling and proprietary information
> protection practices.]
>
>
>
> On Thu, 16 Jun 2022, 00:18 Gary Oblock via Gcc-help, <gcc-help@gcc.gnu.org
> <mailto:gcc-help@gcc.gnu.org>> wrote:
> The subject line says it all...
>
> I'm beginning to think off the shelf gcc cross compilers are impossible
> to create because of binutils.
>
> Why?
>
> What do you mean by "off the shelf"?
>
> At other companies we for the most part
> created custom assemblers, loaders and libraries from scratch
> when we built a gcc cross compiler.
>
> Why can't you just build a cross binutils too?
>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Anybody ever got an ARM Thumb-2 cross compiler to work?
  2022-06-16  7:45     ` Christophe Lyon
@ 2022-06-16 21:06       ` Gary Oblock
  2022-06-17  7:25         ` Christophe Lyon
  0 siblings, 1 reply; 6+ messages in thread
From: Gary Oblock @ 2022-06-16 21:06 UTC (permalink / raw)
  To: Gary Oblock via Gcc-help

Chistophe,

That would work for me if it's GCC 12 based and built to support the LTO "pluggin."
Would you know if that's the case?

Thanks,

Gary
________________________________
From: Christophe Lyon <christophe.lyon.oss@gmail.com>
Sent: Thursday, June 16, 2022 12:45 AM
To: Gary Oblock <gary@amperecomputing.com>
Cc: Jonathan Wakely <jwakely.gcc@gmail.com>; Gary Oblock via Gcc-help <gcc-help@gcc.gnu.org>
Subject: Re: Anybody ever got an ARM Thumb-2 cross compiler to work?

[EXTERNAL EMAIL NOTICE: This email originated from an external sender. Please be mindful of safe email handling and proprietary information protection practices.]

Hi Gary,

Sorry, your request is not entirely clear to me either.
IIUC what you want to achieve has been working for decades and is certainly not obsolete :-)

If you don't need to build such a toolchain, you can download pre-built binary toolchains from Arm for instance:
https://developer.arm.com/Tools%20and%20Software/GNU%20Toolchain#Technical-Specifications

If you want to build a cross toolchain, it's not straightforward but very well supported. I think there are already plenty of documentation describing how to do that.

The important thing is to get the right target triplet when configuring your toolchain, you want something like arm-eabi or arm-linux-gnueabi, as opposed to aarch64*.

Once the build has completed, when using the compiler make sure to generate code for an architecture/cpu that actually supports Thumb-2 (via -march=XX/-mcpu=XXX), and use -mthumb, as it's generally not the default.

Christophe


On Thu, Jun 16, 2022 at 9:11 AM Gary Oblock via Gcc-help <gcc-help@gcc.gnu.org<mailto:gcc-help@gcc.gnu.org>> wrote:
Jonathan

By off the shelf, I mean not creating a new target description file. Something
which I'm not at all experienced in (optimizations are my thing so I'm an
amateur at creating a cross-compiler.)

I can't seem to figure out what the binutils or the gcc target is for Thumb-2.
If you know, please let me know. I suspect that is an obsolete target
that no longer exists for the latest binutils and GCC 12.

Thanks,

Gary

________________________________
From: Jonathan Wakely <jwakely.gcc@gmail.com<mailto:jwakely.gcc@gmail.com>>
Sent: Wednesday, June 15, 2022 11:31 PM
To: Gary Oblock <gary@amperecomputing.com<mailto:gary@amperecomputing.com>>
Cc: Gary Oblock via Gcc-help <gcc-help@gcc.gnu.org<mailto:gcc-help@gcc.gnu.org>>
Subject: Re: Anybody ever got an ARM Thumb-2 cross compiler to work?

[EXTERNAL EMAIL NOTICE: This email originated from an external sender. Please be mindful of safe email handling and proprietary information protection practices.]



On Thu, 16 Jun 2022, 00:18 Gary Oblock via Gcc-help, <gcc-help@gcc.gnu.org<mailto:gcc-help@gcc.gnu.org><mailto:gcc-help@gcc.gnu.org<mailto:gcc-help@gcc.gnu.org>>> wrote:
The subject line says it all...

I'm beginning to think off the shelf gcc cross compilers are impossible
to create because of binutils.

Why?

What do you mean by "off the shelf"?

At other companies we for the most part
created custom assemblers, loaders and libraries from scratch
when we built a gcc cross compiler.

Why can't you just build a cross binutils too?

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Anybody ever got an ARM Thumb-2 cross compiler to work?
  2022-06-16 21:06       ` Gary Oblock
@ 2022-06-17  7:25         ` Christophe Lyon
  0 siblings, 0 replies; 6+ messages in thread
From: Christophe Lyon @ 2022-06-17  7:25 UTC (permalink / raw)
  To: gcc-help

I believe these releases support the LTO plugin, but the most recent at 
the moment is 11.x. If you need GCC 12, you'll have to wait a bit :-)

Thanks,

Christophe


On 6/16/22 23:06, Gary Oblock via Gcc-help wrote:
> Chistophe,
> 
> That would work for me if it's GCC 12 based and built to support the LTO "pluggin."
> Would you know if that's the case?
> 
> Thanks,
> 
> Gary
> ________________________________
> From: Christophe Lyon <christophe.lyon.oss@gmail.com>
> Sent: Thursday, June 16, 2022 12:45 AM
> To: Gary Oblock <gary@amperecomputing.com>
> Cc: Jonathan Wakely <jwakely.gcc@gmail.com>; Gary Oblock via Gcc-help <gcc-help@gcc.gnu.org>
> Subject: Re: Anybody ever got an ARM Thumb-2 cross compiler to work?
> 
> [EXTERNAL EMAIL NOTICE: This email originated from an external sender. Please be mindful of safe email handling and proprietary information protection practices.]
> 
> Hi Gary,
> 
> Sorry, your request is not entirely clear to me either.
> IIUC what you want to achieve has been working for decades and is certainly not obsolete :-)
> 
> If you don't need to build such a toolchain, you can download pre-built binary toolchains from Arm for instance:
> https://developer.arm.com/Tools%20and%20Software/GNU%20Toolchain#Technical-Specifications
> 
> If you want to build a cross toolchain, it's not straightforward but very well supported. I think there are already plenty of documentation describing how to do that.
> 
> The important thing is to get the right target triplet when configuring your toolchain, you want something like arm-eabi or arm-linux-gnueabi, as opposed to aarch64*.
> 
> Once the build has completed, when using the compiler make sure to generate code for an architecture/cpu that actually supports Thumb-2 (via -march=XX/-mcpu=XXX), and use -mthumb, as it's generally not the default.
> 
> Christophe
> 
> 
> On Thu, Jun 16, 2022 at 9:11 AM Gary Oblock via Gcc-help <gcc-help@gcc.gnu.org<mailto:gcc-help@gcc.gnu.org>> wrote:
> Jonathan
> 
> By off the shelf, I mean not creating a new target description file. Something
> which I'm not at all experienced in (optimizations are my thing so I'm an
> amateur at creating a cross-compiler.)
> 
> I can't seem to figure out what the binutils or the gcc target is for Thumb-2.
> If you know, please let me know. I suspect that is an obsolete target
> that no longer exists for the latest binutils and GCC 12.
> 
> Thanks,
> 
> Gary
> 
> ________________________________
> From: Jonathan Wakely <jwakely.gcc@gmail.com<mailto:jwakely.gcc@gmail.com>>
> Sent: Wednesday, June 15, 2022 11:31 PM
> To: Gary Oblock <gary@amperecomputing.com<mailto:gary@amperecomputing.com>>
> Cc: Gary Oblock via Gcc-help <gcc-help@gcc.gnu.org<mailto:gcc-help@gcc.gnu.org>>
> Subject: Re: Anybody ever got an ARM Thumb-2 cross compiler to work?
> 
> [EXTERNAL EMAIL NOTICE: This email originated from an external sender. Please be mindful of safe email handling and proprietary information protection practices.]
> 
> 
> 
> On Thu, 16 Jun 2022, 00:18 Gary Oblock via Gcc-help, <gcc-help@gcc.gnu.org<mailto:gcc-help@gcc.gnu.org><mailto:gcc-help@gcc.gnu.org<mailto:gcc-help@gcc.gnu.org>>> wrote:
> The subject line says it all...
> 
> I'm beginning to think off the shelf gcc cross compilers are impossible
> to create because of binutils.
> 
> Why?
> 
> What do you mean by "off the shelf"?
> 
> At other companies we for the most part
> created custom assemblers, loaders and libraries from scratch
> when we built a gcc cross compiler.
> 
> Why can't you just build a cross binutils too?

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2022-06-17  7:25 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-15 23:17 Anybody ever got an ARM Thumb-2 cross compiler to work? Gary Oblock
2022-06-16  6:31 ` Jonathan Wakely
2022-06-16  7:11   ` Gary Oblock
2022-06-16  7:45     ` Christophe Lyon
2022-06-16 21:06       ` Gary Oblock
2022-06-17  7:25         ` Christophe Lyon

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).