Page 1 sur 1
Build error for 1.9-13 on Linux
Publié : mer. juil. 06, 2022 11:55 pm
par Nasser
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
Re: Build error for 1.9-13 on Linux
Publié : jeu. juil. 07, 2022 2:24 am
par Nasser
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
Re: Build error for 1.9-13 on Linux
Publié : jeu. juil. 07, 2022 2:50 am
par Nasser
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
Re: Build error for 1.9-13 on Linux
Publié : jeu. juil. 07, 2022 8:07 am
par parisse
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
Re: Build error for 1.9-13 on Linux
Publié : sam. juil. 09, 2022 3:02 pm
par lukamar
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.
Re: Build error for 1.9-13 on Linux
Publié : jeu. sept. 29, 2022 5:28 pm
par parisse
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.
Re: Build error for 1.9-13 on Linux
Publié : mar. oct. 04, 2022 8:32 am
par dimpase
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
(as we do in Sagemath, see
https://trac.sagemath.org/ticket/31563)
Re: Build error for 1.9-13 on Linux
Publié : mer. oct. 05, 2022 12:00 pm
par fbissey
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.