linux-embedded.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Rob Landley <rob@landley.net>
To: weigelt@metux.de
Cc: Linux Embedded Maillist <linux-embedded@vger.kernel.org>
Subject: Re: [PATCH 0/1] Embedded Maintainer(s), linux-embedded@vger list
Date: Sun, 15 Jun 2008 16:48:57 -0500	[thread overview]
Message-ID: <200806151648.57679.rob@landley.net> (raw)
In-Reply-To: <20080612181806.GA7423@nibiru.local>

On Thursday 12 June 2008 13:18:07 Enrico Weigelt wrote:
> * Rob Landley <rob@landley.net> schrieb:
>
> Hi,
>
> > There's also qemu.  You can native build under emulation.
>
> did you ever consider that crosscompiling is not only good for
> some other arch, but a few more things ?

Sure, such as building a uClibc system on a glibc host, which my _previous_ 
firmware linux project (http://landley.net/code/firmware/old) was aimed at.

That used User Mode Linux instead of qemu, because "fakeroot" wasn't good 
enough and chroot A) requires the build to run as root, B) sometimes gets a 
little segfaulty if you build uClibc with newer kernel headers than the 
kernel in the system you're running on.

You can't get away from cross compiling whenever you want to bootstrap a new 
platform.  But cross compiling can be minimized and encapsulated.  It can be 
a stage you pass through to get it over with and no longer have to deal with 
it on the other side, which is the approach I take.

> > In addition, if you have a cross compiler but don't want to spend all
> > your time lying to ./configure, preventing gcc from linking against the
> > host's zlib or grabbing stuff out of /usr/include that your target hasn't
> > got, or
>
> #1: use a proper (sysroot'ed) toolchain

I break everything.  (I've broken native toolchains.  I just break them 
_less_.)

By my count sysroot is the fifth layer of path logic the gcc guys have added 
in an attempt to paint over the dry rot.

Personally I use a derivative of the old uClibc wrapper script that rewrites 
the command line to start with "--nostdinc --nostdlib" and then builds it 
back up again without having any paths in there it shouldn't.

> #2: fix broken configure.in's (and feed back to upstream or OSS-QM)

Whack-a-mole.  Fun for the whole family.  Only problem is, it never stops.

> #3: replace libtool by unitool

Uninstall libtool and don't replace it with anything, it's a NOP on Linux.

> > libraries are linked inside the emulator, anything that wants to look
> > at /proc or sysinfo does it natively inside the emulator...)
>
> Only crap sw looks at /proc at build time.
> Yes, there's *much* crap sw out there :(

99% of all the developers out there don't really care about portability, and 
never will.  Even if you eliminate the windows guys and the people who don't 
do C, 90% of the people who are _left_ get to work on the PC first, get it to 
work natively on other Linux platforms afterwards.

Cross compiling is a step beyond "portability".  They'll _never_ care about 
cross compiling.  If they get inspired to make it work on MacOS X, then 
you'll have to extract the source and _build_ it on MacOS X to make that 
work.  And 99% of all developers will nod their heads and go "quite right, as 
it should be".

This isn't going to change any time soon.

Rob
-- 
"One of my most productive days was throwing away 1000 lines of code."
  - Ken Thompson.

  parent reply	other threads:[~2008-06-15 21:48 UTC|newest]

