Re: Cross-compiling options for configure

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

 



After hacking away a bit more at the problem, I think I found a solution. I'm posting it in case anyone else runs into the same problems and this solution works for them.

The trick was noticing that despite the --host and --with-arch flags, the configure script still wasn't convinced it was doing a cross-compile:

> checking whether we are cross compiling... no

Digging into the configure script revealed that it was looking for a binary called <host_triplet>-gcc in the PATH that already had the correct -arch settings built-in.

So I created the following trampoline script 'x86_64-apple-darwin9.8.0-gcc' and stuck it in my path:

#!/bin/sh
gcc -arch x86_64 $@

Now configure correctly detects that it's in cross-compile mode.

I also found that I could avoid creating the trampoline altogether by setting the CC variable explicitly like so:

$ ./configure --host=x86_64-apple-darwin9.8.0 --with-arch=x86_64 CC="gcc -arch x86_64"

Much more elegant. The only thing left is to point configure at cross-compiled versions of its dependent libraries (libfreetype and libxml2). (You could also use pango instead of libxml2.)

$ ./configure --host=x86_64-apple-darwin9.8.0 --with-arch=x86_64 CC="gcc -arch x86_64" --enable-libxml2 LIBXML2_LIBS="-L/cross-prefix/lib -lxml2" LIBXML2_CFLAGS="-I/cross-prefix/include/libxml2" --with-freetype-config=/cross-prefix/bin/freetype-config

Sweet success.

David
_______________________________________________
Fontconfig mailing list
Fontconfig@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/fontconfig


[Index of Archives]     [Fedora Fonts]     [Fedora Users]     [Fedora Cloud]     [Kernel]     [Fedora Packaging]     [Fedora Desktop]     [PAM]     [Gimp Graphics Editor]     [Yosemite News]

  Powered by Linux