[Top] [All Lists]

Re: Cross compiling RPMs

To: Florian Lohoff <>
Subject: Re: Cross compiling RPMs
From: Jun Sun <>
Date: Fri, 26 Jan 2001 12:51:31 -0800
Cc: Pete Popov <>,
In-reply-to: <>; from on Fri, Jan 26, 2001 at 09:23:41PM +0100
References: <> <> <>
User-agent: Mutt/1.2.5i
On Fri, Jan 26, 2001 at 09:23:41PM +0100, Florian Lohoff wrote:
> On Fri, Jan 26, 2001 at 10:37:03AM -0800, Pete Popov wrote:
> > glibc.  Others might have similar toolchains they can point you at. 
> > Another option is native builds, which I personally don't like.
> Cross compiling is definitly no option for debian as the dependencies
> etc are all made from "ldd binary" which has to fail for cross-compiling.
> I guess this also happens to rpm packages so cross-compiling to really
> get a correct distribution is definitly no option.

There are other ways to figure out the dependency in a cross-compiling 
environment.  We have an internal tool that does just that and more (some
size/fs optimization stuff).  It is not used in the current release, though.

> The larger the packages are the harder it is to get them cross-compiled
> correctly as they run nifty little check programs from configure which
> cant work. I guess you had similar problems as all rpms are
> "noarch" which is definitly - ummm - interesting.

The "noarch" means the installed target is arch-independent.  The
standard setup in mvista CDK is to let target boot from NFS root fs, 
where NFS host can be linux/i386, Linux/ppc and Sun/Sparc (perhaps
Win/i386 as well, I am not sure).  Those packages are meant to be 
installed to all those hosts, and therefore "noarch" :-0.

> I definitly go for native builds - Once you have a working stable 
> base you can set up debian autobuilders which will do nearly 
> everything for you except signing and uploading the package into
> the main repository.

Native compiling is easy.  Cross-compiling is cool. :-)

Well, not exactly.  When you are dealing with head-less, disk-less 
memory-scarce embedded devices with ad hoc run-time environments,
cross-compiling is your only choice.


<Prev in Thread] Current Thread [Next in Thread>