Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Gentoo: Embedded

sparcv8 gcc

 

 

Gentoo embedded RSS feed   Index | Next | Previous | View Threaded


ierton at gmail

Jun 18, 2009, 11:13 PM

Post #1 of 15 (3415 views)
Permalink
sparcv8 gcc

Hi! I'm trying to build cross-enviroment for
sparcv8-softfloat-linux-gnueabi, but without luck.

gcc 4.3.2 (and 4.4.0) failes to build with message:
...
checking whether string.h and strings.h may both be included... yes
checking for .preinit_array/.init_array/.fini_array support... yes
checking how to run the C preprocessor... yes
checking if mkdir takes one argument... i686-pc-linux-gnu-gcc -E
no
*** Configuration sparcv8-softfloat-linux-gnu not supported
checking for egrep... grep -E
checking for ANSI C header files... yes
checking for sys/types.h... make[1]: *** [configure-gcc] Error 1
make[1]: *** Waiting for unfinished jobs....
yes
checking for sys/stat.h... yes
...
make[1]: Leaving directory
`/var/tmp/cross/sparcv8-softfloat-linux-gnueabi/portage/cross-sparcv8-softfloat-linux-gnueabi/gcc-4.3.2-r3/work/build'
make: *** [all] Error 2

Does anybody know combination of versions of gcc-glibc that works?

--
Thanks,
Sergey


armin76 at gentoo

Jun 20, 2009, 2:20 AM

Post #2 of 15 (3330 views)
Permalink
Re: sparcv8 gcc [In reply to]

Сергей Миронов wrote:
> Hi! I'm trying to build cross-enviroment for
> sparcv8-softfloat-linux-gnueabi, but without luck.
>
> gcc 4.3.2 (and 4.4.0) failes to build with message:
> ...
> checking whether string.h and strings.h may both be included... yes
> checking for .preinit_array/.init_array/.fini_array support... yes
> checking how to run the C preprocessor... yes
> checking if mkdir takes one argument... i686-pc-linux-gnu-gcc -E
> no
> *** Configuration sparcv8-softfloat-linux-gnu not supported
> checking for egrep... grep -E
> checking for ANSI C header files... yes
> checking for sys/types.h... make[1]: *** [configure-gcc] Error 1
> make[1]: *** Waiting for unfinished jobs....
> yes
> checking for sys/stat.h... yes
> ...
> make[1]: Leaving directory
> `/var/tmp/cross/sparcv8-softfloat-linux-gnueabi/portage/cross-sparcv8-softfloat-linux-gnueabi/gcc-4.3.2-r3/work/build'
> make: *** [all] Error 2
>
> Does anybody know combination of versions of gcc-glibc that works?
>

AFAIK gnueabi is only for ppc and ARM. Also softfloat(specifying it on
the CHOST on gentoo) is for arm only.


ierton at gmail

Jun 20, 2009, 2:24 AM

Post #3 of 15 (3328 views)
Permalink
Re: sparcv8 gcc [In reply to]

Hm, ok, i get it. But is any way to compile sparc envirment for leon3
proc without fpu?
Maybe its possible to use sparcv8-unknown-linux-gnu and
USE="softfloat" (or similar) ?

