De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Alessandro de Oliveira Faria
Data de Publicação: 21 de junho de 2011
Neste documento disponibilizo de maneira objetiva e clara, de como criar aplicativos para o pacote super-proprietário da Apple MacOS X. Como não é qualquer usuário que pode se dar ao luxo de adquirir um MacBook apenas para criar programas compatíveis, acredito que este texto será de grande utilidade.
Compilação cruzada é a técnica capaz de criar códigos binários para uma plataforma de hardware e software diferente do ambiente no qual o compilador esta instalado. Ou seja, no ambiente GNU/Linux seremos capazes de criar binários para o Mac OS. Abaixo os requisitos de software para efetuar toda a compilação com sucesso.
Antes de iniciarmos, devemos obter os itens abaixo. Ressalto que o SDK do Mac OS X deve ser obtido diretamente no site da Apple por questões de licenciamento.
Primeiramente devemos descompactar o pacote odcctools mencionado anteriormente e também disponibilizado o link para download.
# tar -jxvf odcctools-20090808-gcc-5247-bin.tar.bz2 -C /
Na próxima etapa devemos converter a imagem DMG do SDK da Apple para IMG com o utilitário dmg2img:
# dmg2img xcode_2.2.1_8g1165_018213632.dmg dmg2img v1.6.1 is derived from dmg2iso by vu1tur (to@vu1tur.eu.org) xcode_2.2.1_8g1165_018213632.dmg --> xcode_2.2.1_8g1165_018213632.img reading property list, 5740 bytes from address 863457792 ... decompressing: opening partition 0 ... 100.00% ok opening partition 1 ... 100.00% ok opening partition 2 ... 100.00% ok opening partition 3 ... 100.00% ok Archive successfully decompressed as xcode_2.2.1_8g1165_018213632.img
Após a conversão, monte a imagem recém-criada no seu sistema de arquivos, não esqueça de carregar o módulo do kernel hfsplus.
# modprobe hfsplus # mount -t hfsplus -o ro,loop xcode_2.2.1_8g1165_018213632.img /mnt
Agora copie o arquivo Archive.pax.gz para a pasta /opt/mac/SDKs e utilize o comando gunzip junto ao pax para descompactá-lo.
# cp /mnt/Packages/MacOSX10.4.Universal.pkg/Contents/Archive.pax.gz /opt/mac/SDKs # cd /opt/mac/SDKs # gunzip -c Archive.pax.gz | pax -r
Para finalizar a configuração do ambiente, insira o caminho da pasta bin na variável ambiental PATH ou se preferir utilize o comando abaixo:
# PATH=$PATH:/opt/mac/bin
Para a brincadeira ficar divertida, compilaremos o md6sum disponível no SourceForge. Faça o download do código fonte e descompacte com o tradicional comando tar -zxvf e logo em seguida entre na pasta.
Link para download: http://sourceforge.net/projects/md6sum/files/linux/md6sum-1.0.tar.gz/download
# tar -zxvf ../md6sum-1.0.tar.gz # cd md6sum-1.0/
Para compilar o md6sum para utilizar o comando abaixo:
# i686-apple-darwin8-gcc -isysroot /opt/mac/SDKs/Developer/SDKs/MacOSX10.4u.sdk md6sum.c md6_nist.c md6_mode.c md6_compress.c -o md6sum
Agora para finalizar, confira se o binário foi criado corretamente:
# file md6sum md6sum: Mach-O executable i386
Espero que este documento simples e objetivo ajude a instalação e configuração do ambiente de desenvolvimento para Mac OS. Como sempre menciono... Colaborar atrai amigos, competir atrai inimigos...
Para encerrar, críticas e sugestões: <cabelo (a) opensuse org>
Este artigo foi publicado originalmente no site Viva o Linux
Alessandro de Oliveira Faria é sócio-fundador da empresa NETi TECNOLOGIA fundada em Junho de 1996 (http://www.netitec.com.br), empresa especializada em desenvolvimento de software e soluções biométricas, Consultor Biométrico na tecnologia de reconhecimento facial, atuando na área de tecnologia desde 1986 assim proporcionando ao mercado soluções em software nas mais diversas linguagens e plataforma, levando o Linux a sério desde 1998 com desenvolvimento de soluções open-source, diversos documentos técnicos disponibilizado na internet, membro colaborador da comunidade Viva O Linux, mantenedor da biblioteca open-source de vídeo captura entre outros projetos e openSUSE Member.
This policy contains information about your privacy. By posting, you are declaring that you understand this policy:
This policy is subject to change at any time and without notice.
These terms and conditions contain rules about posting comments. By submitting a comment, you are declaring that you agree with these rules:
Failure to comply with these rules may result in being banned from submitting further comments.
These terms and conditions are subject to change at any time and without notice.
Comentários