It is done the same way it is done on any OS; by distributing packaged binaries.
configure; make; make install is still commonly seen in instructions for open source software because it is very portable and often allows you to install software written for generic UNIX rather than Linux specifically. Compiling the software on the destination machine (or one similar to it) means that the compiler will use the header files (and the linker find the right libraries) tailored to the specific OS and (in the case of Linux) distrubution. The GNU Autoconf configure scripts can detect a wide variety of variations in UNIX operating systems and try to choose the most appropriate libraries and compiler options for the system.
Compiling from source also allows the end user to choose specific optimisations, if they want. Oh, and change the code any way they want, too (although the license may restrict how they can then redistribute it).
If you want to distribute commercial software, compile it first and distribute the result. However, you may have to generate more than one version, depending on the complexity of your package. You might have to create one version for Red Hat and derivates, another for Debian and derivatives etc; for each distribution, you may well have to generate different packages for the different versions still in common use (one for RHEL 5, another for RHEL6) because of incompatible libraries. Or you might have to build one version for kernels older than a particular version, and another for versions since that, if a kernel interface important to your application has change. You might have to build packages for each of these permutations (distribution + distribution version + kernel version). You have to do this because binaries cannot adapt - that's what the source is for.