Static linking of libraries is faster (on startup), and ensures that the application will work even if you don't have the library installed. However, such applications do not share the same instance of the library in memory, and therefore waste precious RAM.
If you share libraries, one library is only loaded into RAM once (therefore giving you a performance boost if you have it loaded already by another program or another instance of the same program), and the library can be upgraded for a binary-compatible version at any time, without the program having to be recompiled, allowing for fixing bugs faster and easier.
The performance penality for loading shared libraries is almost negated by the use of the program called prelink (called prelinking a library), if you're interested, read up on prelink on gentoo howtos, they are a useful theoretical guide for other distros as well, even if they don't use portage...
So, to sum up, a statically-linked program will run anywhere and not suffer from the danger of missing libraries, but will be less efficient and waste RAM.
Conclusion: if you have a system for your own leasure, use dinamic linking (with optional prelink), if you are a developer that uses an obscure and weird library, or are a programmer that isn't sure that QT is installed on a target system, use static linking.