My personal interpretation of these:
Packaging: An application (or any self-standing software component) is "packaged" for different distros. Redhat/Fedora, mandrake, others use "RPM" (the Redhat Package Manager). Debian uses "apt", gentoo uses "Portage", etc. These package managers handle things like dependencies, and ensure the various parts are put in the "correct" places, and assigned the correct permissions, and so forth. Packaging commonly referes to binary components, but source can be packaged, also, particularly with source-based distros, like Gentoo.
Building: producing a deliverable form of an application. Compiling is the key step, but it may also include steps like packaging for specific distros. A "nightly build" would be the version of an app that was versioned in cvs as of that night. It may not run correctly, but it should at least *start*.