Eu tenho um problema semelhante: eu tenho que desenvolver um aplicativo Python3 no Ubuntu que deve ser entregue no Windows. Eu queria usar o pyInstaller para produzir um executável do Windows a partir do Wine, pois infelizmente não tenho acesso a uma caixa do Windows. Mas eu não consegui instalar o Python3 no Wine também.
No entanto, pode haver outra opção: usar o que é chamado de um arquivo zip incorporado por python. Veja aqui: 3.8. Distribuição incorporada (docs.python.org) .
Você pode baixá-lo das páginas de download de lançamentos, como neste (um exemplo): Python 3.5.2 (python.org) .
Você tem dois:
- Arquivo zip incorporável do Windows x86-64
- Arquivo zip incorporável do Windows x86
Isso significa que você precisa perguntar ao cliente se ele está executando um Windows de 32 ou 64 bits.
Isso é não perfeito, pois se o Python3 não puder ser executado no Wine, não há como testar a versão do Windows do aplicativo. Mas, pelo menos, é uma forma de empacotar algo que deve ser executado no Windows, com a esperança de que a fonte se comporte no Windows da mesma maneira que se comporta no Ubuntu. Pelo menos, você deve desenvolver no lado do Ubuntu, usando um ambiente virtual Python. Veja 28.3. venv - Criação de ambientes virtuais .