When used on an end-user application, GPL does a fantastic job. But in library use, it's a very viral license.
Say you wanted to write a KDE-native application back when Qt was GPL or commercial only. You couldn't do it by using GTK+ ... it wouldn't look quite right. You would have to pay money, or make your application GPL as well. And what if you couldn't pay?
It's not hard to imagine a world where the GPL truly took off, and everything from the top-level GUI toolkit all the way down to libc functions were all GPL'ed. You'd be forced to start from absolutely nothing to make even simple applications. Years and years of work just to get a basic desktop application going. And it would be entirely alien to the rest of the OS. That's not really an "option" anymore. Nobody would implement that much just to port to one OS.
No, we're not there. And no, we're never going to get there. Most library writers wisely choose the LGPL, and many others release everything under the BSD license. But if you take the GPL to its extreme conclusions, you can see why people consider it viral.