If standards are followed and cross platform libraries are used for functionality absent from the standards, userland software should work equally well on various platforms. An enormous amount of software available for Linux already does that.