Thread overview: 182+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1209577322.25560.402.camel@pmac.infradead.org>
     [not found] ` <87bq3rgq40.fsf@basil.nowhere.org>
     [not found]   ` <1209582709.25560.441.camel@pmac.infradead.org>
     [not found]     ` <1209582709.25560.441.camel-ZP4jZrcIevRpWr+L1FloEB2eb7JE58TQ@public.gmane.org>
2008-05-28 21:52       ` [PATCH 0/1] Embedded Maintainer(s), linux-embedded@vger list Rob Landley
2008-06-09 21:27         ` Leon Woestenberg
2008-06-10  3:53           ` Rob Landley
2008-06-10  4:30             ` Sam Ravnborg
2008-06-10  6:55               ` Rob Landley
2008-06-10  7:54                 ` Sam Ravnborg
2008-06-10  9:09                   ` Wolfgang Denk
2008-06-10 13:12                     ` Jamie Lokier
2008-06-10 13:25                       ` Will Newton
2008-06-10 13:33                         ` David Woodhouse
2008-06-10 13:47                           ` Will Newton
2008-06-10 13:53                             ` David Woodhouse
2008-06-10 14:00                               ` Grant Likely
2008-06-10 14:01                             ` Wolfgang Denk
2008-06-10 14:29                               ` Jamie Lokier
2008-06-11  5:34                             ` Rob Landley
2008-06-10 13:49                         ` Wolfgang Denk
2008-06-11  5:25                           ` Rob Landley
2008-06-12 18:18                             ` Enrico Weigelt
2008-06-12 18:55                               ` Wolfgang Denk
2008-06-12 20:55                                 ` Enrico Weigelt
2008-06-15 21:48                               ` Rob Landley [this message]
2008-06-17 14:11                                 ` Enrico Weigelt
2008-06-10 13:47                       ` Wolfgang Denk
2008-06-10 10:20                   ` Jamie Lokier
2008-06-10 10:36                     ` Adrian Bunk
2008-06-10 10:50                     ` Sam Ravnborg
2008-06-11  5:28                       ` Paul Mundt
2008-06-10 17:36                   ` Tim Bird
2008-06-11  3:35                   ` Rob Landley
2008-06-11  5:47                     ` Greg Ungerer
2008-06-12  0:41                       ` Rob Landley
2008-06-12  7:55                         ` Jamie Lokier
2008-06-12 15:23                         ` cross-compiling alternatives (was Re: [PATCH 0/1] Embedded Maintainer(s)...) Tim Bird
2008-06-12 15:50                           ` David Woodhouse
2008-06-12 16:05                             ` Mike Frysinger
2008-06-12 16:08                               ` David Woodhouse
2008-06-12 16:15                                 ` Mike Frysinger
2008-06-12 16:12                               ` Robert P. J. Day
2008-06-13  0:25                                 ` Rob Landley
2008-06-13  1:22                                   ` Bill Gatliff
2008-06-13  6:55                                   ` Alexander Neundorf
2008-06-13 15:06                                     ` Enrico Weigelt
2008-06-13  7:04                                   ` David Woodhouse
2008-06-13 15:02                                     ` linux-embedded-owner
2008-06-13 17:00                                       ` David Woodhouse
2008-06-13 17:12                                         ` Bill Traynor
2008-06-13 18:44                                           ` Tim Bird
2008-06-13 18:55                                             ` Sam Ravnborg
2008-06-13 19:00                                             ` Bill Traynor
2008-06-13 19:43                                             ` Johannes Stezenbach
2008-06-13 17:30                                       ` Makefile debugger linux-embedded-owner
2008-06-13  8:50                                   ` cross-compiling alternatives Bernd Petrovitsch
2008-06-13  9:11                                     ` Alexander Neundorf
2008-06-13 14:51                                   ` cross-compiling alternatives (was Re: [PATCH 0/1] Embedded Maintainer(s)...) Enrico Weigelt
2008-06-16  7:58                                     ` Alexander Neundorf
2008-06-16 16:00                                       ` Enrico Weigelt
2008-06-16 17:38                                         ` Adrian Bunk
2008-06-17 13:57                                           ` Enrico Weigelt
2008-06-13 11:14                                 ` Geert Uytterhoeven
2008-06-13 11:22                                 ` Bart Van Assche
2008-06-12 18:29                               ` Josh Boyer
2008-06-12 19:02                                 ` Mike Frysinger
2008-06-13 13:29                                   ` Josh Boyer
2008-06-13 13:59                                   ` Josh Boyer
2008-06-12 16:08                             ` Paul Mundt
2008-06-12 16:28                               ` Bill Gatliff
2008-06-12 16:31                                 ` Paul Mundt
2008-06-12 16:38                                   ` Mike Frysinger
2008-06-12 18:50                                     ` Bernhard Fischer
2008-06-12 17:14                                   ` Bill Gatliff
2008-06-12 17:22                                     ` Mike Frysinger
2008-06-12 17:23                                     ` Sam Ravnborg
2008-06-13 18:01                                     ` Rob Landley
2008-06-12 16:37                                 ` David Woodhouse
2008-06-12 17:01                                   ` Adrian Bunk
2008-06-12 17:19                                     ` Bill Gatliff
2008-06-12 17:17                                   ` Bill Gatliff
2008-06-13 11:15                                   ` Geert Uytterhoeven
2008-06-13 11:17                                     ` David Woodhouse
2008-06-12 18:34                                 ` Enrico Weigelt
2008-06-12 19:00                                   ` Bill Gatliff
2008-06-15 21:51                                   ` Rob Landley
2008-06-12 18:30                               ` Enrico Weigelt
2008-06-12 18:57                                 ` Wolfgang Denk
2008-06-12 16:23                             ` Tim Bird
2008-06-12 18:37                               ` Enrico Weigelt
2008-06-13 18:45                                 ` Robert Schwebel
2008-06-15 23:12                                   ` Enrico Weigelt
2008-06-16  8:02                                     ` Alexander Neundorf
2008-06-16  8:28                                       ` cross-compiling alternatives Bernd Petrovitsch
2008-06-16  9:25                                         ` Alexander Neundorf
2008-06-13  1:25                               ` cross-compiling alternatives (was Re: [PATCH 0/1] Embedded Maintainer(s)...) Rob Landley
2008-06-13  1:28                                 ` Robert P. J. Day
2008-06-13  1:29                                 ` Mike Frysinger
2008-06-13  6:30                                   ` Alexander Neundorf
2008-06-13 18:51                                     ` Robert Schwebel
2008-06-13 22:25                                       ` Jamie Lokier
2008-06-13 23:19                                         ` Robert Schwebel
2008-06-14  0:07                                           ` Jamie Lokier
2008-06-14 11:26                                             ` Robert Schwebel
2008-06-16 11:39                                               ` Jamie Lokier
2008-06-16 12:06                                                 ` Alexander Neundorf
2008-06-16 13:32                                                   ` Jamie Lokier
2008-06-16 16:28                                                     ` Bernhard Fischer
2008-06-16 22:28                                                       ` Jamie Lokier
2008-06-16 22:44                                                         ` Adrian Bunk
2008-06-16  5:11                                             ` Enrico Weigelt
2008-06-16 11:33                                               ` Jamie Lokier
2008-06-16  8:33                                             ` cross-compiling alternatives Bernd Petrovitsch
2008-06-16 11:17                                               ` Jamie Lokier
2008-06-16 11:43                                                 ` Bernd Petrovitsch
2008-06-16  7:55                                           ` cross-compiling alternatives (was Re: [PATCH 0/1] Embedded Maintainer(s)...) Alexander Neundorf
2008-06-16 15:15                                             ` Enrico Weigelt
2008-06-17  6:27                                               ` Alexander Neundorf
2008-06-17 13:46                                                 ` Enrico Weigelt
2008-06-17 14:22                                                   ` Alexander Neundorf
2008-06-16  4:57                                         ` Enrico Weigelt
2008-06-16 11:44                                           ` Jamie Lokier
2008-06-16  4:31                                       ` Enrico Weigelt
2008-06-16  8:13                                       ` Alexander Neundorf
2008-06-16  8:21                                       ` cross-compiling alternatives Bernd Petrovitsch
2008-06-13  3:11                                 ` cross-compiling alternatives (was Re: [PATCH 0/1] Embedded Maintainer(s)...) Sam Ravnborg
2008-06-13 18:47                                   ` Robert Schwebel
2008-06-13  6:43                             ` Alexander Neundorf
2008-06-13  8:38                               ` Bernd Petrovitsch
2008-06-13  9:06                                 ` Alexander Neundorf
2008-06-13  9:12                                   ` David Woodhouse
2008-06-13  9:32                                     ` Alexander Neundorf
2008-06-13 15:28                                       ` Enrico Weigelt
2008-06-14  0:31                                         ` Jamie Lokier
2008-06-16  4:23                                           ` Enrico Weigelt
2008-06-16 10:49                                             ` Jamie Lokier
2008-06-16 11:09                                               ` David Woodhouse
2008-06-16 11:52                                                 ` Jamie Lokier
2008-06-16 11:59                                                   ` David Woodhouse
2008-06-16 16:43                                                   ` Bernhard Fischer
2008-06-13 10:03                                   ` cross-compiling alternatives Bernd Petrovitsch
2008-06-13 11:24                                     ` Alexander Neundorf
2008-06-13 13:17                                     ` Jamie Lokier
2008-06-13 13:28                                       ` Bernd Petrovitsch
2008-06-13 13:40                                       ` Alexander Neundorf
2008-06-13 13:56                                         ` Matthieu CASTET
2008-06-13 14:41                                           ` Enrico Weigelt
2008-06-13 14:49                                             ` Jamie Lokier
2008-06-13 14:51                                               ` Enrico Weigelt
2008-06-13 14:55                                       ` Enrico Weigelt
2008-06-13 15:16                                     ` Enrico Weigelt
2008-06-13 18:45                                       ` Bernd Petrovitsch
2008-06-13 19:10                                         ` Robert Schwebel
2008-06-16  4:08                                         ` Enrico Weigelt
2008-06-16  7:31                                           ` Peter Korsgaard
2008-06-16 14:33                                             ` Enrico Weigelt
2008-06-16 16:45                                               ` Bernhard Fischer
2008-06-13 19:14                                   ` cross-compiling alternatives (was Re: [PATCH 0/1] Embedded Maintainer(s)...) Rob Landley
2008-06-13 15:25                               ` Enrico Weigelt
2008-06-12 18:25                         ` [PATCH 0/1] Embedded Maintainer(s), linux-embedded@vger list Enrico Weigelt
2008-06-12 21:11                           ` David VomLehn
2008-06-12 21:42                             ` James Chapman
2008-06-12 21:46                               ` Mike Frysinger
2008-06-12 21:53                                 ` Tim Bird
2008-06-12 21:56                                   ` Mike Frysinger
2008-06-13  8:39                                     ` James Chapman
2008-06-13  9:02                                       ` Daniel THOMPSON
2008-06-13 11:28                                         ` James Chapman
2008-06-12 22:02                                 ` Jim Freeman
2008-06-13 13:14                                   ` Samuel Robb
2008-06-13 14:36                                     ` Enrico Weigelt
2008-06-13 14:26                                   ` Enrico Weigelt
2008-06-13 22:24                               ` David VomLehn
2008-06-15 15:39                         ` Leon Woestenberg
2008-06-15 21:43                           ` Rob Landley
2008-06-23 17:22     ` Denys Vlasenko
2008-06-23 18:57       ` Sam Ravnborg
2008-06-23 19:12         ` Denys Vlasenko
2008-06-23 19:33           ` Sam Ravnborg
     [not found] ` <1209636171.25560.508.camel@pmac.infradead.org>
     [not found]   ` <20080501104158.GM20451@one.firstfloor.org>
2008-06-23 17:28     ` Denys Vlasenko
2008-06-23 17:45       ` Adrian Bunk
2008-06-23 18:19         ` Denys Vlasenko
2008-06-23 19:05         ` Tim Bird
2008-06-25  9:50         ` James Chapman
2008-06-25 15:41           ` Adrian Bunk

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=200806151648.57679.rob@landley.net \
    --to=rob@landley.net \
    --cc=linux-embedded@vger.kernel.org \
    --cc=weigelt@metux.de \
    /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 NNTP newsgroup(s).