Differences between revisions 1 and 2
Revision 1 as of 2011-03-15 06:13:03
Size: 297
Editor: ?SteveLangasek
Comment:
Revision 2 as of 2011-03-15 06:39:49
Size: 1635
Editor: ?SteveLangasek
Comment:
Deletions are marked like this. Additions are marked like this.
Line 5: Line 5:

== Why update your library package for multiarch support? ==
Now that multiarch support is available in the package manager (dpkg 1.16.0 and above; apt 0.8.12 and above), converting your runtime library package to {{{Multi-Arch: same}}} makes it possible for users to install your package for more than one architecture at the same time. This has several benefits:

 * If your library is currently bundled in {{{ia32-libs}}}, providing a multiarch package helps with the process of removing {{{ia32-libs}}} from the archive.
 * If there is any software that uses your library which can only build in 32-bit mode, users will be able to install packages of that software directly on 64-bit systems without having to use dedicated chroots.
 * Users can use your library package with userspace emulators such as {{{qemu}}} without needing to use a dedicated chroot - making it easier to build environments that emulate only the parts that need emulating.
 * Although Debian policy currently doesn't allow -dev packages to be {{{Multi-Arch: same}}}, users may set up cross-build environments using only -dev packages for the target arch. Having your runtime library package built as {{{Multi-Arch: same}}} makes it easier to build software against your library in such an environment.

== Issues to be aware of when converting ==

Converting your package for multiarch

This page is intended to be a one-stop guide for converting library packages to Multiarch. If you find there are issues not documented here, please update this wiki page, or contact debian-devel@lists.debian.org for help.

Why update your library package for multiarch support?

Now that multiarch support is available in the package manager (dpkg 1.16.0 and above; apt 0.8.12 and above), converting your runtime library package to Multi-Arch: same makes it possible for users to install your package for more than one architecture at the same time. This has several benefits:

  • If your library is currently bundled in ia32-libs, providing a multiarch package helps with the process of removing ia32-libs from the archive.

  • If there is any software that uses your library which can only build in 32-bit mode, users will be able to install packages of that software directly on 64-bit systems without having to use dedicated chroots.
  • Users can use your library package with userspace emulators such as qemu without needing to use a dedicated chroot - making it easier to build environments that emulate only the parts that need emulating.

  • Although Debian policy currently doesn't allow -dev packages to be Multi-Arch: same, users may set up cross-build environments using only -dev packages for the target arch. Having your runtime library package built as Multi-Arch: same makes it easier to build software against your library in such an environment.

Issues to be aware of when converting