Home - this site is powered by TWiki(R)
TWiki webs: Main | TWiki | Sandbox   Hello TWiki Admin Group!

Users | Groups | Offices | Changes | Index | Search | Go

Instalando e utilizando o Stratego/XT no Mac OS X Snow Leopard (Compilação a partir do código fonte)

Por padrão, os aplicativos compilados no Snow Leopard são compilados em 64 bits. Entretanto, em programas 64 bits as variáveis ocupam muito mais espaço, o que exige uma pilha maior para evitar estouros de memória. Como a Apple não permite setar a pilha para mais de 32mb (ou ilimitada, ulimit -s unlimited, como eu usava no Linux 64 bits) temos que forçar que a compilação do Stratego/XT e de seus pacotes seja feita em 32 bits.

Os principais pacotes do Stratego são (arquivos tar.gz):

  • aterm
  • sdf2-bundle
  • strategoxt

Importante: Na seção de downloads do Stratego existem os binários para MacOS X (Mac OS X binaries), porém em um teste efetuado no Snow Leopard o uso desses binários já compilados não foi possível, diversos erros eram lançados.

Além dos pacotes principais, as seguintes extensões são bastante úteis:

  • java-front
  • aspectj-front

Compilando os pacotes

Antes de compilar os pacotes do stratego, é necessário termos os seguintes pacotes/softwares instalados no Snow Leopard:

  • Xcode (que vem no disco de instalação do sistema)
  • Mac Ports: Para instalar o pacote pkg-config, necessário para compilar o Stratego.

Depois de instalado esses pacotes, é necessário instalar o pkg-config. Abra o terminal e digite:

sudo port install pkgconfig

Feito isso, podemos partir para a instalação dos pacotes do Stratego. Devemos extrair os 3 principais pacotes, aterm, sdf2-budle e strategoxt (tar -xvf nome-do-arquivo.tar.gz).

Entre na pasta do aterm e digite o seguinte comando para gerar os Makefiles:

./configure --prefix=/opt/aterm CFLAGS=-m32

O parâmetro --prefix indica o diretório onde o stratego deve ser instalado, nesse caso /opt/aterm. Já o parâmetro CFLAGS=-m32 indica para o GCC que o arquivo será compilado em 32 bits. Lembre-se bem desse parâmetro, você deve utilizá-lo em todas os configs a seguir.

Após terminado o configure, ainda na pasta do aterm, digite:

make sudo make install

Feito isso, podemos ir para o diretório do sdf2-bundle

Antes de efetuar o config, devemos setar a variável de ambiente PKG_CONFIG_PATH indicando os caminhos para o aterm, sdf2-bundle e strategoxt (note que esses dois ainda vão ser instalados). Para isso, edite o arquivo .profile do seu home (com seu editor de preferênia, ex: nano ~/.profile) e adicione a seguinte linha:

PKG_CONFIG_PATH=/opt/aterm/lib/pkgconfig:/opt/sdf2-bundle/lib/pkgconfig:/opt/strategoxt/lib/pkgconfig:/usr/local/lib/pkgconfig

Feito isso, salve o arquivo e, no terminal, digite:

source ~/.profile

Agora a variável de ambiente PKG_CONFIG_PATH já está carregada no seu terminal e sempre vai ser carregada quando você fizer login no sistema.

Continuando a instalação do sdf2-bundle, entre com os seguintes comandos:

./configure --prefix=/opt/sdf2-bundle --with-aterm=/opt/aterm CFLAGS="-m32" make sudo make install

Para terminar os pacotes obrigatórios, vá para a pasta do strategoxt e digite:

./configure --prefix=/opt/strategoxt --with-aterm=/opt/aterm --with-sdf=/opt/sdf2-bundle CFLAGS="-m32" make sudo make install

Para compilar as extensões (java-front e aspectj-front), devemos especificar apenas a opção CFLAGS="-m32" no configure, ou seja, o processo de compilação para cada uma das extensões fica:

./configure CFLAGS="-m32" make sudo make install

Após feito isso, edite novamente o seu arquivo .profile e edite a variável de ambiente PATH, adicionando os seguintes caminhos:

:/opt/aterm/bin:/opt/sdf2-bundle/bin:/opt/strategoxt/bin

Se a variável antes era export PATH=/opt/local/bin:/opt/local/sbin:$PATH , agora ela deverá ficar: export PATH=/opt/local/bin:/opt/local/sbin:$PATH:/opt/aterm/bin:/opt/sdf2-bundle/bin:/opt/strategoxt/bin

Salve e novamente digite:

source ~/.profile

Pronto! O stratego (e suas extensões) já está devidamente configurado no seu computador.

Compilando arquivos com Stratego no Snow Leopard

Para que seja possível compilar arquivos utilizando a instalação do Stratego indicada acima, devemos passar alguns parâmetros específicos para o gcc na hora da compilação (execução do strc). Assim, sempre que você for executar o compiler do stratego (strc), passe os seguintes parâmetros:

strc -Xcc "-m32" -Xlinker -arch -Xlinker i386 ...

-- CarlosEduardoPontual - 20 Apr 2010 -- CarlosEduardoPontual - 26 Nov 2009

Edit | Attach | Print version | History: %REVISIONS% | Backlinks | Raw View | Raw edit | More topic actions

This site is powered by the TWiki collaboration platform Powered by Perl This site is powered by the TWiki collaboration platformCopyright © 2008-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback

mersin escort bayan adana escort bayan izmit escort ankara escort bursa escort