Build error for 1.9-13 on Linux

Bugs

Modérateur : xcasadmin

Nasser
Messages : 13
Inscription : mer. juil. 11, 2018 11:14 pm

Build error for 1.9-13 on Linux

Message par Nasser » mer. juil. 06, 2022 11:55 pm

I am trying to compile giac 1.9-13 on Linux Manjaro

Code : Tout sélectionner

>uname -a
Linux me-virtualbox 5.15.50-1-MANJARO #1 SMP PREEMPT Sun Jun 26 07:06:30 UTC 2022 x86_64 GNU/Linux
>cat /etc/os-release
NAME="Manjaro Linux"

gcc --version
gcc (GCC) 12.1.0

>which g++
/usr/bin/g++
>g++ --version
g++ (GCC) 12.1.0

I installed everything that is needed. But the build fail on

Code : Tout sélectionner

icas.cc: In function ‘int main(int, char**)’:
icas.cc:1435:9: error: ‘localisation’ is not a member of ‘xcas’
 1435 |   xcas::localisation(); // change by L. Marohnić
      |         ^~~~~~~~~~~~
make[2]: *** [Makefile:800: icas.o] Error 1
make[2]: Leaving directory '/home/me/TMP/giac-1.9.0/src'
make[1]: *** [Makefile:413: all-recursive] Error 1
make[1]: Leaving directory '/home/me/TMP/giac-1.9.0'
make: *** [Makefile:342: all] Error 2
>
I have put the complete build log file here https://12000.org/tmp/07062022/log_buil ... anjaro.txt

Any idea how to correct and if you need additional info?

This is on Latest Linux Manjaro running inside Virtual box.

Download the giac tar file from https://www-fourier.ujf-grenoble.fr/~pa ... in/source/

Thanks
--Nasser

Nasser
Messages : 13
Inscription : mer. juil. 11, 2018 11:14 pm

Re: Build error for 1.9-13 on Linux

Message par Nasser » jeu. juil. 07, 2022 2:24 am

fyi;

Maybe the problem is due to some system issue. Because I downloaod 1.9-11 giac tar file and compiled it, and it gives same error.
Also this time I installed micropython 1.18.1 in case it is needed (I was not sure).

Code : Tout sélectionner

gausspol.h: In function ‘int giac::coeff_type(const std::vector<T_unsigned<gen, U> >&, unsigned int&)’:
gausspol.h:293:18: warning: ISO C++17 does not allow ‘register’ storage class specifier [-Wregister]
  293 |     register int tmp;
      |                  ^~~
icas.cc: In function ‘int main(int, char**)’:
icas.cc:1435:9: error: ‘localisation’ is not a member of ‘xcas’
 1435 |   xcas::localisation(); // change by L. Marohnić
      |         ^~~~~~~~~~~~
make[2]: *** [Makefile:800: icas.o] Error 1
make[2]: Leaving directory '/home/me/TMP/giac-1.9.0/src'
make[1]: *** [Makefile:413: all-recursive] Error 1
make[1]: Leaving directory '/home/me/TMP/giac-1.9.0'
make: *** [Makefile:342: all] Error 2
>

I put the complete log file here https://12000.org/tmp/07062022/log_buil ... anjaro.txt

This is strange because I compiled this OK on Linux ubuntu 22.04 with no error before.

I have no idea now why it fails to compile on Linux Manjaro. Any suggestions what to try?

--Nasser

Nasser
Messages : 13
Inscription : mer. juil. 11, 2018 11:14 pm

Re: Build error for 1.9-13 on Linux

Message par Nasser » jeu. juil. 07, 2022 2:50 am

I ended up using Manjaro Pacman package manager to install giac 1.9-0-11.1 and that worked with no problem.

I have no idea why the manual installation failed. I was hoping to use 1.9-0-13 but can't build it and it is not yet available in the package manager yet.

--Nasser

parisse
Messages : 5731
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: Build error for 1.9-13 on Linux

Message par parisse » jeu. juil. 07, 2022 8:07 am

I don't understand this error, because localisation is defined in Graph.h. Perhaps related to gcc 12?
There is no change in integration code between 1.9.0-11 and 1.9.0-13

lukamar
Messages : 331
Inscription : ven. juin 30, 2017 9:55 am
Localisation : Zagreb, Croatia

Re: Build error for 1.9-13 on Linux

Message par lukamar » sam. juil. 09, 2022 3:02 pm

It's strange that calling fltk_view, which is defined in Xcas1.h, causes no problems and Xcas1.h includes Graph.h.
A fix would be to uncomment the line 21 in global.h, which defines USE_OBJET_BIDON.

parisse
Messages : 5731
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: Build error for 1.9-13 on Linux

Message par parisse » jeu. sept. 29, 2022 5:28 pm

Ok, it's probably happening because HAVE_LIBFLTK is not defined in some configurations. The solution is therefore to move #ifdef HAVE_LIBFLTK before #ifndef USE_OBJET_BIDON in icas.cc.

dimpase
Messages : 26
Inscription : mer. oct. 24, 2018 9:58 am

Re: Build error for 1.9-13 on Linux

Message par dimpase » mar. oct. 04, 2022 8:32 am

I also get this error on gentoo, with 1.9-21. No matter whether I have fltk installed or not (does giac test for it).

I can only get past this error if I use

Code : Tout sélectionner

CPPFLAGS="-DUSE_OBJET_BIDON=1 $CPPFLAGS"
(as we do in Sagemath, see https://trac.sagemath.org/ticket/31563)

fbissey
Messages : 8
Inscription : sam. juin 24, 2017 9:56 pm

Re: Build error for 1.9-13 on Linux

Message par fbissey » mer. oct. 05, 2022 12:00 pm

I came up with the sage work around https://trac.sagemath.org/ticket/31563#comment:95 but I tend to agree with parisse that moving the scope of HAVE_LIBFLTK is probably the right thing to do in the long term. The big issue is that USE_OBJET_BIDON is active in several files (3 if my memory serves me right) and you have to make sure to do the right thing in each of them.

Répondre