2009/6/20 Ral Porcel <armin76 [at] gentoo>:
> ֧ԧ֧ ڧߧ wrote:
>> Hi! I'm trying to build cross-enviroment for
>> sparcv8-softfloat-linux-gnueabi, but without luck.
>>
>> gcc 4.3.2 (and 4.4.0) failes to build with message:
>> ...
>> checking whether string.h and strings.h may both be included... yes
>> checking for .preinit_array/.init_array/.fini_array support... yes
>> checking how to run the C preprocessor... yes
>> checking if mkdir takes one argument... i686-pc-linux-gnu-gcc -E
>> no
>> *** Configuration sparcv8-softfloat-linux-gnu not supported
>> checking for egrep... grep -E
>> checking for ANSI C header files... yes
>> checking for sys/types.h... make[1]: *** [configure-gcc] Error 1
>> make[1]: *** Waiting for unfinished jobs....
>> yes
>> checking for sys/stat.h... yes
>> ...
>> make[1]: Leaving directory
>> `/var/tmp/cross/sparcv8-softfloat-linux-gnueabi/portage/cross-sparcv8-softfloat-linux-gnueabi/gcc-4.3.2-r3/work/build'
>> make: *** [all] Error 2
>>
>> Does anybody know combination of versions of gcc-glibc that works?
>>
>
> AFAIK gnueabi is only for ppc and ARM. Also softfloat(specifying it on
> the CHOST on gentoo) is for arm only.
>
>



--
ӧѧا֧ߧڧ֧,
֧ԧ֧.


armin76 at gentoo

Jun 20, 2009, 2:31 AM

Post #4 of 15 (3320 views)
Permalink
Re: sparcv8 gcc [In reply to]

֧ԧ֧ ڧߧ wrote:
> Hm, ok, i get it. But is any way to compile sparc envirment for leon3
> proc without fpu?
> Maybe its possible to use sparcv8-unknown-linux-gnu and
> USE="softfloat" (or similar) ?
>
> 2009/6/20 Ral Porcel <armin76 [at] gentoo>:
>> ֧ԧ֧ ڧߧ wrote:
>>> Hi! I'm trying to build cross-enviroment for
>>> sparcv8-softfloat-linux-gnueabi, but without luck.
>>>
>>> gcc 4.3.2 (and 4.4.0) failes to build with message:
>>> ...
>>> checking whether string.h and strings.h may both be included... yes
>>> checking for .preinit_array/.init_array/.fini_array support... yes
>>> checking how to run the C preprocessor... yes
>>> checking if mkdir takes one argument... i686-pc-linux-gnu-gcc -E
>>> no
>>> *** Configuration sparcv8-softfloat-linux-gnu not supported
>>> checking for egrep... grep -E
>>> checking for ANSI C header files... yes
>>> checking for sys/types.h... make[1]: *** [configure-gcc] Error 1
>>> make[1]: *** Waiting for unfinished jobs....
>>> yes
>>> checking for sys/stat.h... yes
>>> ...
>>> make[1]: Leaving directory
>>> `/var/tmp/cross/sparcv8-softfloat-linux-gnueabi/portage/cross-sparcv8-softfloat-linux-gnueabi/gcc-4.3.2-r3/work/build'
>>> make: *** [all] Error 2
>>>
>>> Does anybody know combination of versions of gcc-glibc that works?
>>>
>> AFAIK gnueabi is only for ppc and ARM. Also softfloat(specifying it on
>> the CHOST on gentoo) is for arm only.
>>
>>
>
>
>

http://gcc.gnu.org/onlinedocs/gcc-4.4.0/gcc/SPARC-Options.html#SPARC-Options
You'll need to use -mno-fpu on the CFLAGS. And again, the -softfloat-
thing on the CHOST is gentoo-specific and only applies to ARM.


ierton at gmail

Jun 20, 2009, 2:51 AM

Post #5 of 15 (3325 views)
Permalink
Re: sparcv8 gcc [In reply to]

2009/6/20 Ral Porcel <armin76 [at] gentoo>:
> ֧ԧ֧ ڧߧ wrote:
>> Hm, ok, i get it. But is any way to compile sparc envirment for leon3
>> proc without fpu?
>> Maybe its possible to use sparcv8-unknown-linux-gnu and
>> USE="softfloat" (or similar) ?
>>
>> 2009/6/20 Ral Porcel <armin76 [at] gentoo>:
>>> ֧ԧ֧ ڧߧ wrote:
>>>> Hi! I'm trying to build cross-enviroment for
>>>> sparcv8-softfloat-linux-gnueabi, but without luck.
>>>>
>>>> gcc 4.3.2 (and 4.4.0) failes to build with message:
>>>> ...
>>>> checking whether string.h and strings.h may both be included... yes
>>>> checking for .preinit_array/.init_array/.fini_array support... yes
>>>> checking how to run the C preprocessor... yes
>>>> checking if mkdir takes one argument... i686-pc-linux-gnu-gcc -E
>>>> no
>>>> *** Configuration sparcv8-softfloat-linux-gnu not supported
>>>> checking for egrep... grep -E
>>>> checking for ANSI C header files... yes
>>>> checking for sys/types.h... make[1]: *** [configure-gcc] Error 1
>>>> make[1]: *** Waiting for unfinished jobs....
>>>> yes
>>>> checking for sys/stat.h... yes
>>>> ...
>>>> make[1]: Leaving directory
>>>> `/var/tmp/cross/sparcv8-softfloat-linux-gnueabi/portage/cross-sparcv8-softfloat-linux-gnueabi/gcc-4.3.2-r3/work/build'
>>>> make: *** [all] Error 2
>>>>
>>>> Does anybody know combination of versions of gcc-glibc that works?
>>>>
>>> AFAIK gnueabi is only for ppc and ARM. Also softfloat(specifying it on
>>> the CHOST on gentoo) is for arm only.
>>>
>>>
>>
>>
>>
>
> http://gcc.gnu.org/onlinedocs/gcc-4.4.0/gcc/SPARC-Options.html#SPARC-Options
> You'll need to use -mno-fpu on the CFLAGS. And again, the -softfloat-
> thing on the CHOST is gentoo-specific and only applies to ARM.
>
>

Thanks! i'll try it as soon as i can.


ierton at gmail

Jun 23, 2009, 5:40 AM

Post #6 of 15 (3340 views)
Permalink
Re: sparcv8 gcc [In reply to]

>> http://gcc.gnu.org/onlinedocs/gcc-4.4.0/gcc/SPARC-Options.html#SPARC-Options
>> You'll need to use -mno-fpu on the CFLAGS. And again, the -softfloat-
>> thing on the CHOST is gentoo-specific and only applies to ARM.
>>
>>
>
> Thanks! i'll try it as soon as i can.

Hi.
man gcc says about -mno-fpu in SPARC section that "... you need to
compile libgcc.a, the library that comes with GCC, with -msoft-float
in order for this to work". So i try that:

$ export CFLAGS="-msoft-float"
$ crossdev sparc-module2-linux-gnu

Unfortunately, binutils fails to build with link-time errors:

../bfd/.libs/libbfd.so: undefined reference to `__floatsidf'
../bfd/.libs/libbfd.so: undefined reference to `__adddf3'
../bfd/.libs/libbfd.so: undefined reference to `__divdf3'

