+1  A: 

static linking is used for libraries which are trivial and which needs to be linked in order to execute your binary.

dynamic linking is used when you can load library on demand and once task is done, you can unload it. To Apply patches or use updated versions, dynamic linking will be useful, if binary compatibility is taken care-off.

-- Cheers

Koteswara sarma