Hi,
I'm trying to build Gambit on the current Debian Stable (buster), and am getting stuck on some errors. This is with the following:
uname -v -m -o #1 SMP Debian 4.19.67-2+deb10u2 (2019-11-11) x86_64 GNU/Linux gcc --version gcc (Debian 8.3.0-6) 8.3.0
I did:
git clone https://github.com/gambit/gambit cd gambit ./configure make
and got the following:
[...] gcc -O3 -Wno-unused -Wno-write-strings -Wdisabled-optimization -fwrapv -fno-strict-aliasing -fno-trapping-math -fno-math-errno -fschedule-insns2 -fomit-frame-pointer -fPIC -fno-common -mpc64 -I"../include" -c -o os_files.o -I. -DHAVE_CONFIG_H -D___GAMBITDIR=""/usr/local/Gambit"" -D___GAMBITDIR_USERLIB=""~/.gambit_userlib"" -D___GAMBITDIR_INSTLIB=""~~userlib"" -D___SYS_TYPE_CPU=""x86_64"" -D___SYS_TYPE_VENDOR=""pc"" -D___SYS_TYPE_OS=""linux-gnu"" -D___CONFIGURE_COMMAND=""./configure"" -D___OBJ_EXTENSION="".o"" -D___EXE_EXTENSION="""" -D___BAT_EXTENSION="""" -D___PRIMAL os_files.c -D___LIBRARY os_files.c: In function ‘rename_long_path’: os_files.c:877:36: error: ‘RENAME_NOREPLACE’ undeclared (first use in this function); did you mean ‘MAP_FIXED_NOREPLACE’? if (!replace) flags |= RENAME_NOREPLACE; ^~~~~~~~~~~~~~~~ MAP_FIXED_NOREPLACE os_files.c:877:36: note: each undeclared identifier is reported only once for each function it appears in os_files.c:878:22: warning: implicit declaration of function ‘renameat2’; did you mean ‘renameat’? [-Wimplicit-function-declaration] result = renameat2 (olddir, oldpath2, newdir, newpath2, flags); ^~~~~~~~~ renameat make[1]: *** [makefile:400: os_files.o] Error 1 make[1]: Leaving directory '/home/john/code/gambit/lib' make: *** [makefile:475: all-recursive] Error 1 make 56.11s user 1.54s system 99% cpu 57.724 total
any suggestions regarding how to proceed?
Thanks,
John
Afficher les réponses par date
This issue was fixed yesterday (commit 6f5b2058eeff6b1fbbd2c282d4e040182478da8f) for Ubuntu, and I would expect this to also fix the issue on Debian. Perhaps you made a clone just before the issue was fixed. Could you try again?
It seems that renameat2 is only accessible through “syscall” on Ubuntu and maybe it is the same with Debian: https://stackoverflow.com/questions/41655386/no-renameat2-system-call-functi...
Marc
On Jan 12, 2020, at 4:41 AM, John Magolske listmail@b79.net wrote:
Hi,
I'm trying to build Gambit on the current Debian Stable (buster), and am getting stuck on some errors. This is with the following:
uname -v -m -o #1 SMP Debian 4.19.67-2+deb10u2 (2019-11-11) x86_64 GNU/Linux gcc --version gcc (Debian 8.3.0-6) 8.3.0
I did:
git clone https://github.com/gambit/gambit cd gambit ./configure make
and got the following:
[...] gcc -O3 -Wno-unused -Wno-write-strings -Wdisabled-optimization -fwrapv -fno-strict-aliasing -fno-trapping-math -fno-math-errno -fschedule-insns2 -fomit-frame-pointer -fPIC -fno-common -mpc64 -I"../include" -c -o os_files.o -I. -DHAVE_CONFIG_H -D___GAMBITDIR=""/usr/local/Gambit"" -D___GAMBITDIR_USERLIB=""~/.gambit_userlib"" -D___GAMBITDIR_INSTLIB=""~~userlib"" -D___SYS_TYPE_CPU=""x86_64"" -D___SYS_TYPE_VENDOR=""pc"" -D___SYS_TYPE_OS=""linux-gnu"" -D___CONFIGURE_COMMAND=""./configure"" -D___OBJ_EXTENSION="".o"" -D___EXE_EXTENSION="""" -D___BAT_EXTENSION="""" -D___PRIMAL os_files.c -D___LIBRARY os_files.c: In function ‘rename_long_path’: os_files.c:877:36: error: ‘RENAME_NOREPLACE’ undeclared (first use in this function); did you mean ‘MAP_FIXED_NOREPLACE’? if (!replace) flags |= RENAME_NOREPLACE; ^~~~~~~~~~~~~~~~ MAP_FIXED_NOREPLACE os_files.c:877:36: note: each undeclared identifier is reported only once for each function it appears in os_files.c:878:22: warning: implicit declaration of function ‘renameat2’; did you mean ‘renameat’? [-Wimplicit-function-declaration] result = renameat2 (olddir, oldpath2, newdir, newpath2, flags); ^~~~~~~~~ renameat make[1]: *** [makefile:400: os_files.o] Error 1 make[1]: Leaving directory '/home/john/code/gambit/lib' make: *** [makefile:475: all-recursive] Error 1 make 56.11s user 1.54s system 99% cpu 57.724 total
any suggestions regarding how to proceed?
Thanks,
John
-- John Magolske http://b79.net/contact
Gambit-list mailing list Gambit-list@iro.umontreal.ca https://mailman.iro.umontreal.ca/cgi-bin/mailman/listinfo/gambit-list
Hi,
* Marc Feeley feeley@iro.umontreal.ca [200112 09:39]:
This issue was fixed yesterday (commit 6f5b2058eeff6b1fbbd2c282d4e040182478da8f) for Ubuntu, and I would expect this to also fix the issue on Debian. Perhaps you made a clone just before the issue was fixed. Could you try again?
Yes, that fixed it. After a `git pull` Gambit built without complaint:
cd gambit git pull [...] ./configure --enable-single-host [...] make [...] make modules [...] sudo make install [...] gsi Gambit v4.9.3
>
It seems that renameat2 is only accessible through “syscall” on Ubuntu and maybe it is the same with Debian: https://stackoverflow.com/questions/41655386/no-renameat2-system-call-fu nction-on-ubuntu-16-04
Marc
Thanks,
John