Differences between revisions 23 and 24
Revision 23 as of 2009-08-28 16:52:12
Size: 3560
Editor: wookey
Comment: Update info on distros and uclibc
Revision 24 as of 2009-09-26 23:04:22
Size: 4088
Editor: HectorOron
Comment: add new entry on preconfiguring debconf questions
Deletions are marked like this. Additions are marked like this.
Line 7: Line 7:
There are two flavours. [http://emdebian.org/grip/index.html|Emdebian Grip] which is standard Debian binaries/packages merely repackaged with some bloat removed. Available for all debian architectures. [http://emdebian.org/crush/index.html|Emdebian Crush] is a much smaller busybox-based distribution for arm only. At this stage it is fairly experimental, but it does work. There are two flavours. [[http://emdebian.org/grip/index.html | Emdebian Grip]] which is standard Debian binaries/packages merely repackaged with some bloat removed. Available for all debian architectures. [[http://emdebian.org/crush/index.html | Emdebian Crush]] is a much smaller busybox-based distribution for arm only. At this stage it is fairly experimental, but it does work.
Line 10: Line 10:
=== what do I need to build a uclibc toolchain in debian? ===
[https://www.slind.org/Main_Page|Slind] includes uclibc support, but is largely woody-vintage.
=== What do I need to build a uclibc toolchain in debian? ===
[[https://www.slind.org/Main_Page | Slind]] includes uclibc support, but is largely woody-vintage.
Line 13: Line 13:
New uclibc packages are being prepared for Debian and new -uclibc architectures will be supported by dpkg soon. New uclibc packages are being prepared for Debian and new -uclibc architectures are supported by dpkg. (DebianBug:455501)
Line 16: Line 16:
=== What changes do I have to do to the linux-kernel-headers source package so I can build them for a uclibc-* architecture? === === What changes do I have to do to the linux-libc-dev source package so I can build them for a uclibc-* architecture? ===
Line 18: Line 18:
sorry, all this doesn't work,yet. all of it should work with the next version of lkh, though. Sorry, all this doesn't work,yet. all of it should work with the next version of lkh, though.
Line 20: Line 20:
uclibc support should be in it very soon now. uClibc support should be in it very soon now.
Line 23: Line 23:
That depends on what you want to do. If you want to build for a existing set of applications and libraries it is a good idea to use the toolchain they used. If you are starting from scratch you can build your own. It's not that hard. the toolchain howto on the emdebian site helps. also have a look at the README.cross in binutils and gccs debian dir.
That depends on what you want to do. If you want to build for a existing set of applications and libraries it is a good idea to use the toolchain they used. If you are starting from scratch you can build your own. It's not that hard, the toolchain howto on the emdebian site helps, also have a look at the README.cross in binutils and gcc-X.Y debian directory.
Line 54: Line 55:
=== How could I preconfigure debconf questions when configuring my root filesystem? ===

You need to feed debconf answers before installing the packages. An example using debconf-set-selections is provided:

{{{
echo "emdebian-tools emsetup/aptagent boolean true" | debconf-set-selections
echo "emdebian-tools emsource/targetsuite select unstable" | debconf-set-selections
LANG=C DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_FRONTEND=noninteractive apt-get install emdebian-tools
}}}

Frequently Asked Questions

Embedded Debian

Where do I download the Emdebian distribution?

There are two flavours. Emdebian Grip which is standard Debian binaries/packages merely repackaged with some bloat removed. Available for all debian architectures. Emdebian Crush is a much smaller busybox-based distribution for arm only. At this stage it is fairly experimental, but it does work.

What do I need to build a uclibc toolchain in debian?

Slind includes uclibc support, but is largely woody-vintage.

New uclibc packages are being prepared for Debian and new -uclibc architectures are supported by dpkg. (455501)

What changes do I have to do to the linux-libc-dev source package so I can build them for a uclibc-* architecture?

Sorry, all this doesn't work,yet. all of it should work with the next version of lkh, though. when bootstrapping in the phase where you have no target compiler you have to disable the tests: setting DEB_BUILD_OPTIONS=nocheck will do that. uClibc support should be in it very soon now.

Should I build my own cross toolchain - or use a prebuilt one?

That depends on what you want to do. If you want to build for a existing set of applications and libraries it is a good idea to use the toolchain they used. If you are starting from scratch you can build your own. It's not that hard, the toolchain howto on the emdebian site helps, also have a look at the README.cross in binutils and gcc-X.Y debian directory.

I was just wondering what the policy in on keeping the sid/etch packages install-able?

The idea has been (for a while) to have the common toolchains available and up to date for stable, testing and unstable, but this has proved difficult to actually do, and whilst most of the infrastructure is now there, there is still some work needed to make the system build new compilers each time debian uploads a new one, and to fix the patches when they get stale.

Are there currently any plans for cross tools in debian proper?

We have got preliminary agreement for Debian main to provide a set of cross-compilers as part of the normal packages which will cover most needs. Doing this will mean that we don't need to maintain our own parallel set.

At Debconf9 a scheme was agreed to solve the problem that autobuilders can not work with cross-dependencies. Hopefully there will be at least -arm-gnueabi cross-tools in squeeze.

Would help working on these be useful, or should I just be more patient ?

Help would be very useful. Developer time is the only thing stopping things progress faster.

Cross-installing Debian using debootstrap

Outline

Help with cross-compiling.

Some packages include documentation on cross-compiling. An important piece of information is the list of cache variables available to ./configure --cache-file. These allow you to look up each point at which ./configure fails in the buildd log at Debian for your target architecture and identify the value detected during a native build. You can then set this value in an $arch.cache file in the top level source and pass that cache file to ./configure. (It may be useful to set this file chmod 444 to prevent ./configure from altering it).

How could I preconfigure debconf questions when configuring my root filesystem?

You need to feed debconf answers before installing the packages. An example using debconf-set-selections is provided:

echo "emdebian-tools  emsetup/aptagent        boolean true" | debconf-set-selections
echo "emdebian-tools  emsource/targetsuite    select  unstable" | debconf-set-selections
LANG=C DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_FRONTEND=noninteractive apt-get install emdebian-tools


CategoryPermalink CategoryEmdebian