Git Product home page Git Product logo

5l1v3r1 / opensource-cobol Goto Github PK

View Code? Open in Web Editor NEW

This project forked from opensourcecobol/opensource-cobol

0.0 0.0 0.0 12.52 MB

"opensource COBOL" is open-source COBOL compiler, an extension of the Japan-specific features. "opensource COBOL" translates COBOL program to C code and compiles it using GCC or CL.

Home Page: https://www.osscons.jp/osscobol/

License: GNU General Public License v2.0

Shell 38.84% C++ 0.21% C 45.34% COBOL 0.38% Makefile 5.67% Yacc 2.71% M4 6.69% Perl 6 0.16%

opensource-cobol's Introduction

			  opensource COBOL
		http://www.osscons.jp/osscobol/

"opensource COBOL" is open-source COBOL compiler, an extension of the Japan-specific features.
"opensource COBOL" translates COBOL program to C code and compiles it using GCC or CL.

It was forked from OpenCOBOL in 2012.
See also OpenCOBOL project.
    http://www.opencobol.org/
    http://sourceforge.net/projects/open-cobol/

This package contains the following subdirectories:

    cobc        COBOL compiler
    libcob      COBOL run-time library
    bin         COBOL driver program
    lib         static library and common headers
    config      configuration files
    po          international messages
    texi        Texinfo files
    tests       Test suite
    vbisam      VBISAM file I/O library
    win32       Project files for Windows

All programs except those in lib and libcob are distributed under
the GNU General Public License.  See COPYING for details.

Programs in lib and libcob are distributed under the GNU Lesser
General Public License.  See COPYING.LIB for details.

See AUTHORS for the author of each file.

Please refer to the file "win32/readme.txt" about win32 directory.

============
Requirements
============

  ***
     NOTE
	For all the following packages (required or optional),
	BOTH runtime AND development components are necessary.
  ***
  ***
     NOTE
	All the following packages are normally part of a Linux
	distribution. Cygwin also has these as installable packages
	ALWAYS install the distro packages when available !!
  ***

opensource COBOL requires the following external libraries to be installed:

  o GNU MP (libgmp) 4.1.2 or later
    http://gmplib.org

    BOTH runtime AND development components required.

    libgmp is used to implement decimal arithmetic.

    GNU MP is distributed under GNU Lesser General Public License.


  o GNU Libtool (libltdl)
    http://www.gnu.org/software/libtool/libtool.html

    ***
	NOTE - libltdl is NOT needed when installing on Linux
	or Windows (including Cygwin and MingW).
    ***

    libltdl is used to implement dynamic CALL statements.

    GNU Libtool is distributed under GNU Lesser General Public License.

  **

The following libraries ARE required WHEN :

1) Indexed-Sequential file I/O is used

  o Berkeley DB (libdb) 1.85 or later
    http://www.oracle.com/

    BOTH runtime AND development components required.

    Recommended is version 4.x as 1.85 is known to have problems.

    * NOTE *

     The following NOTE(S) ONLY apply to DB <= 4.1

	    * NOTE *
	     The BDB version 4.0 was never officially supported from
	     sleepycat but, unfortunately, found it's way into Linux
	     releases. Install a newer version.

	    * NOTE *
	     If you are generating BDB yourself and the BDB 
	     version is <= 4 (and version < 1), you need to specify
	     --enable-compat185 as a minimum to the BDB configure.
	     BDB does NOT have the usual install path of either
	     /usr or /usr/local. Therefore, it is recommended to
	     specify --prefix=/usr/local to the configure.

    libdb is used to implement indexed file I/O and SORT/MERGE.

    Berkeley DB is distributed under the original BSD License (1.85)
    or their own open-source license (2.x or later).  Note that, as
    of 2.x, if you linked your software with Berkeley DB, you must
    distribute the source code of your software along with your
    software, or you have to pay royalty to Oracle.

