Logo

GNUCOBOL (già OpenCobol) Italian Group

Nuova versione settembre 2019

Come installare (linux e windows)

NOTE SULLE MODALITA DI INSTALLAZIONE

AMBIENTE LINUX

Con la nuova versione e' stato cambiato il motore della grafica usando le sofisticate librerie AGAR Gui toolkit che sono estremamente potenti e veloci. La nuova versione e' stata modificata usando la versione 1.6 (in fase di pubblicazione) e il prodotto e' stato aggiornato partendo da linux su una distribuzione Ubuntu 16.04 LTS.  La libreria puo' essere agevolmente installata su linux seguendo le istruzioni riportate nel sito. Per lo sviluppo ho usato  visual studio che ha i plugin per visualizzare la sintassi cobol  ed e' un editor, a mio avviso, estremamente comodo e funzionale.

Guicobol usa alcune chiamate che sono realizzate nel modulo agarcob.cbl. In fase di prima installazione e' necessario compilare la libreria e il guicobol con le istruzioni di seguito indicate altre funzioni sono direttamente inserite nel template guicobol.inf che e' il file di configuraazione del pre-processore e quindi vengono inserite direttamente nel sorgente generato da guicobol.

cobc agarcob.cbl $(agar-config --libs) $(agar-core-config --libs) -fno-gen-c-decl-static-call

 

cobc -x guicobol.cbl

il processo di esecuzione guicobol consiste nella creazione dal  preprocessore di un file con estensione .gui che verrà quindi compilato normalmente con gnucobol. di seguito un esempio del file di compilazione su linux, completezza viene inserita anche la compilazione dei moduli agorcob.cbl e guicobol stessi. una volta effettuata la prima installazione e' possibile commentare le righe.

set -x
export COB_LDFLAGS='-Wl,--no-as-needed'
cobc agarcob.cbl $(agar-config --libs) $(agar-core-config --libs) -fno-gen-c-decl-static-call
cobc -x guicobol.cbl
./guicobol $1 cobc -x $1.gui $(agar-config --libs) $(agar-core-config --libs) -fno-gen-c-decl-static-call -Wall ./$1

Continua per avere altri dettagli sulle funzionalità...

 

AMBIENTE WINDOWS

L'installazione su windows attualmente in fase di test e' utilizzando le librerie cygwin64

Cygwin Package Information              Version


