Há duas coisas a considerar aqui, eu acho:
A primeira é que, de certa forma, eles estão certos. Escrever C ++ entre plataformas não é tão difícil se você planejou isso desde o início . Este é quase certamente o problema que você está vendo. A maioria dos aplicativos de código aberto (a maioria dos aplicativos que um usuário Linux toca em um dia comum) são absurdamente multiplataforma. Pense no número de aplicativos com os quais o usuário comum do Linux interage diariamente, escritos em C ou C ++ e executa não apenas no Windows e Linux, mas também em MacOS, BSD, Solaris etc. em x86, x86-64, ARM, SPARC, etc. Isso ocorre em parte porque as pessoas com vontade de arranhar a porta codificam o código para execução em seus sistemas, mas também porque a convenção é planejar a portabilidade entre plataformas.
A segunda coisa é que o mercado pode ser mais viável do que você pensa. Há um enorme equívoco de que as pessoas no Linux não querem pagar por software. Para algumas pessoas, isso pode ser verdade, mas há muitas pessoas (a maioria, eu acho) que usam o Linux porque funciona melhor para elas e elas preferem, não por preço. Além disso, se sua empresa estiver produzindo um produto usado principalmente em um ambiente profissional, as empresas estão acostumadas a pagar pelo software para executar nos sistemas Linux.
Quanto ao ponto que você enfatiza sobre embalagem, como outros já disseram, você realmente só precisa produzir pacotes para a versão mais recente das principais distribuições. Na verdade, criar os pacotes não é tão difícil assim, e a maioria das principais distribuições usa pacotes debian (debian, ubuntu etc.) ou RPMs (fedora, suse, centos, mandrake), por isso é muito pequeno modificar alguns scripts para produzir vários pacotes a partir de uma linha de base .deb e uma linha de base .rpm, e para todos os outros simplesmente jogar um tarball com binários e um leia-me, as pessoas descobrirão como instalá-lo. Como alternativa, você pode pular todas as embalagens e apenas postar um único tarball com um script bash ou perl para fazer a instalação.
Quanto a como abordar os usuários nos seus fóruns reclamando, como Joe Internet disse, eles podem ser apenas a porcentagem de pessoas que vão reclamar, não importa o quê, mas a primeira coisa que eu faria é tentar explicar que você tem um grande quantidade de código legado que não foi projetado com o suporte a várias plataformas. Segundo, veja honestamente se daria apoio financeiro para criar uma porta Linux e se abra com os resultados disso. Por fim, se uma porta não for financeiramente viável, tente fazer algum trabalho para que o programa funcione bem com o WINE. O WINE não deve ser a primeira solução, mas pode atenuar as pessoas que desejam apenas usar seu aplicativo no Linux e ser um projeto mais barato que uma porta completa. De fato, se você adicionar código à base de código WINE como parte do projeto, não apenas poderá se abrir para um novo mercado,