Re: Binary version of Debian

"James B. Byrne via Aubit4gl-discuss" <[email protected]> Thu, 14 Jan 2021 15:41:12 -0500
Newsgroups gmane.comp.lang.4gl.aubit.general
Message-ID <[email protected]>

On Thu, January 14, 2021 15:12, Mike Aubury wrote:
> You're always best off trying to compile from source.
>

I tried that first and I was no more successful with compiling on Debian than I
was on FreeBSd.  Somewhat less so actually.


I created a debian vm to either get the binary to work or the source to compile
aubit4gl for evaluation.  Aubit4GL has to runon FreeBSD eventually to be
considered but for now I need to discover if the language will meet the needs
of the project.

The Binary does not work, and so I tried to compie:

The documentation at
http://aubit4gl.sourceforge.net/aubit4gldoc/manual/index.html contains these
instructions:

a) Make sure you have all the prerequisites listed at the top of this page!

Ncurses is installed;
Postgresql-11 is installed and initialized;
iODBC is installed;
gcc (Debian 8.3.0-6) 8.3.0 is installed

b) If you are getting sources . . .

The test directory and contents were created using: tar -xf
~/Downloads/Aubit4GL/aubit4glsrc.1.5.2.tar.gz

c) Make sure you have iODBC manager . . .

There is no program named odbctest.  A program named iodbc-config produces this:

# iodbc-config
iODBC Configuration Script
iODBC Driver Manager 3.52.9
Copyright (C) 1996-2014 OpenLink Software
Please report all bugs to <[email protected]>

Usage:
        iodbc-config [OPTIONS] [LIBRARIES]

Options:
        [--prefix[=DIR]]
        [--exec-prefix[=DIR]]
        [--version]
        [--libs]
        [--static-libs]
        [--libtool-libs]
        [--cflags]
        [--odbcversion]
        [--odbcini]
        [--odbcinstini]
Libraries:
        iodbc


d) Set your environment. Take a look at 'aubitenv' file in Aubit directory

There is no file named aubitenv provided in the tar archives.  From the
documentation I have done this:

export AUBITDIR=/home/byrnejb_hll/Projects/aubit4glsrc && \
export PATH=$PATH:$AUBITDIR/bin && \
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$AUBITDIR/lib

echo $AUBITDIR $PATH $LD_LIBRARY_PATH
/home/byrnejb_hll/Projects/aubit4glsrc
/home/byrnejb_hll/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/home/byrnejb_hll/Projects/aubit4glsrc/bin
/home/byrnejb_hll/Projects/aubit4glsrc/lib

e) configure your .a4glrc defaults; they are used in the compiling of the
compiler  . . .

I do not have a .a4glrc file provided in the distribution.

f) cd to $AUBITDIR; type 'make'; don't look at all this warnings, they are not
important at the moment.

[aubit4glsrc]$ cd $AUBITDIR
[aubit4glsrc]$ make
/bin/sh: 1: rpm: not found
/bin/sh: 1: rpm: not found
/bin/sh: 1: rpm: not found
/bin/sh: 1: rpm: not found
find: ‘/SRPMS/’: No such file or directory
find: ‘/RPMS/’: No such file or directory
Makefile:40: incl/Makefile-common: No such file or directory
make: *** No rule to make target 'incl/Makefile-common'.  Stop.

I followed the instructions exactly as given and for me they do not work.

If I run ./configure then I get this result:

$ ./configure
checking Aubit version... -1.5.2-
checking cached information... ok