_autorebase                             001007-1
alternatives                            1.3.30c-10
base-cygwin                             3.8-1
base-files                              4.3-2
bash                                    4.4.12-3
binutils                                2.29-1
bzip2                                   1.0.8-1
ca-certificates                         2.32-1
compiler-rt                             8.0.1-1
coreutils                               8.26-2
crypto-policies                         20190218-1
cygutils                                1.4.16-2
cygwin                                  3.1.2-1
cygwin-debuginfo                        3.1.2-1
cygwin-devel                            3.1.2-1
cygwin32                                2.10.0-1
cygwin32-binutils                       2.29-1
cygwin32-default-manifest               6.4-1
cygwin32-gcc-core                       6.4.0-1
cygwin32-gcc-debuginfo                  6.4.0-1
cygwin32-gcc-g++                        6.4.0-1
cygwin32-w32api-headers                 4.0.4-1
cygwin32-w32api-runtime                 4.0.4-1
dash                                    0.5.9.1-1
dejavu-fonts                            2.37-1
desktop-file-utils                      0.23-1
diffutils                               3.5-2
dri-drivers                             19.1.6-1
editrights                              1.03-1
file                                    5.32-1
findutils                               4.6.0-1
gamin                                   0.1.10-15
gawk                                    5.0.1-1
gcc-core                                7.4.0-1
gcc-g++                                 7.4.0-1
getent                                  2.18.90-4
gmp                                     6.2.0-1
grep                                    3.0-2
groff                                   1.22.4-1
gsettings-desktop-schemas               3.24.1-1
gzip                                    1.8-1
hostname                                3.13-1
info                                    6.7-1
ipc-utils                               1.0-2
less                                    551-1
libargp                                 20110921-3
libatomic1                              7.4.0-1
libattr1                                2.4.48-2
libblkid1                               2.33.1-1
libbz2_1                                1.0.8-1
libc++-devel                            8.0.1-1
libc++1                                 8.0.1-1
libc++abi-devel                         8.0.1-1
libc++abi1                              8.0.1-1
libcharset1                             1.14-3
libcrypt0                               2.1-1
libcrypt2                               4.4.4-1
libdb-devel                             5.3.28-2
libdb5.3                                5.3.28-2
libedit0                                20130712-1
libexpat-devel                          2.2.6-1
libexpat1                               2.2.6-1
libfam0                                 0.1.10-15
libfdisk1                               2.33.1-1
libffi6                                 3.2.1-2
libfontconfig-common                    2.13.1-1
libfontconfig-devel                     2.13.1-1
libfontconfig1                          2.13.1-1
libfreetype-devel                       2.9.1-1
libfreetype6                            2.9.1-1
libgc1                                  8.0.4-1
libgcc1                                 7.4.0-1
libgdbm4                                1.13-1
libgdbm6                                1.18.1-1
libgdbm_compat4                         1.18.1-1
libGL1                                  19.1.6-1
libglapi0                               19.1.6-1
libglib2.0_0                            2.54.3-1
libgmp-devel                            6.2.0-1
libgmp10                                6.2.0-1
libgmpxx4                               6.2.0-1
libgomp1                                7.4.0-1
libguile17                              1.8.8-3
libguile2.0_22                          2.0.14-3
libiconv                                1.14-3
libiconv-devel                          1.14-3
libiconv2                               1.14-3
libimagequant0                          2.10.0-1
libintl8                                0.19.8.1-2
libisl13                                0.14.1-1
libisl15                                0.16.1-1
libjbig2                                2.0-14
libjpeg-devel                           1.5.3-1
libjpeg8                                1.5.3-1
liblcms2_2                              2.9-1
libllvm-devel                           8.0.1-1
libllvm4.0                              4.0.1-1
libllvm5.0                              5.0.1-1
libllvm8                                8.0.1-1
libltdl7                                2.4.6-7
liblzma5                                5.2.4-1
libmpc3                                 1.1.0-1
libmpfr4                                3.1.6-1p1
libmpfr6                                4.0.2-1
libncurses++w10                         6.1-1.20190727
libncurses-devel                        6.1-1.20190727
libncursesw10                           6.1-1.20190727
libopenjp2_7                            2.3.0-1
libp11-kit0                             0.23.15-1
libpcre1                                8.43-1
libpipeline1                            1.5.1-1
libpkgconf3                             1.6.0-1
libpng-devel                            1.6.37-1
libpng16                                1.6.37-1
libpng16-devel                          1.6.37-1
libpolly-devel                          8.0.1-1
libpolly8                               8.0.1-1
libpopt-common                          1.16-2
libpopt0                                1.16-2
libquadmath0                            7.4.0-1
libreadline7                            7.0.3-3
libSDL-devel                            1.2.15-3
libSDL1.2_0                             1.2.15-3
libsigsegv2                             2.10-2
libsmartcols1                           2.33.1-1
libsqlite3_0                            3.30.0-1
libssl1.1                               1.1.1d-1
libssp0                                 6.4.0-4
libstdc++6                              7.4.0-1
libtasn1_6                              4.14-1
libtiff6                                4.0.9-1
libunistring2                           0.9.10-1
libunwind-devel                         8.0.1-1
libunwind1                              8.0.1-1
libuuid-devel                           2.33.1-1
libuuid1                                2.33.1-1
libwebp7                                0.6.1-2
libwebpdemux2                           0.6.1-2
libwebpmux3                             0.6.1-2
libX11-devel                            1.6.8-1
libX11-xcb1                             1.6.8-1
libX11_6                                1.6.8-1
libXau-devel                            1.0.9-1
libXau6                                 1.0.9-1
libxcb-devel                            1.13-1
libxcb-glx0                             1.13-1
libxcb1                                 1.13-1
libXdmcp-devel                          1.1.3-1
libXdmcp6                               1.1.3-1
libXext-devel                           1.3.4-1
libXext6                                1.3.4-1
libXinerama-debuginfo                   1.1.4-1
libXinerama-devel                       1.1.4-1
libXinerama1                            1.1.4-1
libxml2                                 2.9.9-2
libXrandr2                              1.5.2-1
libXrender1                             0.9.9-1
libyaml0_2                              0.1.6-2
llvm                                    8.0.1-1
login                                   1.13-1
make                                    4.2.1-2
man-db                                  2.7.6.1-1
mingw64-i686-binutils                   2.29.1.787c9873-1
mingw64-i686-bzip2                      1.0.6-4
mingw64-i686-freetype2                  2.8.1-1
mingw64-i686-gcc-core                   7.4.0-1
mingw64-i686-gcc-g++                    7.4.0-1
mingw64-i686-headers                    7.0.0-1
mingw64-i686-libpng                     1.6.34-1
mingw64-i686-pthreads                   20100619-5
mingw64-i686-runtime                    7.0.0-1
mingw64-i686-windows-default-manifest   6.4-1
mingw64-i686-winpthreads                7.0.0-1
mingw64-i686-zlib                       1.2.11-1
mingw64-x86_64-binutils                 2.29.1.787c9873-1
mingw64-x86_64-bzip2                    1.0.6-4
mingw64-x86_64-flac                     1.3.2-1
mingw64-x86_64-fluidsynth               1.1.10-1
mingw64-x86_64-freetype2                2.8.1-1
mingw64-x86_64-gcc-core                 7.4.0-1
mingw64-x86_64-gcc-g++                  7.4.0-1
mingw64-x86_64-gettext                  0.19.8.1-2
mingw64-x86_64-glib2.0                  2.54.3-1
mingw64-x86_64-gsm                      1.0.17-1
mingw64-x86_64-headers                  7.0.0-1
mingw64-x86_64-jbigkit                  2.1-1
mingw64-x86_64-libffi                   3.2.1-2
mingw64-x86_64-libgnurx                 2.5-3
mingw64-x86_64-libjpeg-turbo            1.5.3-1
mingw64-x86_64-libmodplug               0.8.9.0-1
mingw64-x86_64-libogg                   1.3.2-1
mingw64-x86_64-libpng                   1.6.34-1
mingw64-x86_64-libsndfile               1.0.28-2
mingw64-x86_64-libvorbis                1.3.6-1
mingw64-x86_64-libwebp                  0.6.1-1
mingw64-x86_64-mpg123                   1.25.10-1
mingw64-x86_64-ncurses                  6.0-12.20171125
mingw64-x86_64-pcre                     8.40-3
mingw64-x86_64-pthreads                 20100619-5
mingw64-x86_64-readline                 7.0.1-1
mingw64-x86_64-runtime                  7.0.0-1
mingw64-x86_64-SDL                      1.2.15-1
mingw64-x86_64-SDL2                     2.0.7-1
mingw64-x86_64-SDL2_image               2.0.2-1
mingw64-x86_64-SDL2_mixer               2.0.2-1
mingw64-x86_64-SDL2_net                 2.0.1-1
mingw64-x86_64-SDL2_ttf                 2.0.14-1
mingw64-x86_64-SDL_image                1.2.12-5
mingw64-x86_64-SDL_mixer                1.2.12-1
mingw64-x86_64-SDL_net                  1.2.8-1
mingw64-x86_64-SDL_sound                1.0.3-1
mingw64-x86_64-SDL_ttf                  2.0.11-1
mingw64-x86_64-speex                    1.2.0-1
mingw64-x86_64-speexdsp                 1.2-0.1.rc3
mingw64-x86_64-tiff                     4.0.9-1
mingw64-x86_64-win-iconv                0.0.6-2
mingw64-x86_64-windows-default-manifest 6.4-1
mingw64-x86_64-winpthreads              7.0.0-1
mingw64-x86_64-xz                       5.2.3-1
mingw64-x86_64-zlib                     1.2.11-1
mintty                                  3.1.0-1
ncurses                                 6.1-1.20190727
openssl                                 1.1.1d-1
p11-kit                                 0.23.15-1
p11-kit-trust                           0.23.15-1
perl                                    5.26.3-2
perl-Math-Int64                         0.54-2
perl-Math-Int64-debuginfo               0.54-2
perl_autorebase                         5.26.3-2
perl_base                               5.26.3-2
pkg-config                              1.6.0-1
pkgconf                                 1.6.0-1
python-pip-wheel                        19.2.3-1
python-setuptools-wheel                 41.2.0-1
python2                                 2.7.16-1
python27                                2.7.16-1
python27-cffi                           1.12.2-1
python27-chardet                        3.0.4-1
python27-imaging                        5.4.1-1
python27-olefile                        0.46-1
python27-ply                            3.11-1
python27-pycparser                      2.19-1
python27-pygments                       2.3.1-1
python27-yaml                           3.13-1
rebase                                  4.4.4-1
run                                     1.3.4-2
sed                                     4.4-1
shared-mime-info                        1.8-1
tar                                     1.29-1
terminfo                                6.1-1.20190727
terminfo-extra                          6.1-1.20190727
tzcode                                  2019c-1
tzdata                                  2019c-1
util-linux                              2.33.1-1
vim-minimal                             8.1.1772-1
w32api-headers                          7.0.0-1
w32api-runtime                          7.0.0-1
which                                   2.20-2
windows-default-manifest                6.4-1
xorgproto                               2019.1-1
xz                                      5.2.4-1
zlib-devel                              1.2.11-1
zlib0                                   1.2.11-1

