Debian is mostly about native development - most packages
need some manual changes to debian/rules.
Native is good but cross-building is still useful.
The size of the binaries is not an issue on desktop systems, resulting in a packaging model that encourages all packages to build with all possible options enabled. Emdebian turns this around and tries to disable as much as possible to reduce dependencies. For embedded devices, the rule is:
"small is good, tiny is better"
Lots of documentation that is included in Debian is not needed on an embedded system. No matter how good the documentation may appear, there simply isn't room on many embedded devices. This includes licence information, changelogs, README documents, man pages, info pages and examples.
Optimisations in the Debian package may have to be changed for the Emdebian package, resulting in awkward bugs.
Software management issues on the target compared to the host
involve problems with available temporary storage, changed
dependencies, removal of "essential" packages (like debconf and
perl) and longer processing times for devices that are intended to
be mobile and always ready. Translations are spun-out into
dedicated packages per translation, necessitating a new
langupdate tool to adapt apt to install
any new translations that become available for the embedded device
locale.