checking for working aclocal-1.4... missing
checking for working automake-1.4... missing
checking for working makeinfo... missing   # requires textinfo package on Deb
checking for bison... no                   # requires bison pkg on Deb
checking for bash... /usr/bin/bash
sh: 0: Illegal option --
configure: WARNING: Your 'sh' executable is NOT the same as 'bash'. This may
cause problems
. . .
WARNING: (5) LIBS contains -ldl
+--------------------------------------------------------------------+
|                        *** WARNING ***                             |
| Will use pre-compiled parser files from tools/no_yacc              |
| Use 'make refresh.noyacc' on source tree with yacc installed.      |
| You will need lex to regenerate the Aubit parsers.                 |
+--------------------------------------------------------------------+
|                        *** WARNING ***                             |
| Will use pre-compiled parser files from tools/no_yacc. Use         |
| 'make refresh.noyacc' on source tree with yacc installed.You will  |
| need Bison 1.875 if you'd want to regenerate the Aubit parsers.    |
+--------------------------------------------------------------------+
|                        *** WARNING ***                             |
| You have specified one or more --with-xxxx=<path> switches to      |
| 'configure' script, specifiying package installed in non-standard  |
| <path> In most cases, you will have to add this path to your PATH  |
| and/or LD_LIBRARY_PATH and/or ld.so.conf in your run-time          |
| environment, for Aubit compilers and compiler programs to be able  |
| to find nedded programs and/or libraries that belong to this way   |
| specified package in non-standard place. We will try to do this    |
| automatically for you:                                             |
/usr/bin/bash: line 0: type: pkg-config: not found
+--------------------------------------------------------------------+
| Adding to /etc/ld.so.conf (if possible) :                          |
|                                                                    |
Paths : /lib /lib/esql  /usr/local/lib
/usr/bin/bash: line 7: /etc/ld.so.conf: Permission denied
+--------------------------------------------------------------------+
|                        ***   NOTE  ***                             |
| One or more optional modules will not be built, because required   |
| libraries or programs where not detected.                          |
| If this computer is connected to the Internet,                     |
|  you should be able to install all of them automaticall by using   |
|  command 'make missing.optional'.                                  |
|                                                                    |
| make targets to install this options are:
. . .
+--------------------------------------------------------------------+
|                          *** NOTE ***                              |
|            Aubit 4gl compiler source code is now configured.       |
|                    Execute 'make' to compile it.                   |
+--------------------------------------------------------------------+

aubit4glsrc]$ make
/usr/bin/bash: line 0: type: pkg-config: not found

+--------------------------------------------------------------------+
| make invoked with flags :
| make invoked in : /home/byrnejb_hll/Projects/aubit4glsrc
| Reading from root makefile variables:
+--------------------- C Compiler settings --------------------------+
| CFLAGS          =  -Wall -Wredundant-decls -Wmissing-declarations
-Wmissing-prototypes -Wstrict-prototypes -g  -fPIC -DPIC -DSRC_TREE -DDEBUG
-DHAVE_CONFIG_H= -I/home/byrnejb_hll/Projects/aubit4glsrc/incl
-I/home/byrnejb_hll/Projects/aubit4glsrc  -fPIC -DPIC
| LD_LIBRARY_PATH =
/home/byrnejb_hll/Projects/aubit4glsrc/lib:/usr/local/lib:/lib::/home/byrnejb_hll/Projects/aubit4glsrc/lib:/lib:/lib/esql
+--------------------------------------------------------------------+
| COMPILEDATE=14-01-2021 AUBITVERSION=1.5 AUBITBUILD=2
| AUBITDIR=/home/byrnejb_hll/Projects/aubit4glsrc OS=x86_64-unknown-linux-gnu
TARGET_OS=linux
| CONFIGURE_COMMAND =
+--------------------------------------------------------------------+
/usr/bin/make -C lib/libaubit4gl api.headers
. . .
screen.yacc:2014:6: warning: variable ‘n’ set but not used
[-Wunused-but-set-variable]
  int n;
      ^
screen.yacc: At top level:
screen.yacc:2421:10: fatal error: lex.a4gl_form_yy.c: No such file or directory
 #include "lex.a4gl_form_yy.c"
          ^~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [<builtin>: y.tab.o] Error 1
make[2]: Leaving directory
'/home/byrnejb_hll/Projects/aubit4glsrc/compilers/fcompile'
make[1]: *** [Makefile:681:
/home/byrnejb_hll/Projects/aubit4glsrc/bin/fcompile] Error 2
make[1]: Leaving directory '/home/byrnejb_hll/Projects/aubit4glsrc/lib'
make: *** [Makefile:285: corecompile] Error 2

I am not familiar with Debian. I installed a vm on FreeBSD to try to evaluate
aubit4gl on a Linux distribution. I Linux thought would be more compatible with
aubit4gl's native environment.  But these errors occurred notwithstanding.

The documentation for this is obviously dated.  I have tried to accommodate
this to the best of my ability but I cannot get things to work.  I got much
further on FreeBSD, where at least I have some idea of where things are.  But,
aubit4gl still does not run there, and evidently it is not going to run on
Debian either without a great deal of work.

So what Linux does the binary run on?

-- 
***          e-Mail is NOT a SECURE channel          ***
        Do NOT transmit sensitive data via e-Mail
   Unencrypted messages have no legal claim to privacy
 Do NOT open attachments nor follow links sent by e-Mail

James B. Byrne                mailto:[email protected]
Harte & Lyne Limited          http://www.harte-lyne.ca
9 Brockley Drive              vox: +1 905 561 1241
Hamilton, Ontario             fax: +1 905 561 0757
Canada  L8E 3C3