Native Compilation

Shawn Rutledge shawn.t.rutledge at gmail.com
Fri Jan 11 08:47:11 CET 2008


On Jan 10, 2008 11:57 PM, Kurtis Heimerl <kheimerl at cs.berkeley.edu> wrote:
> I've been working on cross compiling a particular software package, and
> that's working just fine with the tools and direction given by the wiki.
>
> However, there's a python API it presents, which requires compiling a python
> module. This, I cannot seem to get working, and i've been struggling for a
> while. I understand this to be a limitation of python, as most of the
> reading I've found says it's really difficult to cross compile.  I don't
> feel I'm at the level to modify the setup.py script enough to cross compile
> correctly, and so I am at an impasse.
>
> I decided to investigate compiling natively, as a solution to this. Python
> is installed, so that stage should be easy. Likewise, there is a GCC package
> in the repository, so the C portion shouldn't be difficult either. However,
> there seems to be no assembler (as) in the repository at all. This seems
> like nonsense, though the linker (LD) is missing as well. Why is this? Have
> I just been unable to find these programs?

Install task-base-dev, which will pull in everything you need; but you
will need some extra space.  What I did was
1.) format a micro SD card as ext3
2.) cp -a /usr/* /media/card
3.) modify /etc/fstab to mount it as /usr
/dev/mmcblk0p1  /usr            ext3    defaults,noatime        0  0
4.) reboot and install everything you like :-)

Since the old /usr is still sitting there unmodified, it's
reversible... just leave out the card when you boot, then fix fstab to
mount the card at /media/card again.  Only if some packages installed
files in other places besides /usr, they will still be there, but that
hasn't been an issue for me.

I think it's also possible to boot from a micro SD card, if you have
the entire root fs installed on it, but I haven't tried that.

[fic-gta01][08:52:08 PM] which as
/usr/bin/as



More information about the device-owners mailing list