Guia Tinycobol (Gnu) ===================================== InfoCont Sistemas Integrados Joinville - Santa Catarina - Brasil Versao 1.00 - Quarta, 31 de Maio de 2006 Resumo ------ Este tutorial tem por objetivo ser uma referência no aprendizado e uso do TinyCOBOL em ambiente Windows, trazendo informações objetivas para os primeiros passos e também tutoriais para o uso avançado. Nota de Copyright ----------------- Copyleft (C) 2006 - InfoCont Sistemas Integrados Ltda. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; A copy of the license is included in the section entitled "GNU Free Documentation License". ---------------------------------------------------------------------------------- Conteúdo -------- 1 - O que é o TinyCOBOL (TC) 2 - Como compilar no TinyCOBOL 3 - CBL2COB - Conversor automático de Sintaxe 4 - Tutoriais 5 - Dúvidas e Sugestões. 6 - Agradecimentos ---------------------------------------------------------------------------------- 1 - O que é o TinyCOBOL. O TinyCOBOL é um compilador COBOL free, criado por um brasileiro chamado Rildo Pragana e atualmente está sendo desenvolvido por uma equipe de diversas partes do mundo (Brasil/Europa/EUA). Por ser um compilador livre, não é necessário pagar para obter suas versões. Para garantir a sua liberdade, o TinyCOBOL é licenciado dentro dos termos da GNU – General Public Licence, o que significa que seu código fonte é livremente distribuído e disponível em domínio público. Ele é totalmente baseado no padrão ANSI 85 e está disponível para arquitetura Intel(IA32) ou processadores compatíveis nas seguintes plataformas: * BeOS * FreeBSD * Linux * Windows Apesar de ser um projeto internacional, possui muitas informações em português, indispensáveis para os primeiros passos no compilador. Estas informações poderão ser obtidas no site http://br.tinycobol.org. Neste site existe um recurso chamado WikiWiki, que apesar do nome incomum é como uma apostila virtual, onde estão reunidas inúmeras informações sobre instalação, configuração, uso e outros. Qualquer suporte adicional poderá ser obtido através do Clube Cobol e também através da lista de discussão internacional, com participação dos desenvolvedores. Atualmente, o TinyCOBOL vem sendo desenvolvido por Walter Garrote, brasileiro de Goiânia - GO. Participe do desenvolvimento deste grande compilador, auxiliando no patrocínio do projeto. Para maiores informações sobre como contribuir, entre em contato com Walter Garrote (fone (62) 3093-1909 ou e-mail gaaw7@hotmail.com) ou com Fernando Wuthstrack (fone (47) 3422-3536 ou e-mail fernando@infocont.com.br). Seja bem vindo ao universo do TinyCOBOL!!!! ---------------------------------------------------------------------------------- 2 - Como compilar no TinyCOBOL. Assim como todos os demais compiladores COBOL, a compilação se dá por meio de um comando de disparo, que no caso do TinyCOBOL é o HTCOBOL. O HT no início do comando é herança do HandTerm, hardware criado pelo Rildo Pragana para onde foi desenvolvido o TinyCOBOL. A sintaxe básica de compilação é a seguinte: htcobol [opções] programa_fonte Opções especificas do Compilador: -h Mostra ajuda -a Cria biblioteca estática; pre-processa, compila, assembla e arquiva -B modo específico para aglutinação (estática/dinâmica) -c Compilação para um módulo de objeto estaticamente linkado -e Especifica o ponto de entrada (primeiro programa a executar) -E Saída do preprocessador para saída padrão apenas; não compila, assembla ou linka -g Gera saída de debug de compilação (para uso do "animator" DDD). -l Adiciona biblioteca na linkedição -L Adiciona diretório ao caminho de procura de bibliotecas -m Cria biblioteca dinâmica; pre-processa, compila, assembla e linka -M Especifica opção para identificação de programa principal(auto|first|none) -n Não executa nenhum comando, deve mostrar a compilação -o Especifica nome do executável (padrão de entrada x extensão) -S Preprocessa, compila(gera codigo assembler) somente; não assembla ou linka -v Gera saída do compilador verbosa -V Mostra informações da versao do compilador e sai -Wl, Passar opções separadas por virgula ao linkeditor -x Compilacao para criar um executável -z Gera saída do compilador verbosa Opcoes específicas do COBOL: -C Faz todas as chamadas dinâmicas COBOL -D Inclui linhas de debug no fonte -F Fonte de entrada esta em formato de coluna fixa padrão -I Define inclusão(copybooks) de caminhos de procura. (padrão -I./) O caminho pode ser um simples diretorio, ou uma lista de diretórios separados por um ':' -P Gera arquivo de saída listado -T . - CALL e CANCEL - Transforma o conte·do entre aspas em lowercase - Remove funcoes X"AF". - Remove funcoes X"91". - SELECT. - Substitui ASSIGN TO para ASSIGN TO EXTERNAL - Substitui ASSIGN TO DISK por ASSIGN TO EXTERNAL - Substitui ASSIGN TO PRINTER por ASSIGN TO EXTERNAL printer - Substitui "\" por "/" nas strings. - MOVE. - Retirar "$" nas strings. - Substituir "\" por "/" nas strings. - DELETE. - Remove a cláusula FILE, se usada junto com o DELETE. - Pre-processa(abre/fecha) fontes, com o verbo COPY. 3.2 Sintaxe de uso: cbl2cob -d mf -i programa.cbl -o programa.cob A opção "-d mf" indica que estaremos realizando uma conversão de fonte padrão MicroFocus. Poderá ser utilizada a opção "-d mb", para COBOL MB. A opção "-i" (input) indica o fonte original e a opção "-o" indica o novo fonte que deverá ser gerado. ---------------------------------------------------------------------------------- 4 - Tutoriais. Para facilitar o uso do TinyCOBOL com todos os seus recursos (Banco de Dados e Interface Gráfica) compõe esta instalação os seguintes tutoriais: 4.1 TCL/TK: Disponível na pasta C:\TinyCOBOL\Tutoriais\TCL-TK, contém um pequeno programa de cadastro de contatos, incluindo ferramenta de busca, escrito em TCL/TK e integrado com o TinyCOBOL. Este programa faz a gravação dos dados em arquivos nativos. O arquivo LEIA-ME.TXT traz informações detalhadas sobre o mesmo. 4.2 PostgreSQL: Disponível na pasta C:\TinyCOBOL\Tutoriais\PostgreSQL, contém um pequeno programa para cadastro de filiais, que faz acesso ao banco PostgreSQL através de uma rotina em C que acessa as APIs do Banco de Dados. O arquivo LEIA-ME.TXT traz informações detalhadas sobre o mesmo. 4.3 Firebird: Disponível na pasta C:\TinyCOBOL\Tutoriais\Firebird, contém um pequeno programa para cadastro de filiais, que faz acesso ao banco Firebird através de EmbeddebSQL, onde as instruções SQL são transcritas diretamente no fonte do programa. O arquivo LEIA-ME.TXT traz informações detalhadas sobre o mesmo. ---------------------------------------------------------------------------------- 5 - Dúvidas e Sugestões. 5.1 Dúvidas, críticas e sugestões envie para: * Clube Cobol (cobol@yahoogrupos.com.br): Grupo brasileiro de usuários COBOL * Lista Oficial de Desenvolvedores (tiny-cobol-users@lists.sourceforge.net): Grupo oficial de desenvolvedores e usuários (em inglês). 5.2 Material de apoio TC+TCL (ambiente gráfico) e TC+DDD (depuração). Estão disponíveis no grupo de programas TinyCOBOL a documentação escrita por Rildo Pragana referentes à integração do TinyCOBOL com TCL/TK e também sobre o uso do DDD, ferramenta para depuração que pode ser usada para "animar" os programas escritos e compilados em TinyCOBOL. 5.3 Informações adicionais sobre TinyCOBOL. http://br.tinycobol.org http://wiki.tinycobol.org ---------------------------------------------------------------------------------- 6 - Agradecimentos. - Rildo Pragana pela iniciativa no desenvolvimento do TinyCOBOL; - Walter Garrote por aceitar o desafio de manter o desenvolvimento do compilador; - Carlucio Lopes por nos auxiliar na criação deste pacote, cedendo parte dos tutoriais - Demais colaboradores do projeto; - A você que está lendo este material, que nos incentiva a manter o trabalho, construindo um compilador COBOL cada dia melhor.