gm2
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gm2] Building gm2-9.1.0 under Arch Linux


From: Geert Theloosen
Subject: [Gm2] Building gm2-9.1.0 under Arch Linux
Date: Fri, 10 May 2019 13:34:20 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1

Hi,

In the recent past I succeeded in building gm2 (8.2.0) under Arch Linux, but for me this building was always on a somewhat mysterious way. So I tried building a new gm2-9.1.0-branch, and at the end I succeeded, but on the same somewhat inexplicable way.

Maybe some Arch Linux users can take advantage of the at the end successful build, but for me it's about the hurdles.

After downloading gcc-9.1.0+gm2-git-latest.tar.gz and unpacking it,
I changed the shebang of

../gcc-9.1.0+gm2-git-latest/gm2/gcc-versionno/gcc/gm2/tools-src/def2texi.py

because Arch Linux uses Python-3 as the default and the script assumes Python-2, to:

#!/usr/bin/python2.

Then I used the Debian gcc-8.2.0 build script and changed the version numbering and changed [--enable-languages=c,c++,m2] to [...=c,c++,gm2].
So these are my used commands:

$ mkdir build-9.1.0
$ cd build-9.1.0
$ CXXFLAGS=-g BOOT_CFLAGS=-g CFLAGS=-g \
  ../gcc-9.1.0+gm2-git-latest/gm2/gcc-versionno/configure \
  --prefix=$HOME/opt \
  --libexecdir=$HOME/opt/lib \
  --enable-threads=posix \
  --enable-clocale=gnu --enable-languages=c,c++,gm2 \
  --disable-multilib --disable-bootstrap --enable-checking

After doing

$ make

I got the following error message:
...

python ../../gcc-9.1.0+gm2-git-latest/gm2/gcc-versionno/gcc/gm2/tools-src/def2texi.py -uLibraries -s../../gcc-9.1.0+gm2-git-latest/gm2/gcc-versionno/gcc/gm2 -b/home/geert/Downloads/modula-2/build-9.1.0/gcc/gm2 > /home/geert/Downloads/modula-2/build-9.1.0/gcc/gm2/gm2-libs.texi   File "../../gcc-9.1.0+gm2-git-latest/gm2/gcc-versionno/gcc/gm2/tools-src/def2texi.py", line 62
    print "@node " + l[1] + ", " + next + ", " + previous+ ", " + up
                 ^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print("@node " + l[1] + ", " + next + ", " + previous + ", " + up)? make[2]: *** [../../gcc-9.1.0+gm2-git-latest/gm2/gcc-versionno/gcc/gm2/Make-lang.in:237: gm2/gm2-libs.texi] Fout 1
make[2]: Map '/home/geert/Downloads/modula-2/build-9.1.0/gcc' wordt verlaten
make[1]: *** [Makefile:4354: all-gcc] Fout 2
make[1]: Map '/home/geert/Downloads/modula-2/build-9.1.0' wordt verlaten
make: *** [Makefile:970: all] Fout 2

('Fout' (Dutch) means 'error')

But in a previous step I changed the shebang of def2texi.py. So I can't explain the error message. Or, perhaps because python (under Arch Linux this is python3) is calling python2?

However, just doing a [make] again without changing anything builds everything correctly. How is that possible?

Then, doing a [make install] gives a $HOME/opt directory with the binaries, libraries, etc.

Incidentally, I have once before added to my .bashrc: export GM2_ROOT=/home/geert/opt

Compiling a simple helloworld.mod with a not recognised Modula command ('WritString') with [gm2 -Wall -fmakeall] gives colourized error messages, Correcting the error and again compiling the file gives the expected a.out.

My question: why does the building succeeds after doing [make] twice without correcting anything between the two calls?

Sincerely,
Geert Theloosen






reply via email to

[Prev in Thread] Current Thread [Next in Thread]