batch per compilare agarcob.cbl

cobc agarcob.cbl -v -fno-gen-c-decl-static-call -LC:/cygwin64/usr/local/lib -lag_gui -lag_core  -I"C:/cygwin64/usr/local/include/agar" -I"C:/cygwin64/usr/include/SDL" -I"c:/cygwin64/usr/include/freetype2" -I"C:/cygwin64/usr/include/libpng16" -I"C:/cygwin64/usr/include/freetype2" -I"C:/cygwin64/usr/include/uuid" -L"C:/cygwin64/usr/lib"  -lSDL.dll -lfreetype -lfontconfig -lfreetype -lopengl32 -lgdi32 -lX11 -lXinerama -lm -ljpeg -lpng16 -lwinmm

download lista di BATCH per lavorare con GuiCOBOL WINDOWS

  • cobagar compila agarcob.cbl e genera agarcob.dll per la produzione
  • animagar anima agarcob.cbl
  • cobgui compila un .cbl e genera e compila il .gui formato .exe  (default per GuiCOBOL)
  • anigui anima  un .cbl (default per Animate GuiCOBOL)
  • cobcbl compila un. cbl con le librerie agar senza preprocesso GuiCOBOL
  • animcbl anima un .cbl  senza preprocesso GuiCOBOL
  • menu lista batch disponibili