Creating a customized SDK basically comes down to selecting the set of embedded computer libraries and APIs that application developers should use, and then ensuring that they are built into the application development toolchain in a version-controlled way. If the application will take advantage of dynamic linking, then this also means ensuring consistent versions are built for the developers’ desktops as well as into the runtime target images. Delivering the SDK in an easily installable format solutions to ensure consistency across all application developers.
refer to: http://embedded-computing.com/articles/the-not-code-quality/