Cross-compilers.

Enrico Scholz enrico.scholz at informatik.tu-chemnitz.de
Sun Jul 23 14:57:27 UTC 2006


dwmw2 at infradead.org (David Woodhouse) writes:

>
> Stuff like crosstool makes it relatively simple, but it's still slow --
> I'd really like to be able to easily and quickly install cross-compiler
> packages for random architectures like ARM, MIPS, i386, etc.
>
> I'd like to ship a multi-arch capable binutils like Debian's
> 'binutils-multi'

I see the following problems with such a '--enable-targets=all' binutils
package:

* it slows down linker/assembler on some platforms (see [1])

* the '--with-sysroot=...' switch would not work with such a multi-arch
  package


> and a set of cross-compilers -- preferably the same versions of each
> as the one in Core.

This will create a huge amount of variations:

* soft-float/hard-float
* little/big-endianess
* cpu optimized libs (e.g. ARM XScale, EP9301, Thumb/non-thumb); multi-lib
  support would be probably too much overkill for embedded platforms and I
  run into heavy inter-package dependency problems when experimenting with
  this
* used libc (GNU Libc, uclibc)
* X11-based/non-X11 based

Some of this options can/are encoded in the arch string
(e.g. 'arm-xscale-linux-gnu', 'armb-xscale_softfloat-linux-uclibc') but
things like X11-support not.


Then: rpm must be enhanced to create proper Provides:/Requires:. E.g. it
would be bad when a ARM package contains.

| Provides: libc.so.6  

which might be installed instead of the host glibc. I hacked around this
problem by using custom find-requires/provides scripts so that

| Provides: libc.so.6(arm-xscale-linux-gnu)

are generated. But it requires

| %define _use_internal_dependency_generator 0

which is discouraged.



Enrico

Footnotes: 
[1]  https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=63618

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 480 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/fedora-extras-list/attachments/20060723/e7ede569/attachment.sig>


More information about the fedora-extras-list mailing list