On 2021-10-17, Bram Moolenaar wrote:
> Gary Johnson wrote:
>
> > On 2021-10-17, Dominique Pell=C3=A9 wrote:
> > > Gary Johnson <[email protected]> wrote:
> > >
> > > > I have an older Ubuntu 10.04.4 system that I cannot upgrade for
> > > > various reasons. It's what I can run on that hardware. A recent
> > > > update of Vim failed to build. A git bisect narrowed it down to the
> > > > 8.2.3510 commit. Here is the gcc command that failed.
> > > >
> > > >
> > > > gcc -std=gnu99 -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK -pthread
> > > > -D_REENTRANT -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include
> > > > -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0
> > > > -I/usr/include/gio-unix-2.0/ -I/usr/include/glib-2.0
> > > > -I/usr/lib/glib-2.0/include -I/usr/include/pixman-1
> > > > -I/usr/include/freetype2 -I/usr/include/directfb
> > > > -I/usr/include/libpng12 -g3 -Wno-deprecated-declarations
> > > > -DFEAT_BROWSE -DFEAT_CONCEAL -DFEAT_MOUSE_SGR -DFEAT_VARTABS
> > > > -D_REENTRANT -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 -o
> > > > objects/fileio.o fileio.c
> > > > In file included from vim.h:151,
> > > > from fileio.c:14:
> > > > feature.h:656:1: warning: "FEAT_BROWSE" redefined
> > > > <command-line>: warning: this is the location of the previous definition
> > > > fileio.c: In function ‘time_differs’:
> > > > fileio.c:3130: error: ‘stat_T’ has no member named ‘st_mtim’
> > > > fileio.c: In function ‘buf_store_time’:
> > > > fileio.c:4483: error: ‘stat_T’ has no member named ‘st_mtim’
> > > > fileio.c: In function ‘vim_opentempdir’:
> > > > fileio.c:5033: warning: implicit declaration of function ‘dirfd’
> > > > make[2]: *** [objects/fileio.o] Error 1
> > > > make[2]: Leaving directory `/mnt/home-common/gary/src/vim-new/vim/src'
> > > > make[1]: *** [reconfig] Error 2
> > > > make[1]: Leaving directory `/mnt/home-common/gary/src/vim-new/vim/src'
> > > > make: *** [first] Error 2
> > > >
> > > >
> > > > gcc is (Ubuntu 4.4.3-4ubuntu5.1) 4.4.3.
> > >
> > > That compilation error (st_mtim -> st_mtime) is meant to be fixed
> > > by Vim 8.2.215. Consider posting the compilation error (if any) with
> > > the latest vim 8.2.3531.
> >
> > That's when I first noticed it, is when I updated today to 8.2.3531.
> > Here's the error message from that build.
> >
> >
> > gcc -std=gnu99 -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK -pthread
> > -D_REENTRANT -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include
> > -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0
> > -I/usr/include/gio-unix-2.0/ -I/usr/include/glib-2.0
> > -I/usr/lib/glib-2.0/include -I/usr/include/pixman-1
> > -I/usr/include/freetype2 -I/usr/include/directfb -I/usr/include/libpng12
> > -g3 -Wno-deprecated-declarations -DFEAT_BROWSE -DFEAT_CONCEAL
> > -DFEAT_MOUSE_SGR -DFEAT_VARTABS -D_REENTRANT -U_FORTIFY_SOURCE
> > -D_FORTIFY_SOURCE=1 -o objects/getchar.o getchar.c
> > In file included from vim.h:151,
> > from getchar.c:19:
> > feature.h:656:1: warning: "FEAT_BROWSE" redefined
> > <command-line>: warning: this is the location of the previous definition
> > fileio.c: In function ‘time_differs’:
> > fileio.c:3126: error: ‘stat_T’ has no member named ‘st_mtim’
> > fileio.c: In function ‘buf_store_time’:
> > fileio.c:4484: error: ‘stat_T’ has no member named ‘st_mtim’
> > fileio.c: In function ‘vim_opentempdir’:
> > fileio.c:5034: warning: implicit declaration of function ‘dirfd’
> > make[2]: *** [objects/fileio.o] Error 1
> > make[2]: *** Waiting for unfinished jobs....
> > make[2]: Leaving directory `/mnt/home-common/gary/src/vim-new/vim/src'
> > make[1]: *** [reconfig] Error 2
> > make[1]: Leaving directory `/mnt/home-common/gary/src/vim-new/vim/src'
> > make: *** [first] Error 2
>
> This looks like configure defined ST_MTIM_NSEC to st_mtim.tv_nsec even
> though it does not work. Please check the output of configure, should
> be in src/auto/config.log
I assume that this is the part of config.log you're interested in.
configure:13152: checking for nanoseconds field of struct stat
configure:13180: gcc -std=gnu99 -c -g3 -Wno-deprecated-declarations
-DFEAT_BROWSE -DFEAT_CONCEAL -DFEAT_MOUSE_SGR -DFEAT_VARTABS
-DST_MTIM_NSEC=st_mtim.tv_nsec conftest.c >&5
configure:13180: $? = 0
configure:13188: result: st_mtim.tv_nsec
I can work around the problem by commenting-out this #define in
vim/src/auto/config.h:
/* Define to nanoseconds field of struct stat */
#define ST_MTIM_NSEC st_mtim.tv_nsec
but I haven't worked with configure recently and don't know
immediately how to fix the root problem.
Regards,
Gary
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/vim_dev/20211017214507.GD2946%40phoenix.