Um binário em execução no CentOS deve ser executado em outras distribuições do Linux, desde que a arquitetura do processador (x86 ou x86-64, etc.) seja a mesma.
Algumas outras condições a serem consideradas são as bibliotecas compartilhadas. Se o programa é construído com bibliotecas estáticas, ele definitivamente funcionará em qualquer outra distribuição Linux na mesma arquitetura. No entanto, a maior parte do programa hoje em dia é construída com bibliotecas dinâmicas. Nesse caso, as bibliotecas necessárias devem estar presentes em ambos os sistemas.
Na minha experiência, mesmo binário executável de programas baseados em terminal simples, como vim
, nano
, top
etc, funciona em todas as distribuições Linux, embora eles usem bibliotecas compartilhadas. Porque a maioria das distribuições Linux gerencia algumas bibliotecas de maneira semelhante.
O erro que você está recebendo provavelmente se deve à biblioteca compartilhada. Pode acontecer que o programa seja compilado contra uma versão superior de glibc
ou outras bibliotecas que estejam ausentes no sistema de destino.