JSK Home Page

Instalação e configuração do Kylix 3 Open Edition (Kylix3 OE) no Mandrake 10

O objetivo deste tutorial é ajudar os desenvolvedores a utilizar o Kylix Open Edition no Mandrake 10 que é em uma das melhores e mais amigáveis distribuições existentes atualmente.

Este tutorial faz parte da documentação do projeto GOPE e visa auxiliar os desenvolvedores do projeto na instalação do Kylix e todas as bibliotecas necessárias ao projeto em suas casas e ambientes de trabalho. Como todo o projeto é baseado em software livre, o tutorial foi disponibilizado à comunidade.

Ao fim desta instalação, você terá um ambiente igual ou melhor que a versão Enterprise sem ter pago nenhum centavo! Mas não pense nisso como uma vantagem e sim como uma responsabilidade: pense em retribuir à comunidade assim que você tenha algum retorno financeiro sobre o seu projeto. Essa retribuição não precisa ser financeira: se você relatar a sua experiência nos grupos de usuários ou através de tutoriais como este, você estará ajudando a comunidade de desenvolvedores e por que não dizer, a sociedade como um todo.

ATENÇÃO: Atualmente, recomendamos a utilização do Ubuntu (distribuição baseada em Debian) pois a instalação do Kylix é bem mais simples! Para o tutorial do Ubuntu, clique aqui.

Se você achar algum erro neste tutorial, por favor email para josir @ jsk.com.br.

Pré-Requisitos

O tutorial foi escrito para o Mandrake 10 e 10.1 mas é bem provável que estas instruções também funcione nas 9.1 ou 9.2. A parte de instalação das bibliotecas é comum à qualquer distribuição. Se você conseguir


1) O primeiro requisito é baixar o Kylix 3 no site da Borland. Aqui vale ressaltar a importância de baixar o arquivo direto da Borland e não pegar de outras fontes. Desta forma, a empresa fica sabendo quantos estão utilizando a versão Open.

Na seqüencia, faça logo o registro pois às vezes o email com o chave de acesso demora para chegar. O registro vem através de um arquivo com extensão txt que será o seu activation key. Este arquivo deve ser copiado no seu diretório $HOME (que no meu caso é /home/josir).


2) Ao instalar o Mandrake, certifique-se que os seguintes pacotes estão instalados:

- todo os pacotes de desenvolvimento KDE e GNOME.
- wine e wine-lib - biblioteca de compatibilidade para rodar aplicativos Windows


Você também vai precisar do CD 4 que geralmente não é disponibilizados nos sites mais comuns. Este ISO é necessário para os pacotes wine-develop. Para baixar este ISO, busque no Google o arquivo:

Mandrakelinux10.0-Official-Download-CD4.i586.iso


3) Verifique se as bibliotecas do XFree estão instaladas corretamente. Para isso, execute o comando (o caracter de $ não precisa ser digitado: ele serve apenas para simbolizar o prompt do shell):

$ rpm -q -a XF*
XFree86-100dpi-fonts-4.3-5mdk
XFree86-server-4.3-5mdk
XFree86-75dpi-fonts-4.3-5mdk
XFree86-4.3-5mdk
XFree86-cyrillic-fonts-4.3-5mdk
XFree86-xfs-4.3-8.4.91mdk

A biblioteca XFree86-server deve estar presente. Caso alguma não esteja chame o programa de instalação de pacotes do Mandrake e busque em que RPMs estes arquivos estão instalados.

4) Agora vem encrenca: outro arquivo que será vital para a instalação é o glibc-2.3.1. Para verificar qual a versão que você tem, use o comando:

$ rpm -q -a glibc*
glibc-devel-2.3.1-10mdk
glibc-2.3.1-10mdk
glibc-i18ndata-2.3.1-10mdk
glibc_lsb-2.3.1-1mdk


Mesmo tendo estas bibliotecas, você terá que fazer o download do pacote compat-glibc-6.2-2.1.3.2.i386.rpm e instalá-lo a partir das instruções a seguir:

$ su
Password: <digite a password do root>
$ mv compat-glibc-6.2-2.1.3.2.i386.rpm /usr/local/src/
$ rpmi -i --nodeps /usr/local/src/compat-glibc-6.2-2.1.3.2.i386.rpm


Houveram indicações de usuários que utilizaram o pacote ~i586.rpm ao invés do i386.


5) Verifique o arquivo /etc/ld.so.conf - ele deve conter pelo menos os 3 diretórios indicados abaixo.

/usr/X11R6/lib
/usr/lib/wine
/usr/lib/qt3/lib
/usr/i386-glibc21-linux/lib

Se a última linha não estiver presente, inclua na moral. Se você tiver que incluir na mão, execute o comando ldconfig para o Linux aplicar a nova configuração.


