Olá a todos,
Utilizo o Lazarus instalado numa máquina com Windows 10 Home, arquitetura 64 bits, banco de dados Firebird também de 64 bits. Acontece que quando vou rodar meu sistema numa máquina com Windows 8.1 (32 bits) dá uma mensagem do tipo: "Este computador não executa esse programa". Testei em outras máquinas com Windows 10 64 bits e tudo OK.
Por que isto acontece?
Boa noite, o compilador do Lazarus tem como alvo a mesma arquitetura do seu sistema operacional, sendo assim, se você está executando uma versão 64 bit do Lazarus ele compila para sistemas 64 bits. Para compilar em 32bits você tem que configurar o compilador manualmente o que particularmente acho bem complicado. Uma solução mais simples é instalar uma versão 32 bits do Lazarus e compilar seu projeto.
Lembre que para versões .exe 32 bits seu banco de dados deverá ser 32 bit também.
Heleno, o Leandro Reis expolicou bem a questão das arquiteturas 32 e 64 bits.
Mais informações aqui:
Entenda qual é a diferença entre computadores de 32 e 64 bits
https://www.techtudo.com.br/artigos/noticia/2013/06/entenda-qual-e-diferenca-entre-computadores-de-32-e-64-bits.html32-bits ou 64-bits: qual a diferença na prática para o seu PC?
https://olhardigital.com.br/noticia/32-bits-ou-64-bits-qual-a-diferenca-na-pratica-para-o-seu-pc/48936Comparação das Arquiteturas de Memória de 32 bits e 64 bits
https://support.microsoft.com/pt-br/help/294418/comparison-of-32-bit-and-64-bit-memory-architecture-for-64-bit-editionOk, ReisLeandro! Vou tentar esse procedimento. Desde já agradeço ...
Além da alternativa proposta pelo Leandro, existem outras:
1. Alterar o Build Mode do Lazarus antes de gerar o executável:
Siga esse roteiro (* caso seu inglês ainda não esteja legal, eu colocarei uma tradução no final dessa resposta):
[INFO] Lazarus Installation Guide to Cross-Compile Windows 32/64-bit
https://forum.lazarus.freepascal.org/index.php?topic=41142.02. Usar VirtualBox para cada sistema operacional ou arquitetura que quiser:
https://www.virtualbox.org/wiki/DownloadsComo baixar, instalar e usar o VirtualBox
https://www.techtudo.com.br/dicas-e-tutoriais/noticia/2015/12/como-baixar-instalar-e-usar-o-virtualbox.htmlComo instalar o Ubuntu com o VirtualBox
https://www.techtudo.com.br/dicas-e-tutoriais/noticia/2016/04/como-instalar-o-ubuntu-com-o-virtualbox.htmlTutorial - Instalando e Configurando VirtualBox 5.2
https://www.youtube.com/watch?v=XFTn72t5hVcVirtualBox - Testando sistemas operacionais SEM FORMATAR!
https://www.youtube.com/watch?v=lvmdgLxbbIIComo instalar e usar o VirtualBOX
https://www.youtube.com/watch?v=ofYj5oEDTn8Virtual Box instalação e como usar uma maquina virtual passo a passo
https://www.youtube.com/watch?v=ZSYEZBuLWZAVirtual Box 5.0.20 Aprenda Usar Máquina Virtual
https://www.youtube.com/watch?v=02KdJUr65kM----------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------
[INFO] Lazarus Guia de Instalação para Cross-Compile Windows 32/64-bit
Resumo:
Sou novo no Lazarus e no FPC e estou adorando!
Eu li muitos posts em muitos lugares para descobrir isso.
Este post é para ajudar os outros com informações atualizadas.
Guia de Instalação do Lazarus para Cross-Compile Windows 32/64-bit
-------------------------------------------------- ---------------------
Baixe os instaladores do sourceforge.net (clique na aba Arquivos):
https://sourceforge.net/projects/lazarus/Os instaladores incluem o FPC e os arquivos de ajuda do Lazarus:
Lázaro 32 bits
lazarus-1.8.2-fpc-3.0.4-win32.exe
lazarus-1.8.2-fpc-3.0.4-cross-x86_64-win64-win32.exe
Lazarus de 64 bits
lazarus-1.8.2-fpc-3.0.4-win64.exe
lazarus-1.8.2-fpc-3.0.4-cross-i386-win32-win64.exe
Para instalar o Lazarus de 32 bits e compilar cruzadamente um exe de 64 bits do Windows:
1. Instale o win32.exe
2. Instale o cross-x86_64-win64-win32.exe na mesma pasta
Para instalar o Lazarus de 64 bits e compilar cruzadamente um exe de 32 bits do Windows:
1. Instale o win64.exe
2. Instale o cross-i386-win32-win64.exe na mesma pasta
O seguinte assume Lazarus 64-bit com cross-i386-win32-win64
-------------------------------------------------- -------------------------
Para compilar de forma cruzada 32 bits ou 64 bits sem criar modos de compilação:
Projeto, Opções, Opções do Compilador, Config e Target:
Destino OS = Padrão = Win64 ou Win32 para 32 bits
Família de CPU de destino = Padrão = x86_64 ou i386 para 32 bits
Processador de destino = padrão
Pressione OK para sair das opções do projeto
Construa e execute o projeto
Use o Gerenciador de Tarefas do Windows, guia Detalhes, para ver se o Project exe é 32/64-bit
Para configurar modos de construção:
Projeto, Opções, Opções do Compilador, Config e Target:
Marque 'Build Modes' e pressione o botão [...]
Pressione o botão [Criar Depuração e Liberação de Modos]
pressione OK
Crie um modo de compilação de 32 bits de depuração:
Menu do Lazarus: Projeto, Opções, Opções do Compilador, Config e Target
Selecione o Modo de Construção = Depurar
Pressione o botão Modos de Construção [...]
Clique para selecionar Debug na lista
Pressione o botão
- para adicionar um novo modo de criação
Renomeie para 'Debug 32-bit', pressione OK
Definir a plataforma de destino para 32 bits:
Destino OS = Win32
Família de CPU alvo = i386
Processador de destino = padrão
Pressione OK para sair das Opções do Projeto e salvar o Modo de Construção 'Debug 32-bit'
Crie um Debug 64-bit Release Mode:
Menu do Lazarus: Projeto, Opções, Opções do Compilador, Config e Target
Selecione o modo de construção = Release
Pressione o botão Modos de Construção [...]
Clique para selecionar Release na lista
Pressione o botão
- para adicionar um novo modo de criação
Renomeie para 'Release 32-bit', pressione OK
Definir a plataforma de destino para 32 bits:
Destino OS = Win32
Família de CPU alvo = i386
Processador de destino = padrão
Pressione OK para sair das Opções do Projeto e salvar o Modo de Construção 'Release 32-bit'
Construa e execute o projeto
Use o Gerenciador de Tarefas do Windows, guia Detalhes, para ver se o Project exe é 32/64-bit
Para usar Modos de Construção:
Menu do IDE do Lazarus: Alterar o menu suspenso Modo de compilação (à esquerda do botão Executar)
Construa e execute o projeto
Use o Gerenciador de Tarefas do Windows, guia Detalhes, para ver se o Project exe é 32/64-bit