Lazarus VM OpenSuse64

Fazer download em pdf ou txt
Fazer download em pdf ou txt
Você está na página 1de 10

Ambiente de compilação Lazarus e

OpenSuse 64

Sumário
Ambiente................................................................................................................................2
Download do Open SUSE.....................................................................................................2
Criando a V.M.........................................................................................................................2
Instalando o OpenSuse.........................................................................................................2
Dica: Habilitando uma pasta compartilhada..........................................................................3
Baixando o Lazarus...............................................................................................................3
Conflito do Lazarus com atalhos globais do KDE.................................................................4
Baixando o ACBr....................................................................................................................4
ACBr: Instalando os componentes no Lazarus.....................................................................5
Resolução de dependências para ACBrDFe.....................................................................5
Criando links simbólicos para o nome das bibliotecas......................................................6
Instalando o Firebird (Opcional).............................................................................................6
Outros utilitários.....................................................................................................................7
Dica: Windres.........................................................................................................................7
Notas para Ubuntu 32bits......................................................................................................8

16/11/2017 – Celso Marigo Junior – Adicionadas seções para Windres e Ubuntu 32bits.
18/08/2016 – Jean Patrick – Simples compartilhamento de pastas com a V.M.
17/08/2016 – Celso Marigo Junior – Listadas dependências adicionais xml2 e exslt.
09/08/2016 – Daniel Simões de Almeida – Versão inicial
Ambiente
O nosso ambiente de desenvolvimento linux será composto da seguinte maneira:
- Distribuição Linux: Open SUSE Leap, com ambiente gráfico KDE;
- Oracle Virtual Box;
- Lazarus 1.8;
- Firebird 3.0 (opcional).

Download do Open SUSE


O Open SUSE pode ser baixado diretamente na página do projeto,
https://www.opensuse.org. Neste tutorial, utilizo a versão LEAP 42.3 do Open SUSE, que
pode ser beixado em: https://download.opensuse.org/distribution/leap/42.3/iso/
A diferença em usar o segundo link, é que neste podem ser encontrados além da ISO,
instaladores web, e arquivo .torrent.

Criando a V.M.
A última versão do Virtual Box em: https://www.virtualbox.org/wiki/Downloads
Usando o Virtual Box, crie uma nova V.M. e selecione a Sistema Operacional
“Linux, OpenSuse 64”. Configure a memória da V.M. dependendo da configuração do seu
hardware físico. Exemplo, se você tem 8GB, use uma VM de até 4GB (4096).
Crie um novo Disco Virtual (VDI), dinamicamente alocado, para que ele não ocupe
o espaço definido em disco, de 100GB.
Ajuste as configurações da V.M. conforme achar necessário, adicionando
processadores e suporte bidirecional para a área de transferência, por exemplo. Configure
a rede em modo bridge, selecionando a interface de rede em uso, caso utilize um
notebook.
Em armazenamento, configure a ISO baixada, para o Drive Ótico. Isso fará a
instalação do OpenSuse 64 iniciar quando a V.M. subir.

Instalando o OpenSuse
Inicie a VM utilizando o Virtual Box, a instalação deve iniciar automaticamente. Siga
a instalação padrão do OpenSuse. Nesse artigo usei a opção Desktop com KDE.
O OpenSuse já instalará o VirtualBox Guest Additions, o que permitirá recursos
como: Pastas compartilhadas, Mouse integrado, Redimensionamento dinâmico do
Desktop do Linux e Modo Seamleass (misturando ambos os Desktops)
Crie um usuário padrão e defina a senha de root. Nesse artigo criei o usuário “tux”
e defini a senha do mesmo como “123” a mesma senha foi aplicada para o “root”, para
facilitar o uso da V.M.
O OpenSuse possui um ótimo programa para facilitar a instalação de Programas e
pacotes, chamado “Yast”. Com ele você poderá facilmente localizar e instalar as
dependências necessárias. Além de efetuar outras configurações.
Após a instalação o OpenSuse baixará vários pacotes de atualização, o que pode
demorar um pouco.

Dica: Habilitando uma pasta compartilhada