6) Outra mudança importante é referente a biblioteca de c++. Verifique primeiro se o arquivo necessário existe:

cd /usr/lib
ls libstdc++-3-libc6.2-2-2.10.0.so

Caso o arquivo não exista, busque o pacote em que ele se encontra no RPM Installer. Para que o Kylix enxerge a biblioteca correta no Mandrake, crie o link simbólico ainda logado como root:

cd /usr/lib
ln -sf libstdc++-3-libc6.2-2-2.10.0.so libstdc++-libc6.1-1.so.2


Instalação


A instalação ideal é feita como usuário normal e não como root. A vantagem mais aparente neste procedimento é que você poderá ter várias instalações do Kylix e de outras ferramentas da Borland, uma para cada usuário, e você terá certeza que uma instalação não influenciará na outra.

Iremos assumir de agora em diante que $HOME é o diretório de trabalho do seu usuário no Linux. Por exemplo, o meu é /home/josir. Assim, sempre que eu falar em $HOME ao longo do texto, estarei me referenciando a este diretório inicial.

1) Logado como usuário normal, vamos criar então uma estrutura de diretórios que irá nos facilitar na instalação:

$HOME/lib   (onde ficarão as bibliotecas extras e compiladas pelo Kylix)
$HOME/bin  (onde ficarão as chamadas para o Kylix)
$HOME/src  (onde ficarão os fontes de bibliotecas necessárias à instalação)
$HOME/dlib  (onde serão instalados os fontes e a documentação das bibliotecas do Kylix).


2) Edite agora o arquivo .bash_profile localizado no diretório $HOME e inclua as seguintes linhas:

PATH=$PATH:$HOME/bin
export PATH
export LD_LIBRARY_PATH=$HOME/bin

Atenção: neste passo, NÃO é para substituir o $HOME pelo diretório real. Tem que colocar a string $HOME mesmo.


3) Coloque o arquivo reg92.txt no diretório $HOME

4) Abra um terminal shell e descompacte o arquivo kylix3_open.tar.gz:

$ tar -zxvf kylix3_open.tar.gz

Os arquivos são extraídos no diretório kylix3_open. No sub-diretório borpretest, existe um teste padrão que verifica se a máquina tem os requisitos mínimos para a instalação. Para fazer o teste:

$ cd borpretest
$ ./testsystem

Borland Kylix
System Compatibility Test
Checking loader....OK
Checking kernel >= 2.2....OK
Checking libc >= 2.1.2....OK
Checking libjpeg >= 6.2.0....OK
Looks GOOD !!!
This system should be able to run Borland Kylix!


5) Finalmente, vamos para a instalação:

sh setup.sh -m

(o -m indica que você não estará utilizando a instalação de RPM padrão da Red Hat que é o caso do Mandrake).

Se o  programa de instalação optar por fazer a instalação em modo de texto, então é provável que alguma biblioteca do qt está faltando. O ideal é que você volte nos pré-requisitos e revise os passos tomados :(

6) Atenção: o programa irá pedir o diretório de instalação que será $HOME/kylix3 e o diretório de chamada que será $HOME/bin. O diretório de chamada é utilizado para colocar os scripts de chamada do Kylix.

A partir daí é correr para o abraço!

Kylix instalado 


Se tudo correu bem, você verá os links do Kylix no menu do KDE e poderá chamar a IDE por lá. Uma outra opção é chamar pelo console com ~/bin/startdelphi.

1) Antes de chamar o Kylix vamos fazer uns ajustes para facilitar o nosso dia a dia. Editar o arquivo

$HOME/bin/startdelphi.sh

Nele, você deve incluir a linha:

export LD_ASSUME_KERNEL=2.4

Com isso o Kylix pensará que o Linux está compilado com o Kernel 2.4 (que não é o caso já que o Mandrake 10 utiliza o kernel 2.6).

2) Na ultima linha, adicione o parametro -ns após o .../delphi .Este parâmetro é o "No Splash" e faz com que a tela de abertura não apareça. A linha ficará assim:

~/kylix3/bin/delphi -ns $*

3) Além disso, se o seu teclado for ABNT, fatalmente você não vai ter o caracter ; no ambiente do código fonte. Para solucionar o problema, inclua a linha abaixo antes da chamada:

xmodmap -e "keycode 47 = semicolon colon"

Entretanto, essa mudança traz um problema: enquanto você estiver no Kylix, você não conseguirá utilizar o ç. Para solucionar o problema, inclua ainda no startdelphi.sh a linha abaixo depois da chamada do kylix:

xmodmap -e " keycode  47 =ccedilla Ccedilla"

O ideal seria que utilizassemos o layout de teclado ABNT que já existe para o Mandrake 10: eu encontrei um link dele aqui. Entretanto, não funcionou comigo - se alguém souber como fazer me fale!

