If you're writing for non-embedded Linux, the main thing to keep in mind is that different distributions will have a different collection of library versions. So you should set a sufficiently old baseline. As Debian updates slowly, Debian stable (or oldstable when it exists, in the few months after a release) tends to be a reasonable choice.
You'll need to package separately for each distribution. If your application is open source and at all successful, you can count on someone picking it up and contributing the packaging, so it's not an essential skill. Other than packaging, the differences between distributions mostly affect system administration, not development or daily use.
If you're going to patch the kernel, you'll have to test with more distributions as each distribution has their own patches that could cause incompatibilities and each distribution has userland settings that may rely on different sets of kernel interfaces being available (e.g. requirements for some things not to be modules).
Note that what I wrote above is not true if you want your application to work on embedded systems (here meaning anything that's not a server, desktop or laptop), which even when they run a Linux kernel often don't have the usual libraries, starting with Glibc being eschewed in favor of µClibc, dietlibc, Bionic, etc.