Passo 1: Instalar o GnuCOBOL

1.1. Baixe o GnuCOBOL

Do seu browser, acesse a página oficial do GnuCOBOL, em gnucobol.sourceforge.io. A primeira tela do site é essa que aparece aí embaixo:

Tela inicial do site oficial do GnuCOBOL

Clique no botão azul mais à direita para baixar o compilador para o MacOS. Você será redirecionado para a página de download. Clique no botão “Download Latest Version (3.1.1)“:

O download começará automaticamente em alguns segundos…

Quando o download terminar, aparecerá uma tela agradecendo por você ter baixado o compilador. Nessa tela você pode se registrar para receber informações atualizadas sobre o projeto GnuCOBOL.

O arquivo gnucobol-3.1.1.tar.xz é um tarball que contém tudo o que você precisa para instalar o compilador na sua máquina. Ele estará disponível na sua pasta de Downloads:

1.2. Descompacte o compilador

Para instalar o compilador será necessário descompactar o tarball em um diretório temporário e depois executar alguns comandos no Terminal do Mac.

Para acessar o Terminal, pressione command+space, digite Terminal no campo de pesquisa e clique no app que aparecerá logo abaixo da caixa de texto:

Acessando o terminal do Mac

Agora que estamos no Terminal, digite os comandos abaixo para entrar no diretório de Downloads e descompactar o tarball. Lembre-se de substituir a expressão “{seuNome}” pelo seu nome de usuário no equipamento:

cd /Users/{seuNome}/Downloads
tar -xvf gnucobol-3.1.1.tar.xz

Usando o comando ls, podemos ver que agora existe o arquivo tar que baixamos do site, e um diretório onde estão os componentes do compilador:

ls -ld gnu*
drwxr-xr-x@ 52 pauloandre  staff     1768 Dec 28 12:16 gnucobol-3.1.1
-rw-r--r--@  1 pauloandre  staff  2183540 Dec 21 12:46 gnucobol-3.1.1.tar.xz

Vamos entrar nesse diretório e ver que componentes são esses:

cd gnucobol-3.1.1
ls -l
total 3992
-rw-r--r--@  1 pauloandre  staff   94013 Dec  8 20:40 ABOUT-NLS
-rw-r--r--@  1 pauloandre  staff     490 Dec  8 20:40 AUTHORS
-rw-r--r--@  1 pauloandre  staff   35149 Dec  8 20:40 COPYING
-rw-r--r--@  1 pauloandre  staff   22964 Dec  8 20:40 COPYING.DOC
-rw-r--r--@  1 pauloandre  staff    7652 Dec  8 20:40 COPYING.LESSER
-rw-r--r--@  1 pauloandre  staff   40850 Dec  8 20:40 ChangeLog
-rw-r--r--@  1 pauloandre  staff    4251 Dec  8 20:40 DEPENDENCIES
-rw-r--r--@  1 pauloandre  staff    3888 Dec  8 20:40 DEPENDENCIES.md
-rw-r--r--@  1 pauloandre  staff    2721 Dec  8 20:40 HACKING
-rw-r--r--@  1 pauloandre  staff   15756 Dec  8 20:40 INSTALL
-rw-r--r--   1 pauloandre  staff   43000 Dec 21 13:01 Makefile
-rw-r--r--@  1 pauloandre  staff    4579 Dec  8 20:40 Makefile.am
-rw-r--r--@  1 pauloandre  staff   44430 Dec  8 20:56 Makefile.in
-rw-r--r--@  1 pauloandre  staff   35841 Dec  8 20:40 NEWS
-rw-r--r--@  1 pauloandre  staff    6681 Dec  8 20:40 README
-rw-r--r--@  1 pauloandre  staff    4895 Dec  8 20:40 README.md
-rw-r--r--@  1 pauloandre  staff    1553 Dec  8 20:40 THANKS
-rw-r--r--@  1 pauloandre  staff    2189 Dec  8 20:40 TODO
-rw-r--r--@  1 pauloandre  staff   43257 Dec  8 20:56 aclocal.m4
-rw-r--r--@  1 pauloandre  staff    6748 Dec  8 20:41 aminclude_static.am
-rwxr-xr-x@  1 pauloandre  staff    1389 Dec  8 20:40 autogen.sh
drwxr-xr-x@ 15 pauloandre  staff     510 Dec 21 13:04 bin
drwxr-xr-x@ 19 pauloandre  staff     646 Dec  8 20:56 build_aux
drwxr-xr-x@ 51 pauloandre  staff    1734 Dec 21 13:04 cobc
drwxr-xr-x@ 38 pauloandre  staff    1292 Dec 21 13:01 config
-rw-r--r--   1 pauloandre  staff   14158 Dec 21 13:01 config.h
-rw-r--r--@  1 pauloandre  staff   12885 Dec  8 20:56 config.h.in
-rw-r--r--   1 pauloandre  staff  235425 Dec 21 13:01 config.log
-rwxr-xr-x   1 pauloandre  staff   78037 Dec 21 13:01 config.status
-rwxr-xr-x@  1 pauloandre  staff  715841 Dec  8 20:56 configure
-rw-r--r--@  1 pauloandre  staff   69237 Dec  8 20:40 configure.ac
drwxr-xr-x@ 11 pauloandre  staff     374 Dec 21 13:01 copy
drwxr-xr-x@ 24 pauloandre  staff     816 Dec 21 13:01 doc
drwxr-xr-x@  8 pauloandre  staff     272 Dec 21 13:04 extras
-rw-r--r--@  1 pauloandre  staff    2010 Dec  8 20:40 gnucobol.spec
drwxr-xr-x@ 13 pauloandre  staff     442 Dec 21 13:04 lib
drwxr-xr-x@ 51 pauloandre  staff    1734 Dec 21 13:04 libcob
-rw-r--r--@  1 pauloandre  staff    1005 Dec  8 20:40 libcob.h
-rwxr-xr-x   1 pauloandre  staff  343049 Dec 21 13:01 libtool
drwxr-xr-x@ 27 pauloandre  staff     918 Dec  8 20:56 m4
-rw-r--r--   1 pauloandre  staff   13871 Dec 21 13:03 output.configure.txt
-rw-r--r--   1 pauloandre  staff    4218 Dec 21 13:06 output.make.install.txt
-rw-r--r--   1 pauloandre  staff   26353 Dec 21 13:10 output.make.test.txt
-rw-r--r--   1 pauloandre  staff   15223 Dec 21 13:05 output.make.txt
-rw-r--r--   1 pauloandre  staff   11615 Dec 21 13:03 output.tar.txt
drwxr-xr-x@ 42 pauloandre  staff    1428 Dec 21 13:01 po
-rwxr-xr-x   1 pauloandre  staff    2782 Dec 21 13:01 pre-inst-env
-rw-r--r--   1 pauloandre  staff      23 Dec 21 13:01 stamp-h1
-rw-r--r--@  1 pauloandre  staff     117 Dec  8 20:56 tarstamp.h
drwxr-xr-x@ 19 pauloandre  staff     646 Dec 21 13:01 tests