I found, that these functions are gcc floating point implementation.
But binutils should be built before gcc... So i think, that i am
trying to do something wrong again. Could you help?

Note, that without export CFLAGS="-msoft-float", crossdev successfully
builds development tree, but i can't use -mno-fpu in it's CFLAGS (same
errors).

Thanks!
Sergey


wireless at tampabay

Jun 23, 2009, 7:06 AM

Post #7 of 15 (3325 views)
Permalink
Re: sparcv8 gcc [In reply to]

wrote:
>>> http://gcc.gnu.org/onlinedocs/gcc-4.4.0/gcc/SPARC-Options.html#SPARC-Options
>>> You'll need to use -mno-fpu on the CFLAGS. And again, the -softfloat-
>>> thing on the CHOST is gentoo-specific and only applies to ARM.

>> Thanks! i'll try it as soon as i can.

> Hi.
> man gcc says about -mno-fpu in SPARC section that "... you need to
> compile libgcc.a, the library that comes with GCC, with -msoft-float
> in order for this to work". So i try that:

Well, I'm not up on the sparc architecture. But, maybe there
are different versions of the sparc chipsets that have different
hardware (read some with fpu some without). I know that
is true amongst the Arm chipsets. Maybe a little research to
actually verify that the Sparc chipset you are compiling
on, actually has a fully functional FPU or not needs clarification?
Furthermore, if this is a Motherboard from SUN or a sparc clone
vendor, the FPU might be a separate, discreet chip....who knows....

In the old days, Solbourne, Tatung and Sun all did funky things
with the Sparc Architecture...... I think the Euro Space agency
even designed and built some sparc chipsets. If they are on a FPGA,
who knows the details of some funky SOC design. That may or maynot
be the source of your issues.


just a thought,
hth,


James


ierton at gmail

Jun 24, 2009, 5:30 AM

Post #8 of 15 (3320 views)
Permalink
Re: sparcv8 gcc [In reply to]

2009/6/23 wireless <wireless [at] tampabay>:
> wrote:
>>>> http://gcc.gnu.org/onlinedocs/gcc-4.4.0/gcc/SPARC-Options.html#SPARC-Options
>>>> You'll need to use -mno-fpu on the CFLAGS. And again, the -softfloat-
>>>> thing on the CHOST is gentoo-specific and only applies to ARM.
>
>>> Thanks! i'll try it as soon as i can.
>
>> Hi.
>> man gcc says about -mno-fpu in SPARC section that "... you need to
>> compile libgcc.a, the library that comes with GCC, with -msoft-float
>> in order for this to work". So i try that:
>
> Well, I'm not up on the sparc architecture. But, maybe there
> are different versions of the sparc chipsets that have different
> hardware (read some with fpu some without). I know that
> is true amongst the Arm chipsets. Maybe a little research to
> actually verify that the Sparc chipset you are compiling
> on, actually has a fully functional FPU or not needs clarification?
> Furthermore, if this is a Motherboard from SUN or a sparc clone
> vendor, the FPU might be a separate, discreet chip....who knows....
>
> In the old days, Solbourne, Tatung and Sun all did funky things
> with the Sparc Architecture...... I think the Euro Space agency
> even designed and built some sparc chipsets. If they are on a FPGA,
> who knows the details of some funky SOC design. That may or maynot
> be the source of your issues.
>
>
> just a thought,
> hth,
>
>
> James
>

Mmm, iam using FPGA emulation board ML402 with LEON3 cpu and
Gaisler's IP-blocks. There is no FPU, because FPU is not for free:)
I have some old splack distribution (from older colleges, i don't know
where they find it:) Splack runs fine, but there is no toolchain and
that's why it is hard to install modern software on top of it..

--
Thanks,
Sergey


peter at stuge

Jun 24, 2009, 9:13 AM

Post #9 of 15 (3332 views)
Permalink
Re: sparcv8 gcc [In reply to]

Сергей Миронов wrote:
> Mmm, iam using FPGA emulation board ML402 with LEON3 cpu and
> Gaisler's IP-blocks.

Gaisler has a toolchain, right? Does that work?


//Peter


ierton at gmail

Jul 1, 2009, 1:40 AM

Post #10 of 15 (3309 views)
Permalink
Re: sparcv8 gcc [In reply to]

2009/6/24 Peter Stuge <peter [at] stuge>:
> wrote:
>> Mmm, iam using FPGA emulation board ML402 with LEON3 cpu and
>> Gaisler's IP-blocks.
>
> Gaisler has a toolchain, right? Does that work?
>
> //Peter
>

Yes, gaisler toochain works fine with gaisler's Snapgear Linux. Hmm..
but is there an easy way to attach their precompiled gcc and binutils
to gentoo crossbuild system? Hmm..

--
Thanks,
Sergey


vapier at gentoo

Jul 19, 2009, 11:18 AM

Post #11 of 15 (3217 views)
Permalink
Re: sparcv8 gcc [In reply to]

On Wednesday 01 July 2009 04:40:47 wrote:
> 2009/6/24 Peter Stuge <peter [at] stuge>:
> > wrote:
> >> Mmm, iam using FPGA emulation board ML402 with LEON3 cpu and
> >> Gaisler's IP-blocks.
> >
> > Gaisler has a toolchain, right? Does that work?
>
> Yes, gaisler toochain works fine with gaisler's Snapgear Linux.

and what is their tuple exactly ? do they apply custom patches ? softfloat +
sparc isnt really tested under Gentoo because pretty much no one has asked for
it or attempted it before.

> but is there an easy way to attach their precompiled gcc and binutils
> to gentoo crossbuild system? Hmm..

there isnt a "gentoo crossbuild system". you tell emerge what toolchain to
use and it uses it. there is no requirement of "the toolchain must have been
installed with crossdev".
-mike
Attachments: signature.asc (0.82 KB)


peter at stuge

Jul 20, 2009, 12:33 PM

Post #12 of 15 (3222 views)
Permalink
Re: sparcv8 gcc [In reply to]

Mike Frysinger wrote:
> > >> Mmm, iam using FPGA emulation board ML402 with LEON3 cpu and
> > >> Gaisler's IP-blocks.
> > >
> > > Gaisler has a toolchain, right? Does that work?
> >
> > Yes, gaisler toochain works fine with gaisler's Snapgear Linux.
>
> and what is their tuple exactly ?

info:
http://www.gaisler.com/cms/index.php?option=com_content&task=view&id=63&Itemid=31

downloads:
http://www.gaisler.com/cms/index.php?option=com_content&task=view&id=160&Itemid=108
ftp://gaisler.com/gaisler.com/linux/linux-2.6/toolchains/sparc-linux-3.4.4/
ftp://gaisler.com/gaisler.com/linux/linux-2.6/toolchains/sparc-uclinux-3.4.4/

I guess the tuples are simply sparc-linux and sparc-uclinux.


> do they apply custom patches ?

Don't know, but they have just one toolchain for all targets.

--8<-- (the first info page url up there)
LINUX support for LEON2 and LEON3 is provided through a special
version of the SnapGear Embedded Linux distribution. SnapGear Linux
is a full source package, containing kernel, libraries and
application code for rapid development of embedded Linux systems. The
LEON port of SnapGear supports both MMU and non-MMU LEON
configurations, as well as the optional V8 mul/div instructions and
floating-point unit (FPU). The port include symetric multi-processing
(SMP) support for LEON3 systems with multiple processors. A single
cross-compilation tool-chain is provided which is capable of
compiling the kernel and applications for any configuration.
-->8--


