Re: cross compiling on x86_64

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2/25/07, Sam Varshavchik <mrsam@xxxxxxxxxxxxxxx> wrote:
Philippe A. writes:
> I have installed FC6 x86_64 on my new system. I would like to know how I
> can compile a 32 bit freetype package. The following didn't work:
>
> rpmbuild -bb freetype.spec -bb --target i386
>
> It fails with these errors:
>
> checking build system type... x86_64-redhat-linux-gnu
> checking host system type... x86_64-redhat-linux-gnu
> checking target system type... i386-redhat-linux-gnu

I do not believe that rpm's stock configuration supports cross-building to a
different architecture.  The --target parameter only sets the architecture
label on the resulting rpms, and not much more.

Cross-compilation is not trivial to set up.  You must install, beforehand,
the i386 build of every library that your software compiles against, and you
must know, beforehand, what they are.  Then, you'll need to arrange,
somehow, for the software's configuration script and makefile pass the -m32
option to gcc.

There is a program called "mock" (in extras) which builds SRPMs in a
chroot, gathering all the needed dependecies and everything
automatically.  I think I remember correctly that it can be setup to
build 32-bit packages on a 64-bit system.  I played around with it
once back a while ago.  I don't remember the details.

Jonathan


[Index of Archives]     [Current Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]     [Fedora Docs]

  Powered by Linux