1.3. Instale o compilador

Ainda no diretório /Users/{seuNome}/Downloads/gnucobol-3.1.1, precisamos executar três comandos para gerar e instalar o GnuCOBOL na sua máquina.

O comando ./configure é usado para verificar a integridade do pacote e estabelecer alguns parâmetros de instalação. Na imagem abaixo vemos algumas das primeiras e das últimas linhas exibidas após o comando:

./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... build_aux/install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
(...)
configure:  COB_STRIP_CMD     strip -x
configure:  Dynamic loading:                             System
configure:  Use gettext for international messages:      no
configure:  Use fcntl for file locking:                  yes
configure:  Use math multiple precision library:         gmp
configure:  Use curses library for screen I/O:           ncurses
configure:  Use Berkeley DB for INDEXED I/O:             yes
configure:  Used for XML I/O:                            libxml2
configure:  JSON I/O (no handler found):                 NO

Em seguida executamos o comando make para gerar as bibliotecas do GnuCOBOL. De novo, a tela abaixo mostra apenas algumas das primeiras e das últimas linhas exibidas durante a execução desse comando:

make
make  all-recursive
Making all in .
make[2]: Nothing to be done for `all-am'.
Making all in lib
(...)
"CBL_OC_DUMP.dylib"
"CBL_OC_DUMP.cob" || \
     "../pre-inst-env" cobc -m -Wall -vv -o "CBL_OC_DUMP.dylib"
"CBL_OC_DUMP.cob")
Making all in doc
make  all-am
make[3]: Nothing to be done for `all-am'.
Making all in tests
Making all in cobol85
make[3]: Nothing to be done for `all'.
make[3]: Nothing to be done for `all-am'.

O último comando, make install, é quem vai efetivamente instalar o GnuCOBOL na sua máquina:

make install
Making install in .
make[2]: Nothing to be done for `install-exec-am'.
 build_aux/install-sh -c -d '/usr/local/include'
 /usr/bin/install -c -m 644 libcob.h '/usr/local/include'
Making install in lib
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
(...)
Making install in tests
Making install in cobol85
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.

1.4. Teste o compilador (opcional)

O GnuCOBOL vem com uma suíte de testes baseados no NIST, e que tem por objetivo avaliar a aderência de qualquer compilador COBOL aos diversos padrões que surgiram ao longo do tempo.

A execução desta suíte é totalmente opcional, mas recomendável se você quer alguma garantia de que conseguirá usar todos os recursos da linguagem.

Para processar essa suíte, usamos o comando make test, que vai compilar e executar aproximadamente 400 programas que testam cerca de 9.700 funcionalidades do padrão ANS 85:

make test
make  all-recursive
Making all in .
(...)
cobc -std=cobol85 -x -debug IX218A.CBL &&  ./IX218A
cobc -std=cobol85 -x -debug IX301M.CBL
cobc -std=cobol85 -x -debug IX302M.CBL &&  ./IX302M
cobc -std=cobol85 -x -debug IX401M.CBL

Comparing test results for module directory IX

make diff-summary
make summary.log
Computing total test results...
Total executed programs : 426 - Total performed tests : 9748

Comparing total test results...
diff summary.txt...
Done

1.5. Verifique a instalação

Neste momento, o GnuCOBOL deve estar instalado e totalmente funcional em seu equipamento. Você pode conferir isso chamando o utilitário de compilação com a opção –version. Ela faz com que o compilador exiba, por exemplo, o número da versão corrente e a data em que essa release do foi empacotada pela equipe do projeto:

cobc --version
cobc (GnuCOBOL) 3.1.1.0
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Keisuke Nishida, Roger While, Ron Norman, Simon Sobisch, Edward Hart
Built     Dec 21 2020 13:04:18
Packaged  Dec 08 2020 22:56:13 UTC
C version "4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.39.2)"

1.5. Próximo passo

Se tudo deu certo até aqui, você está pronto para iniciar a instalação do do VSCode.


AnteriorConteúdoPróximo

2 comentários sobre “Passo 1: Instalar o GnuCOBOL

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *