Differences between revisions 7 and 31 (spanning 24 versions)
Revision 7 as of 2007-03-27 07:55:51
Size: 3724
Editor: NeilWilliams
Comment: add note on subversion
Revision 31 as of 2010-05-31 13:48:29
Size: 1919
Editor: NeilWilliams
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= Emdebian Quick Start = = Emdebian Crush Quick Start =
Line 3: Line 3:
This is intended to be a quick start guide to Emdebian and emdebian-tools. This is intended to be a quick start guide to Emdebian and ([[DebPkg:emdebian-crush|emdebian-crush]]).
Line 5: Line 5:
== Emdebian-tools == Crush is the cross-built flavour of Emdebian with functional differences to standard Debian. Only ARM (OABI) packages exist for Crush 1.0 and there are significant problems adding any other architectures. Crush development is on hold until after squeeze release.
Line 7: Line 7:
You will need to install a package called emdebian-tools, either from Debian repositories or the Emdebian repository. {{{emdebian-tools}}} also brings in {{{apt-cross}}} and {{{dpkg-cross}}}. {{{subversion}}} is recommended by {{{emdebian-tools}}} and used by {{{emsource}}} later. See [[http://www.emdebian.org/grip|the Emdebian website]] for more on Emdebian Grip - the flavour of Emdebian that is binary-compatible with standard Debian and available for seven architectures, arm, armel, mips, mipsel, powerpc, i386 and amd64.

<<TableOfContents>>

emdebian-tools is only available now in Debian stable. In Debian unstable (and soon in testing), Crush is built using normal Debian build tools and then post-processed using the scripts in [[DebPkg:emdebian-grip|emdebian-grip]] and configuration files from [[DebPkg:emdebian-crush|emdebian-crush]].

See also EmdebianRootfs and [[Multistrap|Multistrap]].

== Install pdebuild-cross ==
Line 10: Line 18:
$ sudo apt-get install emdebian-tools subversion $ sudo apt-get install pdebuild-cross
$
sudo pdebuild-cross-create
Line 13: Line 22:
This will ask you where you want to build packages, your username for emdebian svn access if you have one and whether you want to use apt-get or aptitude for toolchain package installation. {{{dpkg-cross}}} will offer you the chance to set a default cross-building architecture which saves a lot of typing later on. If you choose {{{None}}}, you will need to add '{{{--arch ARCH}}}' to all the emdebian-tools commands. == Customised Emdebian sources ==
Line 15: Line 24:
After you have the tools, you need to setup an emdebian environment using {{{emsetup}}}. This sets up the {{{~/.dpkg-cross}}} dir which contains apt caches and configuration files and adds the Emdebian toolchain repository to your apt sources list. apt will then keep your toolchain updated as normal. Emdebian keeps a few packages in customised versions, where such customisations will provide suitable functional differences and dependency changes. Alternatively, you can use your own modified packages.
Line 17: Line 26:
New users are recommended to use at least one {{{-v|--verbose}}} option to all emdebian-tools commands. These steps are still experimental. In time, source packages will be available to download. For now, [[http://www.emdebian.org/svn/browser/current/target|some packages are available from SVN]].

Once you have the sources, {{{cd}}} into the package directory and cross-build.
Line 20: Line 31:
$ emsetup --verbose --simulate $ cd /path/to/foo-0.1.23.4
$ pdebuild-cross
Line 23: Line 35:
Check that the output is acceptable, nothing changed yet.

{{{
$ emsetup -v
}}}

If {{{~/.dpkg_cross/cross_compile}}} isn't fully configured yet, (hint in the manpage), or you have chosen to have no default cross-building architecture, then emsetup requests the use of --arch to determine the target architecture:

{{{
$ emsetup -v -s --arch m68k
...
$ emsetup -a m68k
}}}

Once {{{emsetup}}} is complete, you can use {{{apt-get update; apt-get upgrade}}} to ensure you have the latest versions of {{{apt-cross}}} and {{{emdebian-tools}}} as updates are uploaded to Emdebian between Debian versions.

Now you can run {{{emsource <package>}}} to get a debian package, unpack it and apply / generate any emdebian patches. This is directly equivalent to {{{apt-get source}}} in mainstream debian and then applying some patches. {{{emsource}}} tells you where the package has been unpacked - in an SVN tree beneath your emdebian working directory. ({{{target}}} denotes that these packages are intended for installation directly onto the target embedded device.)

{{{
$ emsource -v foo
Using foo 0.1.23.4-0.1
Working directory: '/path/to/working/dir'
Checking for existing emdebian patches
Checking out working copies of existing emdebian patches
Checked out revision 1234.
Checking for existing build tree in foo-0.1.23.4.

Emdebianised source tree for 'foo' exists at '/path/to/working/dir/target/trunk/f/foo/trunk/foo-0.1.23.4'
Change to this directory before running 'emdebuild'

}}}

Now you can cd into the package directory and do {{{emdebuild}}} to actually build the package. You will need to install any build dependencies as needed with apt-get or aptitude. {{{emdebuild}}} creates a .build log for you. e.g. for a package foo:

{{{
$ cd /path/to/working/dir/target/trunk/f/foo/trunk/foo-0.1.23.4
$ emdebuild -v
}}}

Packages, .changes, .dsc, .diff.gz, patch files and the .build log are created in the directory above:

{{{
$ ls /path/to/working/dir/target/trunk/f/foo/trunk/
}}}

You could check the [http://linux.codehelp.co.uk/emdebian/man/ Emdebian manpages] and the ["Embedded_Debian"] wiki pages for documentation.

All questions to the debian-embedded mailing list - emdebian developers are also available on IRC. See the [http://www.emdebian.org/ emdebian website] for details.
The next stage is the [[EmdebianGuide| Emdebian Developer Guide]].
Line 73: Line 38:

## This page is referenced from http://www.emdebian.org/docs.html
CategoryPermalink

Emdebian Crush Quick Start

This is intended to be a quick start guide to Emdebian and (emdebian-crush).

Crush is the cross-built flavour of Emdebian with functional differences to standard Debian. Only ARM (OABI) packages exist for Crush 1.0 and there are significant problems adding any other architectures. Crush development is on hold until after squeeze release.

See the Emdebian website for more on Emdebian Grip - the flavour of Emdebian that is binary-compatible with standard Debian and available for seven architectures, arm, armel, mips, mipsel, powerpc, i386 and amd64.

emdebian-tools is only available now in Debian stable. In Debian unstable (and soon in testing), Crush is built using normal Debian build tools and then post-processed using the scripts in emdebian-grip and configuration files from emdebian-crush.

See also EmdebianRootfs and Multistrap.

Install pdebuild-cross

$ sudo apt-get install pdebuild-cross
$ sudo pdebuild-cross-create

Customised Emdebian sources

Emdebian keeps a few packages in customised versions, where such customisations will provide suitable functional differences and dependency changes. Alternatively, you can use your own modified packages.

These steps are still experimental. In time, source packages will be available to download. For now, some packages are available from SVN.

Once you have the sources, cd into the package directory and cross-build.

$ cd /path/to/foo-0.1.23.4
$ pdebuild-cross

The next stage is the Emdebian Developer Guide.


CategoryPermalink

CategoryEmdebian