Differences between revisions 1 and 6 (spanning 5 versions)
Revision 1 as of 2007-03-24 14:42:58
Size: 891
Editor: HectorOron
Comment: Initial import
Revision 6 as of 2007-03-27 07:43:56
Size: 3623
Editor: NeilWilliams
Comment: use actual output of emsource -v
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
This is intended to be a quick guide on Emdebian. This is intended to be a quick start guide to Emdebian and emdebian-tools.
Line 7: Line 7:
You will need to download a package called emdebian-tools, either from Debian repositories or Emdebian repository. 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}}}.
Line 10: Line 10:
$ sudo apt-get install emdebian-tools apt-cross dpkg-cross $ sudo apt-get install emdebian-tools
Line 13: Line 13:
After you got the tools, you have to setup an emdebian environment. 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.

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.

New users are recommended to use at least one {{{-v|--verbose}}} option to all emdebian-tools commands.
Line 17: Line 21:
# check that the output is acceptable, nothing changed yet.
$ emsetup
Line 21: Line 23:
If ~/.dpkg_cross/cross_compile isn't fully configured yet, (hint in the
manpage), then emsetup requests the use of --arch to determine the
target architecture:
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:
Line 27: Line 33:
# check that the output is acceptable, nothing changed yet. ...
Line 31: Line 37:
You could check some documentation at [http://linux.codehelp.co.uk/emdebian/man/ Emdebian Manual] 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.

Emdebian Quick Start

This is intended to be a quick start guide to Emdebian and emdebian-tools.

Emdebian-tools

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.

$ sudo apt-get install emdebian-tools

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.

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.

New users are recommended to use at least one -v|--verbose option to all emdebian-tools commands.

$ emsetup --verbose --simulate

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.


CategoryEmdebian