> > but is there an easy way to attach their precompiled gcc and
> > binutils to gentoo crossbuild system? Hmm..
>
> there isnt a "gentoo crossbuild system". you tell emerge what
> toolchain to use and it uses it. there is no requirement of "the
> toolchain must have been installed with crossdev".

So it seems their toolchain could easily be used.


//Peter


ierton at gmail

Jul 20, 2009, 2:32 PM

Post #13 of 15 (3213 views)
Permalink
Re: sparcv8 gcc [In reply to]

2009/7/20 Peter Stuge <peter [at] stuge>

> Mike Frysinger wrote:
> > > >> Mmm, iam using FPGA emulation board ML402 with LEON3 cpu and
> > > >> Gaisler's IP-blocks.
> > > >
> > > > Gaisler has a toolchain, right? Does that work?
> > >
> > > Yes, gaisler toochain works fine with gaisler's Snapgear Linux.
> >
> > and what is their tuple exactly ?
>
> info:
>
> http://www.gaisler.com/cms/index.php?option=com_content&task=view&id=63&Itemid=31
>
> downloads:
>
> http://www.gaisler.com/cms/index.php?option=com_content&task=view&id=160&Itemid=108
> ftp://gaisler.com/gaisler.com/linux/linux-2.6/toolchains/sparc-linux-3.4.4/
>
> ftp://gaisler.com/gaisler.com/linux/linux-2.6/toolchains/sparc-uclinux-3.4.4/
>
> I guess the tuples are simply sparc-linux and sparc-uclinux.
>
>
> > do they apply custom patches ?
>
> Don't know, but they have just one toolchain for all targets.
>
> --8<-- (the first info page url up there)
> LINUX support for LEON2 and LEON3 is provided through a special
> version of the SnapGear Embedded Linux distribution. SnapGear Linux
> is a full source package, containing kernel, libraries and
> application code for rapid development of embedded Linux systems. The
> LEON port of SnapGear supports both MMU and non-MMU LEON
> configurations, as well as the optional V8 mul/div instructions and
> floating-point unit (FPU). The port include symetric multi-processing
> (SMP) support for LEON3 systems with multiple processors. A single
> cross-compilation tool-chain is provided which is capable of
> compiling the kernel and applications for any configuration.
> -->8--
>
>
> > > but is there an easy way to attach their precompiled gcc and
> > > binutils to gentoo crossbuild system? Hmm..
> >
> > there isnt a "gentoo crossbuild system". you tell emerge what
> > toolchain to use and it uses it. there is no requirement of "the
> > toolchain must have been installed with crossdev".
>
> So it seems their toolchain could easily be used.
>
>
> //Peter
>

O, thanks, but i know alrady about gaisler's toolchain. Compiler works well
and generates nice sparcv8-softfloat binaries. Also i've compiled kernel
successfully. Snapgear linux (as a whole) is #$% imho. Works bad. The
question is - how to intergate nice compiler with emerge. I feel that it
should be easy, but still can't catch this thing..

--
Thanks,
Sergey


peter at stuge

Jul 20, 2009, 3:00 PM

Post #14 of 15 (3208 views)
Permalink
Re: sparcv8 gcc [In reply to]

Сергей Миронов wrote:
> O, thanks, but i know alrady about gaisler's toolchain.

The info was in reply to Mike's question.


> The question is - how to intergate nice compiler with emerge. I
> feel that it should be easy, but still can't catch this thing..

Write an ebuild which installs the toolchain into /usr and then you
could set CHOST and SYSROOT and run emerge.


//Peter


vapier at gentoo

Jul 24, 2009, 10:53 PM

Post #15 of 15 (3202 views)
Permalink
Re: sparcv8 gcc [In reply to]

On Monday 20 July 2009 18:00:03 Peter Stuge wrote:
> Сергей Миронов wrote:
> > O, thanks, but i know alrady about gaisler's toolchain.
>
> The info was in reply to Mike's question.
>
> > The question is - how to intergate nice compiler with emerge. I
> > feel that it should be easy, but still can't catch this thing..
>
> Write an ebuild which installs the toolchain into /usr and then you
> could set CHOST and SYSROOT and run emerge.

doesnt even need to be /usr. as long as it's in PATH and you can set CHOST to
the prefix, it should work. in other words, if you were to submit an ebuild
for their binary toolchain that installed into /opt/foo/, there's no reason
that the ebuild couldnt be added to the main Gentoo tree.
-mike
Attachments: signature.asc (0.82 KB)

Gentoo embedded RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.