Se desejar compartilhar arquivos entre o Windows e a VM, adicione uma pasta
compartilhada, no Virtual Box. Para isso acesse a configuração da VM, pastas
compartilhadas, adicione uma pasta do seu computador para ser acessada na VM,
marque a opção “Montar Automaticamente”. Após isso, ela já pode ser vista no caminho /
media, no sistema de arquivos do linux, mas o conteúdo dela não estará acessível. É
preciso adicionar o usuário tux ao grupo vboxsf. Você precisará de acesso root. Digite o
comando abaixo:
usermod -a -G vboxsf tux

Pronto, reinicie a V.M. e você já poderá acessar os arquivos da pasta criada do


windows, em /media/sf_lazarus.

Baixando o Lazarus
Acesse a página do projeto: http://www.lazarus-ide.org/ e baixe a versão “Linux
RPM 64 Bits”. Você baixará 3 arquivos: “fpc, fpc-src, lazarus”
Para instalar o lazarus, primeiro precisamos instalar alguns pacotes do qual o
mesmo depende. Siga as instruções da página Wiki do projeto Lazarus:
http://wiki.freepascal.org/Installing_Lazarus#Installing_on_openSUSE

zypper in -t pattern devel_basis


zypper -n install gtk2 glib2

Após a instalação das dependências, vá para pasta de download dos RPMs do Lazarus e
digite:
rpm -Uvh fpc*
rpm -Uvh lazarus*
Teste a instalação do Lazarus, iniciando o mesmo, usando na linha de comando
startlazarus. Ou ainda usando o Ícone que será criado no KDE em
“Desenvolvimento → Lazarus”. Você pode localizar o ícone, usando a busca de
aplicativos do KDE, ou seja, abrindo o menu e escrevendo “lazarus”

Conflito do Lazarus com atalhos globais do KDE


O Lazarus utiliza alguns atalhos, que também são utilizados pelo KDE, como por
exemplo Ctrl-F9 para compilar, Ctrl-F2 para interromper a execução/debug, Ctrl-F10 para
exibir os Formulários... Os atalhos do KDE tem precedência, e isso pode atrapalhar o uso
dinâmico do Lazarus.
Se você deseja usar essas teclas de atalho no Lazarus, você precisará removê-las
das configurações globais de atalho do KDE. Para isso acesse “Configurações do
Sistema → Atalhos”. Escolha na esquerda: “Atalhos de programa Globais”. Verifique
na opção “Componente do KDE”, quais os atalhos mapeados, para cada um dos
componentes existentes no KDE... e modifique o atalho desejado, para outra tecla, ou
“Nenhum”.

Baixando o ACBr
Antes de baixar todos os fontes, e configurar o ambiente, crie a seguinte estrutura
de pastas, no “home” do seu usuário. Supondo que o usuário padrão é chamado “tux”
/home/tux/pascal/comp/
/home/tux/pascal/comp/ACBr
/home/tux/pascal/comp/Fortes

Dica: Utilize os comandos abaixo para criar múltiplos diretórios com apenas um comando.

cd ~
mkdir -p pascal/comp/{ACBr,Fortes}

Na versão Leap 42.3 do OpenSuse, o SVN já veio instalado. Uma dica é instalar o
KDESvn, se desejar usar um aplicativo gráfico para controlar seus arquivos versionados,
para isso utilize o Yast.
Faça download dos fontes do ACBr Trunk2, usando o SVN (isso demorará vários
minutos).
svn co svn://svn.code.sf.net/p/acbr/code/trunk2 /home/tux/pascal/comp/ACBr

De forma semelhante, baixe o Fortes report, e outros pacotes que necessite, como CCR e
Zeos, por exemplo, em suas respectivas pastas:
svn co https://github.com/fortesinformatica/fortesreport-ce/trunk
/home/celso/pascal/comp/Fortes

Caso o comando para baixar os fontes do fortes não funcione, você pode clonar o
repositório utilizando o Git, novamente, utilize o Yast para instalar o Git, e
após isso, clone o repositório utilizando o comando abaixo:

git clone https://github.com/fortesinformatica/fortesreport-ce.git


/home/celso/pascal/comp/fortes

Para atualizar os fontes, basta utilizar o comando svn up dentro do diretório


versionado, ou svn up <path_diretorio>. Exemplo:
cd /home/celso/comp/ACBr
svn up

ou

svn up/home/celso/comp/ACBr