4) Agora, chame o Kylix, carregue algum programa demo e compile para verificar se tudo funcionou corretamente.

Instalando as bibliotecas


A partir daqui a instalação é igual ao do Ubuntu. Assim, siga por aqui. Deixei apenas a instalação do Indy 9 pois no tutorial do Ubuntu já estamos trabalhando com a versão 10.

Instalando o Indy 9


Faça o download por aqui e descompacte o arquivo no $HOME/dlib. Para descompactar o arquivo, dê o tradicional:

tar -zxvf Indy_9_00_14_src.tar.gz

O próximo passo é o que mais exige atenção, teremos que retirar os erros encontrados no próprio pacote. Vamos a eles:

O Indy foi descompactado numa pasta chamada Source. Para facilitar, vamos renomea-la para indy.
A pasta em questão está apenas com permissão de leitura.
Alguns arquivos tem erros de digitação, com relação ao case.

Faça o seguinte:

cd ~/dlib
chmod -R +r Source/
mv  Source/  indy/


Na pasta ../indy, renomeie o arquivo IdMultipartFormData.pas para IdMultiPartFormData.pas:

mv IdMultipartFormData.pas IdMultiPartFormData.pas


Abra o arquivo IdMultiPartFormData.pas com um editor de textos (pode ser um KEdit) e substitua a ocorrência IdMultipartFormData por IdMultiPartFormData, fica bem na primeira linha.

Abra o arquivo indy.dpk com o mesmo editor ( utilizando View Source)  e substitua as duas ocorrências IdSyslogServer por IdSysLogServer e do IdMultipartFormData.

Adicione a pasta ../indy ao library path.

Pelo Kylix, abra o arquivo indy.dpk. Compile e feche.

Ainda pelo Kylix, abra o arquivo dclindy.dpk. Compile e instale. Os componentes serão instalados sua barra de componentes em três novas abas.

Pra terminar a instalação do Indy, falta somente um passo:

Para verificar se tudo correu bem, verifique se os arquivos bplindy.so.6 bplindy.so.6.0 foram instalados $HOME/lib.

Instalando o IndySOAP


O IndySOAP é uma biblioteca que implementa Web Services (SOAP e WSDL) a partir da biblioteca Indy. Se você não trabalha com Web Services não precisa desta biblioteca. Entretanto, se você ainda não ouviu falar de Web Services, dê uma estudada no assunto pois acredito que o futuro do desenvolvimento de sistemas está baseado nesta tecnologia.

O IndySOAP original não funciona no Kylix 3 Open Edition. Tive que fazer diversas alterações para que ele funcionasse.

Assim, se você quiser utilizar o projeto original, faça o download por aqui .
Se quiser utilizar uma versão com todas as correções, faça o download por aqui.

Se você tiver baixado o projeto original, siga as instruções abaixo:

1) Descompacte o arquivo no $HOME/dlib/indy: unzip IdSoap_1_00.zip

O diretório Source será criado dentro do diretório do Indy.

2) Mova o diretório para dentro do diretório do Indy renomeando ele para indysoap.
3) Abra o Kylix e inclua o path do indysoap no Library Path.
4) Abra o projeto IdSoap.dpk
5) No Project Manager, remova as packages indy60 e vcl do projeto caso elas existam.
6) Compile. Vai dar um warning dizendo que a biblioteca Indy foi adicionada ao projeto.
7) Se não der nenhum outro erro de compilação, dê o Install.

Se você tiver baixado a versão com as correções para o Kylix 3OE, siga os passos:

1) Descompacte o arquivo no $HOME/dlib/indy: tar -xvfz indysoap
2) Abra o Kylix e inclua o path do indysoap no Library Path.
3) Abra o projeto IdSoap.dpk
4) Dê o install. O Kylix tem que avisar que os componentes foram instalados com sucesso.

Como aprender a usar o IndySoap:

- No diretório doco, tem um arquivo .chm com um help muito bem feito da biblioteca.
- A biblioteca também tem testes unitários muito bem estruturados utilizando a DUnit.
- Existe também o grupo indy-soap-public no yahoogroups.
- No diretório tutorial, tem vários exemplos tanto de servidores quanto de clientes.
- No diretório tutorial/cgi, tem um exemplo de como utilizar o IndySoap com o WebProvider.


Contribuições: Se você conseguir instalar corretamente os componentes ou tiver alguma sugestão para melhorar o tutorial, me mande um email josir at jsk.com.br

Este artigo se baseou no artigo de Angelo Vale do Guia do Hardware:
Dicas de instalação e configuração do Kylix2 Open Edition

E de Gaby - que foi discontinuado...
INSTALLATION ET CONFIGURATION DE KYLIX 3 OE SUR MANDRAKE 9-1/9-2/10

As aulas de francês no colégio valeram de alguma coisa :^)

Atualizado em 09/09/2005