|
Name |
|
Date |
Size |
#Lines |
LOC |
| .. | | 03-May-2022 | - |
| bin/ | H | 23-Dec-2020 | - | 2,030 | 1,535 |
| build_aux/ | H | 23-Dec-2020 | - | 30,232 | 24,587 |
| cobc/ | H | 23-Dec-2020 | - | 140,755 | 119,067 |
| config/ | H | 03-May-2022 | - | 11,734 | 9,044 |
| copy/ | H | 23-Dec-2020 | - | 1,289 | 1,094 |
| doc/ | H | 03-May-2022 | - | 13,146 | 10,507 |
| extras/ | H | 23-Dec-2020 | - | 928 | 787 |
| lib/ | H | 23-Dec-2020 | - | 1,094 | 860 |
| libcob/ | H | 23-Dec-2020 | - | 50,956 | 41,261 |
| m4/ | H | 23-Dec-2020 | - | 12,442 | 11,367 |
| po/ | H | 03-May-2022 | - | 83,743 | 65,975 |
| tests/ | H | 23-Dec-2020 | - | 216,330 | 177,257 |
| ABOUT-NLS | H A D | 23-Dec-2020 | 91.8 KiB | 1,379 | 1,341 |
| AUTHORS | H A D | 23-Dec-2020 | 490 | 14 | 10 |
| COPYING | H A D | 23-Dec-2020 | 34.3 KiB | 675 | 553 |
| COPYING.DOC | H A D | 23-Dec-2020 | 22.4 KiB | 452 | 373 |
| COPYING.LESSER | H A D | 23-Dec-2020 | 7.5 KiB | 166 | 128 |
| ChangeLog | H A D | 23-Dec-2020 | 40.1 KiB | 1,330 | 813 |
| DEPENDENCIES | H A D | 23-Dec-2020 | 4.2 KiB | 144 | 94 |
| DEPENDENCIES.md | H A D | 23-Dec-2020 | 3.8 KiB | 122 | 79 |
| HACKING | H A D | 23-Dec-2020 | 2.7 KiB | 71 | 54 |
| INSTALL | H A D | 23-Dec-2020 | 15.4 KiB | 369 | 287 |
| Makefile.am | H A D | 23-Dec-2020 | 4.5 KiB | 127 | 63 |
| Makefile.in | H A D | 23-Dec-2020 | 43.4 KiB | 1,218 | 998 |
| NEWS | H A D | 23-Dec-2020 | 35.1 KiB | 990 | 660 |
| README | H A D | 23-Dec-2020 | 6.5 KiB | 213 | 157 |
| README.md | H A D | 23-Dec-2020 | 4.8 KiB | 154 | 105 |
| THANKS | H A D | 23-Dec-2020 | 1.5 KiB | 41 | 37 |
| TODO | H A D | 23-Dec-2020 | 2.1 KiB | 80 | 46 |
| aclocal.m4 | H A D | 23-Dec-2020 | 42.2 KiB | 1,179 | 1,072 |
| aminclude_static.am | H A D | 23-Dec-2020 | 6.6 KiB | 127 | 108 |
| autogen.sh | H A D | 23-Dec-2020 | 1.4 KiB | 45 | 17 |
| config.h.in | H A D | 23-Dec-2020 | 12.6 KiB | 520 | 358 |
| configure | H A D | 03-May-2022 | 699.1 KiB | 24,052 | 20,366 |
| configure.ac | H A D | 23-Dec-2020 | 67.6 KiB | 2,241 | 2,038 |
| gnucobol.spec | H A D | 23-Dec-2020 | 2 KiB | 91 | 66 |
| libcob.h | H A D | 23-Dec-2020 | 1,005 | 36 | 10 |
| tarstamp.h | H A D | 23-Dec-2020 | 117 | 4 | 3 |
README
1
2 GnuCOBOL
3 https://www.gnu.org/software/gnucobol/
4 https://sourceforge.net/projects/gnucobol
5 https://savannah.gnu.org/projects/gnucobol
6
7GnuCOBOL is a free (like both in "free speech" and in "free beer")
8COBOL compiler, formerly known as OpenCOBOL.
9It implements a substantial part of the COBOL 85, COBOL 2002 and COBOL 2014
10standards, as well as many extensions included in other COBOL compilers.
11
12GnuCOBOL translates COBOL into C and compiles the translated code
13using the native C compiler on various platforms, including Unix/Linux,
14Mac OS X, and Microsoft Windows.
15
16This package contains the following subdirectories:
17
18 cobc COBOL compiler
19 libcob COBOL run-time library
20 bin COBOL driver program
21 build_aux Helper scripts
22 lib Helper routines for missing OS functionality
23 config Configuration files
24 po International messages
25 doc 'info' and 'pdf' files
26 tests Test suite (GnuCOBOL and framework for COBOL85)
27 extras useful COBOL programs
28
29All programs except those in lib and libcob are distributed under
30the GNU General Public License. See COPYING for details.
31
32Programs in lib and libcob are distributed under the GNU Lesser
33General Public License. See COPYING.LESSER for details.
34
35For any copyright year range specified as YYYY-ZZZZ in this package,
36that the range specifies every single year in that closed interval.
37
38Although many have participated, most development thanks go to
39
40 Roger While
41 Keisuke Nishida
42
43See AUTHORS for the author of each file.
44
45============
46Requirements
47============
48
49GnuCOBOL uses other software packages, some of these are necessary,
50some optional.
51See DEPENDENCIES for a complete list of these which may be helpful
52if you build GnuCOBOL from source. You will also likely see some of those
53when using pre-built binaries of this project, for example via your OS
54package manager like apt, yum, pacman, brew, ...
55
56============
57Installation
58============
59
60See the INSTALL file for detailed information about how to configure
61and install GnuCOBOL "building from source".
62Special requirements and further installation notes are listed below.
63
64** NOTE **
65 The default installation path for GnuCOBOL is /usr/local.
66 The installation path may be changed by specifying --prefix=<dir>
67 as a parameter to the configure.
68 Further parameters may be specified to affect
69 include/library search paths.
70 Execute ./configure --help for further details.
71
72To generate/install GnuCOBOL :
73
74**************************************
75
76 Configure and build
77 ./configure
78 make
79
80 Here you may run different tests with the version of GnuCOBOL that is
81 not installed yet, see "Tests" below.
82 This is *highly recommended* before installing.
83
84 Install
85 make install
86
87** NOTE **
88 You generally need super-user privileges to execute "make install"
89 unless you changed the installation directory with
90 "./configure --prefix=<dir>" or install to a different location with
91 "make install DESTDIR=<dir>".
92 In those later cases you only need to have full access to <dir>.
93
94** NOTE **
95 On Linux systems, if you are installing for the
96 -first- time, you may need to run "ldconfig" (as root).
97 In fact, it does not hurt if you always do this.
98
99** NOTE **
100 On some Red Hat (Fedora) installations and
101 possibly other Linux distros, /usr/local/lib
102 is NOT automatically searched at runtime.
103 Edit /etc/ld.so.conf (or the equivalent file) and add
104 /usr/local/lib to the file.
105 Rerun "ldconfig".
106
107**************************************
108
109If you think you have a problem or just want to log
110the output of make then redirect the output with :
111 make 1>mymake.log 2>&1
112 make install 1>myinstall.log 2>&1
113
114**************************************
115
116You can get back to a clean installation status by running :
117 make distclean
118
119**************************************
120
121
122============
123Tests
124============
125
126
127 To verify GnuCOBOL works before installing it, run the internal
128 testsuite. Simply do
129 make check
130 This MUST succeed. Please report any failures.
131
132 You may optionally perform a series of COBOL85 tests.
133 make test
134 It is recommended that you also perform these tests.
135
136** NOTE **
137 The language interpreter "perl" is required to run COBOL85 tests.
138
139** NOTE **
140 Running "make test" will try to download the COBOL85
141 testsuite if it is neither in the build-tree nor source-tree.
142 For details see tests/cobol85/README.
143
144 If you want to run both testsuites you can run
145 make checkall
146
147
148============
149
150The following is only interesting for advanced use.
151A normal user should not have recourse to use these
152options.
153
154There are many configure options (see configure --help for a full list),
155these are the most important ones:
156
157 --with-db Use Berkeley DB >= 4.1 (libdb) (ISAM handler)
158 This is the default
159
160 --without-db Do neither use Berkeley DB nor any other ISAM handler
161 You will not be able to use indexed I/O
162
163 --with-vbisam Use VBISAM (libvbisam) (ISAM handler)
164
165 --with-dl Use the system dynamic linker
166 This is the default
167
168 --without-dl Use ltdl for dynamic program loading
169
170 --with-patch-level=<n> Set internal patch level to n (default 0)
171
172 --with-varseq=<n> Define the default format for variable
173 length sequential files.
174
175 The default may be overridden at run time by
176 setting the environment variable
177 COB_VARSEQ_FORMAT to 0, 1, 2, or 3.
178
179 For values of 0, 1 and 2, four bytes are
180 written preceding each record. The format of
181 these four bytes for values of 0, 1, 2 is
182 as follows :
183 n = 0 (default)
184 The first 2 bytes are the record length
185 in big-endian order. This is compatible
186 with mainframe. Bytes 3 and 4 are set
187 to binary 0.
188 n = 1
189 The 4 bytes are the record length in
190 big-endian order.
191 n = 2
192 The 4 bytes are the record length in
193 native machine order (int).
194 (This was previously the default)
195
196 For the value of 3, two bytes are written
197 preceding each record :
198 n = 3
199 The first 2 bytes are the record length
200 in big-endian order. The record follows
201 immediately after beginning at byte 3.
202
203 --enable-debug Add '-g' debug option to make
204
205============
206
207============
208Development
209============
210
211If you wish to hack the GnuCOBOL source or build from version control,
212see HACKING.
213
README.md
1[GnuCOBOL}(https://www.gnu.org/software/gnucobol/) is a free
2COBOL compiler licensed under the GNU Public License (GPL).
3It implements a substantial part of the COBOL 85,
4COBOL 2002 and COBOL 2014 standards, as well as many extensions
5included in other COBOL compilers.
6
7GnuCOBOL translates COBOL into C and compiles the translated code
8using the native C compiler on various platforms, including Unix/Linux,
9Mac OS X, and Microsoft Windows.
10
11This package contains the following subdirectories:
12
13* cobc COBOL compiler
14* libcob COBOL run-time library
15* bin COBOL driver program
16* build_aux Helper scripts
17* lib Helper routines for missing OS functionality
18* config Configuration files
19* po International messages
20* doc 'info' and PDF files
21* tests Test suite (GnuCOBOL and framework for COBOL85)
22* extras useful COBOL programs
23
24All programs except those in lib and libcob are distributed under
25the GNU General Public License. See COPYING for details.
26
27Programs in lib and libcob are distributed under the GNU Lesser
28General Public License. See COPYING.LESSER for details.
29
30Requirements
31============
32
33GnuCOBOL uses other software packages, some of these are necessary,
34some optional. See DEPENDENCIES.md for a complete list.
35
36If building GnuCOBOL from source, you can choose which optional
37functionality to include via the configure script. When using
38pre-built binaries -- for example, via your OS package
39manager -- the packager will have made those choices for you.
40
41Building from source
42====================
43
44GnuCOBOL is built and installed using the `configure` script generated
45by GNU autotools. If you're unfamiliar with `configure`, see the
46INSTALL file for detailed information about it. Special requirements
47and further installation notes are listed below.
48
49We recommend creating a build directory; these instructions assume
50your build directory is `build`, a sub-directory of the source tree
51root, and that that is your current working directory. These
52instructions redirect the configuration and compilation messages to a
53file, partly to avoid a slew of messages scrolling off the screen, and
54to make any errors more prominent.
55
56To see the list of configuration options, use `../configure --help`.
57
58By default, the configured PREFIX is `/usr/local`. That means the
59binaries will be installed to `/usr/local/bin`, libraries to
60`/usr/local/lib`, and so on. The PREFIX may be changed by specifying
61`--prefix=<dir>` configure option. Other options control other
62install directories.
63
64Once you've decided on your options, generate the build tree with
65
66* `../configure [options] > log`
67
68and build the compiler and run-time library with
69
70* `make > log`
71
72Tests
73=====
74
75To verify GnuCOBOL works before installing it, run the internal
76testsuite. Simply do
77
78* `make check > log`
79
80This MUST succeed. Please report any failures.
81
82Also included are COBOL85 standard tests provided by the NIST.
83They are run with
84
85* `make test > log`
86
87If the the COBOL85 testsuite is not already in the build- or source-tree,
88`make test` will download it. For details see tests/cobol85/README.
89
90** NOTE **
91 The language interpreter "perl" is required to run COBOL85 tests.
92
93
94 If you want to run both testsuites you can run
95
96 * `make checkall`
97
98Installation
99============
100
101To install GnuCOBOL, including the compiler, run-time library, and
102documentation,
103
104 * `make install > log`
105
106Unless you have taken steps to ensure you can create files in the
107PREFIX directory, you'll probably need super-user privileges for this step.
108
109
110Un-installation
111===============
112
113You can get back to a clean installation status by running
114
115* `make distclean`
116
117ISAM Support
118============
119
120The following is only interesting for advanced use.
121
122The COBOL language supports the use of ISAM files. Unlike mainframe
123operating systems, those that GnuCOBOL runs on do not include any
124record-oriented system services. GnuCOBOL can either be built without
125ISAM support, or with it, in which case the support may by provided by
126one of several libraries. The choice is expressed as a `configure`
127option.
128
129To exclude ISAM support, use
130
131* `--without-db` You will not be able to use indexed I/O
132
133By default, ISAM support is provide by Berkeley DB. You can say so
134explicitly with `--with-db`. Or you can select from one of the
135following options,
136
137* `--with-cisam` to use CISAM
138* `--with-disam` to use DISAM
139* `--with-vbisam` to use VBISAM
140
141Development
142===========
143
144If you wish to hack the GnuCOBOL source or build from version control,
145see HACKING.
146
147Further information about the project, including the source code repository,
148history, and frequently asked questions, may be found at
149
150* https://www.gnu.org/software/gnucobol/
151* https://sourceforge.net/projects/gnucobol
152* https://savannah.gnu.org/projects/gnucobol
153
154