Digite svn help para conhecer os demais comandos de linha do SVN.

Você também conseguirá atualizar os fontes com o Doplhin e KdeSvn (no Dolphin, use o
botão direito do mouse na pasta deseja, e selecione: “Abrir Com → kdesvn”

ACBr: Instalando os componentes no Lazarus


Instale os componentes do ACBr, seguindo a hierarquia descrita no documento
“Bem_Vindo_ao_Trunk2.pdf”.Ou Seja, inicie instalando o pacote “laz_synapse” e
depois o pacote “ACBrComum, ACBrDiversos, etc”. Você não precisa recompilar o
Lazarus após a instalação de cada Package... você pode fazer isso após a instalação de
vários Packages.

Resolução de dependências para ACBrDFe


Após a instalação dos packages de ACBrDFe, o Lazarus ficará depende das libs
libxmlsec, libxslt, libexslt, libxml2 e libxml2-devel e não conseguirá ser recompilado,
enquanto essas libs não forem instaladas no sistema.
Usando o “Yast → Gerenciamento de Software”, digite na janela de busca o
nome das bibliotecas “xmlsec” e “xslt”. Selecione e instale essas bibliotecas.
Criando links simbólicos para o nome das bibliotecas
Por default os fontes do ACBr procuram pelas bibliotecas com nomes simplificados,
e em algumas situações eles não existem no sistema de arquivos, mesmo após a
instalação da biblioteca. Portanto, precisamos criar Links simbólicos, com os nomes
esperados pelos fontes do ACBr para que as bibliotecas possam ser encontradas e
carregadas.
Acesse a pasta de bibliotecas e crie os links simbólicos conforme descrito abaixo:
cd /usr/lib64/
ln -s libxmlsec1.so.1 libxmlsec.so
ln -s libxmlsec1-openssl.so.1 libxmlsec1-openssl.so
ln -s libxslt.so.1 libxslt.so
ln -s libxml2.so.2 libxml.so
ln -s libexslt.so.0 libexslt.so

cd /lib64/
ln -s libssl.so.1.0.0 libssl.so
ln -s libcrypto.so.1.0.0 libcrypto.so

Você pode conferir se o link está apontando para o arquivo correto, usando o comando
ls, exemplo:
ls /lib64/libssl* -l
lrwxrwxrwx 1 root root 15 Ago 4 01:55 /lib64/libssl.so ->
libssl.so.1.0.0
-r-xr-xr-x 1 root root 424152 Mai 4 11:20 /lib64/libssl.so.1.0.0

Instalando o Firebird (Opcional)


Infelizmente o Firebird que é distribuído nos repositórios do OpenSuse não possui
algumas características que necessitamos. Ele não suporta o collation UNICODE_CI_AI
para UTF8 (que nos permite fazer buscas e indexações desconsiderando os acentos).
Portanto, devemos baixar o Firebird da página do projeto http://www.firebirdsql.org/ , e
instalá-lo manualmente.
Nesse artigo, usamos a versão 3.0.4 Linux 64 bits.
Não utilize o RPM disponibilizado no site, ele não funcionará para instalação no
OpenSuse, causando a falha de uma dependência em “libncurses.so.5”. Utilize o arquivo
“tarball”, como por exemplo: Firebird-3.0.4.33054-0.amd64.tar.gz

Após baixá-lo descompacte o mesmo, usando o KDE (ark) ou na linha de


comando:
tar xvf FirebirdSS-3.0.4.33054-0.amd64.tar.gz
Esta versão do Firebird, requer a instalação da lib: libtommath, instale a mesma
usando o Yast → Gerenciamento de Software. O instalador procura pela lib com o
nome: libtommath.so.1.0.0, e a mesma é instalada com o nome: libtommath.so.1, então
é necessário criar um link simbólico para a lib, utilize o comando abaixo:
ln -s /usr/lib64/libtommath.so.1.0.0 /usr/lib64/libtommath.so.0

Acesse a pasta descompactada e como root execute o instalador:


cd FirebirdSS-3.0.4.33054-0.amd64/
sh install.sh

O Firebird será instalado na pasta /opt/firebird, você pode verificar se o serviço


está rodando usando, usando os comandos abaixo:
service firebird status
firebird.service - LSB: Firebird SQL server
Loaded: loaded (/etc/init.d/firebird)
Active: active (running) since Mon 2016-08-08 12:32:57 BRT; 4min 11s ago
Process: 1133 ExecStart=/etc/init.d/firebird start (code=exited, status=0/
SUCCESS)
CGroup: /system.slice/firebird.service
|-1177 /opt/firebird/bin/fbguard -pidfile
/var/run/firebird/default.pid -forever
`-1181 /opt/firebird/bin/fbserver

Aug 08 12:32:57 linux-l0f3.suse systemd[1]: Started LSB: Firebird SQL


server.
Aug 08 12:32:57 linux-l0f3.suse firebird[1133]: Starting Firebird..done

service firebird stop → Para o servidor

service firebird start → Inicia o servidor

Outros utilitários
Você pode usar o Yast, para instalar alguns utilitários e bibliotecas que necessitar.
FlameRobin – Um gerenciador de arquivos Firebird simplificado (parecido com o
Ibexpert)
KDESVN – utilitário que permite a integração do “Dolphin” (gerenciador de pastas do
KDE) com o SVN. (semelhante ao TortoiseSVN)
Kwallet – Gerenciador de senhas do KDE (já vem instalado), configure-o para que o
KDESVN não solicite a sua senha a cada operação.
Dica: Windres
Ao instalar pacotes do ACBr no Lazarus, podem ocorrer erros relacionados ao Windres,
um gerador de resources no padrão do Windows. Para resolver, podemos usar o método
abaixo, compilando o Windres:
1- Baixar a versão da binutils em: http://ftp.gnu.org/gnu/binutils/
2- Extrair arquivo baixado: tar -zxvf binutils-2.29.tar.gz

3- Acessar o diretório recém criado pela extração acima, e executar os comandos abaixo:
cd binutils-2.29

./configure

make

cd binutils

make windres

4 – Copiar o windres para um diretório contido no PATH do seu linux. Se não souber qual
o PATH do linux, faça como abaixo:
echo $PATH

Notas para Ubuntu 32bits


Os passos deste documento podem ser considerados para o ambiente do Lazarus, não
apenas em OpenSuse x64, mas para outras distros, observando apenas os PATHs da
versão.
Ao configurar o Ubuntu, versão 32 bits, obtive problemas, que foram solucionados como
citado abaixo:
- Quando algumas libraries mesmo instaladas não são encontradas pelo Lazarus,
devemos ajustar os locais onde o FPC procura as libraries. O comando abaixo é utilizado
para identificar o arquivo fpc.cfg
fpc -vt bogus

- Após localizar o PATH do FPC, falta localizar as libs que não são encontradas, no meu
caso, uma lib com erro foi: crti.o, para localiza-la:
sudo find /usr/ -name crti.o

sudo ln -s -s /usr/lib/i386-linux-gnu/crti.o /usr/lib/fpc-3.0.0/crti.o

- Para ajustar o FPC para localizar as libs em locais inesperados, podemos ajustar o
arquivo fpc.cfg, localizado com o comando anteriormente citado.
mcedit /etc/fpc.cfg

- Adicionar ao grupo Search Path for Libraries, os locais necessários


-Fl/usr/lib/

-Fl/usr/lib/i386-linux-gnu

No caso do ubuntu, temos ainda a situação onde o executável do Lazarus é compilado


em 2 locais, home do usuário em .lazarus e diretório da instalação da IDE, geralmente:
/usr/share/lazarus/1.6.4/
Isso causa problemas de reconstrução da IDE quando o usuário não tem acesso de root.

- Contruindo a XMLSec, necessário no Ubuntu. Os passos abaixo foram obtidos em:


https://github.com/linux-on-ibm-z/docs/wiki/Building-XMLSec

- Instalando as dependências
sudo apt-get update

sudo apt-get install git make libtool libtool-bin libxslt1-dev autoconf


libxmlsec1-dev

- Baixando a versão atual do GitHub


git clone https://github.com/lsh123/xmlsec.git

cd xmlsec

git checkout xmlsec-1_2_22

- Compilando
./autogen.sh

make

sudo make install

make check

- No meu caso, a versão compilada ficou em: /usr/local/lib, então precisei adicionar
este local ao fpc.cfg, já citado anteriormente

Você também pode gostar