2) SCREEN I/O is used or extended ACCEPT/DISPLAY is used

    BOTH runtime AND development components required.

  o Ncurses (ncurses) 5.2 or later
    http://www.gnu.org/software/ncurses/ncurses.html

    libncurses is used to implement SCREEN SECTION and extended
    ACCEPT/DISPLAY.

    Ncurses is distributed under a BSD style license.

  o Unix curses

  o PDCurses (pdcurses) for MinGW ports
    http://pdcurses.sourceforge.net

============

============
Installation
============

  **
	NOTE
	Due to deficiencies in the tools used to prepare
	opensource COBOL (autoconf/automake/libtool), it is
	NOT generally possible to use path names with
	spaces embedded within them (Mainly Cygwin/MingW/Windows ports).
  **
 
To generate/install opensource COBOL on Linux:

**************************************

    ./configure
    make

 Here you may run
    make check
 to run a series of opensource COBOL test programs (must do!)
 This MUST succeed - If not, please report.

    make install

** NOTE **
   On Linux systems, if you are installing for the
   -first- time, you may need to run "ldconfig" (as root).
   In fact, it does not hurt if you always do this.

** NOTE **
   On some Red Hat (Fedora) installations and
   possibly other Linux distros, /usr/local/lib
   is NOT automatically searched at runtime. 
   Edit /etc/ld.so.conf and add /usr/local/lib to the file.
   Rerun "ldconfig".

You may optionally perform a series of COBOL85 tests.
See tests/cobol85/README
It is recommended that you perform this test.

**************************************

If you think you have a problem or just want to
record the make output, just redirect the output thus :
    make 1>mymake.log 2>&1
    make install 1>myinstall.log 2>&1

**************************************

You can get back to a clean installation status by running :
    make distclean

**************************************

The "make install" will default to "/usr/local" as
the install path. You may override this by specifying
"--prefix=<your install path>" to the "./configure"
command.

***********************************************************

============

The following is only interesting for advanced use.
A normal user should not have recourse to use these
options.

There are the following configure options:

  --with-cc=<cc>		Specify C compiler command used by cobc
				Do not specify this unless you know what
				you are doing!

  --with-db1			Use Berkeley DB 1.85 (libdb1/libdb-1.85)
				This overrides --with-db/--without-db

  --with-db			Use Berkeley DB 3.0 or later (libdb)
				This is the default

  --without-db			Do not use Berkeley DB
				You will not be able to use SORT/indexed I/O

  --with-dl			Use the system dynamic linker instead of ltdl
				This is the default
				(Note on Windows, native loading is used)

  --without-dl			Use ltdl for dynamic program loading

  --with-patch-level=<n>	Set internal patch level to n (default 0)

  --with-varseq=<n>		Define the format for variable length sequential
				files. For values of 0, 1 and 2, four bytes are
				written preceeding each record. The format of
				these four bytes for values of 0, 1, 2 is
				as follows :
				n = 0 (default)
					The first 2 bytes are the record length
					in big-endian order. This is compatible
					with mainframe. Bytes 3 and 4 are set
					to binary 0.
				n = 1
					The 4 bytes are the record length in
					big-endian order.
				n = 2
					The 4 bytes are the record length in
					native machine order (int).
					(This was previously the default)

				For the value of 3, two bytes are written
				preceeding each record :
				n = 3
					The first 2 bytes are the record length
					in big-endian order. The record follows
					immediately after beginning at byte 3.

  --enable-debug		Add '-g' debug option to make

============

============
Development
============

If you wish to hack the opensource COBOL source code, proceed
as follows.

You need to install the following extra packages with specified
minimum version before changing/building opensource COBOL:

For compiling :
  o Bison 1.875
  o Flex 2.5.4

If you reconfigure and/or prepare a distribution
  o Autoconf 2.59
  o Automake 1.9.6
  o Libtool 1.5.24
  o m4 1.4.2
  o Gettext 0.14.1
  o Texinfo 4.6 (For makeinfo)

If you modify top-level configure.ac, Makefile.am in any directory,
or any of the standard OC tests then you will need to
run "autoreconf -I m4" to regenerate the necessary files.

opensource-cobol's People

Contributors

juflux avatar kztanaka avatar n-isaka avatar nor51010 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.