You are not logged in.

#1 2025-10-31 11:41:06

quellen
Member
From: Italy
Registered: 2014-05-24
Posts: 342

Need vte-legacy for lxterminal-gtk2

hello,
I accidentally removed the vte-legacy (0.28.2-10) package, and now lxterminal-gtk2 no longer starts:

$ lxterminal 
lxterminal: error while loading shared libraries: libvte.so.9: cannot open shared object file: No such file or directory

I tried reinstalling vte-legacy, but it gives an error:

[...]
/usr/include/gtk-2.0/gtk/gtktooltips.h:73:3: warning: 'GTimeVal' is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]
   73 |   GTimeVal last_popdown;
      |   ^~~~~~~~
In file included from /usr/include/glib-2.0/glib/galloca.h:34,
                 from /usr/include/glib-2.0/glib.h:32,
                 from debug.h:26,
                 from ring.c:23:
/usr/include/glib-2.0/glib/gtypes.h:580:8: note: declared here
  580 | struct _GTimeVal
      |        ^~~~~~~~~
pty.c: In function 'vte_pty_set_size':
pty.c:636:24: warning: variable 'priv' set but not used [-Wunused-but-set-variable]
  636 |         VtePtyPrivate *priv;
      |                        ^~~~
pty.c: In function 'vte_pty_get_size':
pty.c:695:24: warning: variable 'priv' set but not used [-Wunused-but-set-variable]
  695 |         VtePtyPrivate *priv;
      |                        ^~~~
In file included from /usr/lib/glib-2.0/include/glibconfig.h:9,
                 from /usr/include/glib-2.0/glib/gtypes.h:34:
pty.c: In function 'vte_pty_init':
/usr/include/glib-2.0/glib/gmacros.h:1301:33: warning: Deprecated pre-processor symbol: replace with "G_ADD_PRIVATE"
 1301 | #define _GLIB_GNUC_DO_PRAGMA(x) _Pragma(G_STRINGIFY (x))
      |                                 ^~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:1304:3: note: in expansion of macro '_GLIB_GNUC_DO_PRAGMA'
 1304 |   _GLIB_GNUC_DO_PRAGMA(GCC warning G_STRINGIFY (Deprecated pre-processor symbol: replace with #f))
      |   ^~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gobject-visibility.h:584:49: note: in expansion of macro 'GLIB_DEPRECATED_MACRO_FOR'
  584 | #define GOBJECT_DEPRECATED_MACRO_IN_2_58_FOR(f) GLIB_DEPRECATED_MACRO_FOR (f)
      |                                                 ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:688:145: note: in expansion of macro 'GOBJECT_DEPRECATED_MACRO_IN_2_58_FOR'
  688 | stance_get_private ((GTypeInstance*) (instance), (g_type))) GOBJECT_DEPRECATED_MACRO_IN_2_58_FOR(G_ADD_PRIVATE)
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
pty.c:1550:28: note: in expansion of macro 'G_TYPE_INSTANCE_GET_PRIVATE'
 1550 |         priv = pty->priv = G_TYPE_INSTANCE_GET_PRIVATE (pty, VTE_TYPE_PTY, VtePtyPrivate);
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
pty.c: In function 'vte_pty_class_init':
pty.c:1642:9: warning: 'g_type_class_add_private' is deprecated [-Wdeprecated-declarations]
 1642 |         g_type_class_add_private(object_class, sizeof(VtePtyPrivate));
      |         ^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1503:10: note: declared here
 1503 | void     g_type_class_add_private       (gpointer                    g_class,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~
pty.c: In function '__vte_pty_fork':
pty.c:598:29: warning: this statement may fall through [-Wimplicit-fallthrough=]
  598 |                         ret = FALSE;
pty.c:599:17: note: here
  599 |                 case 0: /* child */
      |                 ^~~~
make[3]: Leaving directory '/tmp/vte-legacy/src/vte-0.28.2/src'
make[2]: *** [Makefile:728: all] Error 2
make[2]: Leaving directory '/tmp/vte-legacy/src/vte-0.28.2/src'
make[1]: *** [Makefile:476: all-recursive] Error 1
make[1]: Leaving directory '/tmp/vte-legacy/src/vte-0.28.2'
make: *** [Makefile:381: all] Error 2
==> ERROR: A failure occurred in build().
    Aborting...
 -> error making: vte-legacy-exit status 4
 -> Failed to install the following packages. Manual intervention is required:
vte-legacy - exit status 4

Could someone who still has the vte-legacy package share it with me? Thanks!

Last edited by quellen (2025-10-31 11:42:39)


sorry for my bad english

Offline

#2 2025-10-31 12:04:57

Scimmia
Fellow
Registered: 2012-09-01
Posts: 13,142

Re: Need vte-legacy for lxterminal-gtk2

You need to rebuild lxterminal-gtk2 against the new library, not rebuild/reinstall vte-legacy.

Edit: LOL, maintainer actually switched this package's deps to gtk3! You actually do need vte-legacy, can't help you on the build failure, you didn't post the error. Why do you want the gtk2 version, anyway?

Last edited by Scimmia (2025-10-31 12:16:25)

Offline

#3 2025-10-31 12:27:22

quellen
Member
From: Italy
Registered: 2014-05-24
Posts: 342

Re: Need vte-legacy for lxterminal-gtk2

Scimmia wrote:

can't help you on the build failure, you didn't post the error

$ makepkg -si
==> Making package: vte-legacy 0.28.2-10 (Fri Oct 31 13:21:41 2025)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Found vte-0.28.2.tar.xz
  -> Found make_alt_work.patch
  -> Found scroll_region.patch
  -> Found bracketed_paste_mode_fix.patch
==> Validating source files with sha256sums...
    vte-0.28.2.tar.xz ... Passed
    make_alt_work.patch ... Passed
    scroll_region.patch ... Passed
    bracketed_paste_mode_fix.patch ... Passed
==> Extracting sources...
  -> Extracting vte-0.28.2.tar.xz with bsdtar
bsdtar: Failed to set default locale
==> Starting prepare()...
patching file src/vte.c
Hunk #1 succeeded at 5164 (offset -6 lines).
patch unexpectedly ends in middle of line
patching file src/vte.c
Hunk #1 succeeded at 4057 (offset 195 lines).
Hunk #2 succeeded at 4077 (offset 195 lines).
Hunk #3 succeeded at 4179 (offset 195 lines).
Hunk #4 succeeded at 4191 (offset 195 lines).
Hunk #5 succeeded at 4224 (offset 195 lines).
patching file src/vte-private.h
patching file src/vte.c
Hunk #1 succeeded at 5828 (offset 5 lines).
Hunk #2 succeeded at 14087 (offset -19 lines).
Hunk #3 succeeded at 14122 (offset -19 lines).
patching file src/vteseq.c
==> Removing existing $pkgdir/ directory...
==> Starting build()...
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether to disable maintainer-specific portions of Makefiles... yes
checking which gtk+ version to compile against... 2.0
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking whether gcc and cc understand -c and -o together... yes
checking for a sed that does not truncate output... /usr/bin/sed
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking for a sed that does not truncate output... (cached) /usr/bin/sed
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking whether NLS is requested... yes
checking for intltool >= 0.35.0... 0.51.0 found
checking for intltool-update... /usr/bin/intltool-update
checking for intltool-merge... /usr/bin/intltool-merge
checking for intltool-extract... /usr/bin/intltool-extract
checking for xgettext... /usr/bin/xgettext
checking for msgmerge... /usr/bin/msgmerge
checking for msgfmt... /usr/bin/msgfmt
checking for gmsgfmt... /usr/bin/msgfmt
checking for perl... /usr/bin/perl
checking for perl >= 5.8.1... 5.42.0
checking for XML::Parser... ok
checking locale.h usability... yes
checking locale.h presence... yes
checking for locale.h... yes
checking for LC_MESSAGES... yes
checking libintl.h usability... yes
checking libintl.h presence... yes
checking for libintl.h... yes
checking for ngettext in libc... yes
checking for dgettext in libc... yes
checking for bind_textdomain_codeset... yes
checking for msgfmt... (cached) /usr/bin/msgfmt
checking for dcgettext... yes
checking if msgfmt accepts -c... yes
checking for gmsgfmt... (cached) /usr/bin/msgfmt
checking for xgettext... (cached) /usr/bin/xgettext
checking whether bind_textdomain_codeset is declared... yes
checking for a win32 platform... no
checking for supported warning flags... 
checking whether gcc supports -Wall... yes
checking whether gcc supports -Wextra... yes
checking whether gcc supports -Wsign-compare... yes
checking whether gcc supports -Werror-implicit-function-declaration... yes
checking whether gcc supports -Wpointer-arith... yes
checking whether gcc supports -Wwrite-strings... yes
checking whether gcc supports -Wstrict-prototypes... yes
checking whether gcc supports -Waggregate-return... yes
checking whether gcc supports -Wcast-align... yes
checking whether gcc supports -Wimplicit... yes
checking whether gcc supports -Wuninitialised... no
checking whether gcc supports -Wmissing-prototypes... yes
checking whether gcc supports -Wmissing-declarations... yes
checking whether gcc supports -Wnested-externs... yes
checking whether gcc supports -Wpacked... yes
checking whether gcc supports -Wmissing-format-attribute... yes
checking whether gcc supports -Wshadow... yes
checking whether gcc supports -Wstrict-aliasing=2... yes
checking whether gcc supports -Winit-self... yes
checking whether gcc supports -Wunsafe-loop-optimizations... yes
checking whether gcc supports -Wdeclaration-after-statement... yes
checking whether gcc supports -Wold-style-definition... yes
checking whether gcc supports -Wno-missing-field-initializers... yes
checking whether gcc supports -Wno-unused-parameter... yes
checking whether gcc supports -fno-common... yes
checking whether gcc supports -Wno-switch-enum... yes
checking which warning flags were supported...  -Wall -Wextra -Wsign-compare -Werror-implicit-function-declaration -Wpointer-arith -Wwrite-strings -Wstrict-prototypes -Waggregate-return -Wcast-align -Wimplicit -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wpacked -Wmissing-format-attribute -Wshadow -Wstrict-aliasing=2 -Winit-self -Wunsafe-loop-optimizations -Wdeclaration-after-statement -Wold-style-definition -Wno-missing-field-initializers -Wno-unused-parameter -fno-common -Wno-switch-enum
checking whether gcc supports -Wl,--warn-unresolved-symbols when linking... yes
checking whether gcc supports -Wl,-Bsymbolic-functions when linking... yes
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for GLIB... yes
checking for GTK... yes
checking for glib-genmarshal... /usr/bin/glib-genmarshal
checking for glib-mkenums... /usr/bin/glib-mkenums
checking sys/select.h usability... yes
checking sys/select.h presence... yes
checking for sys/select.h... yes
checking sys/syslimits.h usability... no
checking sys/syslimits.h presence... no
checking for sys/syslimits.h... no
checking sys/termios.h usability... yes
checking sys/termios.h presence... yes
checking for sys/termios.h... yes
checking sys/un.h usability... yes
checking sys/un.h presence... yes
checking for sys/un.h... yes
checking sys/wait.h usability... yes
checking sys/wait.h presence... yes
checking for sys/wait.h... yes
checking stropts.h usability... no
checking stropts.h presence... no
checking for stropts.h... no
checking termios.h usability... yes
checking termios.h presence... yes
checking for termios.h... yes
checking wchar.h usability... yes
checking wchar.h presence... yes
checking for wchar.h... yes
checking whether termios.h defines TIOCGWINSZ... no
checking whether sys/ioctl.h defines TIOCGWINSZ... yes
checking for cfmakeraw... yes
checking for fork... yes
checking for setsid... yes
checking for setpgid... yes
checking for getpgid... yes
checking for getpt... yes
checking for grantpt... yes
checking for unlockpt... yes
checking for ptsname... yes
checking for ptsname_r... yes
checking for tcgetattr... yes
checking for tcsetattr... yes
checking for socket... yes
checking for socketpair... yes
checking for recvmsg... yes
checking for floor... no
checking for floor in -lm... yes
checking for ceil... yes
checking for floor... (cached) no
checking for tgetent... no
checking for tgetent in -lncurses... yes
checking ncurses.h usability... yes
checking ncurses.h presence... yes
checking for ncurses.h... yes
checking term.h usability... yes
checking term.h presence... yes
checking for term.h... yes
checking for GDK target... x11
checking for VTE... yes
checking for wint_t... yes
checking for python version... 2.7
checking for python platform... linux2
checking for python script directory... ${prefix}/lib/python2.7/site-packages
checking for python extension module directory... ${exec_prefix}/lib/python2.7/site-packages
checking for python >= 2.2... okay
checking for headers required to compile python extensions... found
checking for pygtk-2.0... found
checking for PYGTK... yes
checking for pygtk-codegen-2.0... /usr/bin/pygtk-codegen-2.0
checking for pygtk defs... /usr/share/pygtk/2.0/defs
checking whether to install the glade catalogue... no
checking for gobject-introspection... yes
checking for gtkdoc-check... no
checking for gtkdoc-rebase... no
checking for gtkdoc-mkpdf... no
checking whether to build gtk-doc documentation... no
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating src/vteversion.h
config.status: creating termcaps/Makefile
config.status: creating perf/Makefile
config.status: creating python/Makefile
config.status: creating python/pyvte.pc
config.status: creating po/Makefile.in
config.status: creating doc/Makefile
config.status: creating doc/openi18n/Makefile
config.status: creating doc/reference/Makefile
config.status: creating doc/reference/version.xml
config.status: creating glade/Makefile
config.status: creating vte.pc
config.status: creating vte-uninstalled.pc
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands
config.status: executing default-1 commands
config.status: executing po/stamp-it commands

## -------------- ##
## Configuration. ##
## -------------- ##

Configuration for libvte 0.28.2 for gtk+-2.0
	Installing Glade catalogue: no
	Debugging: no
	Disallow deprecated features: 
make  all-recursive
make[1]: Entering directory '/tmp/ooo/LICENSES/vte-legacy/src/vte-0.28.2'
Making all in src
make[2]: Entering directory '/tmp/ooo/LICENSES/vte-legacy/src/vte-0.28.2/src'
make  all-am
make[3]: Entering directory '/tmp/ooo/LICENSES/vte-legacy/src/vte-0.28.2/src'
  CC     libvte_la-reaper.lo
  CC     libvte_la-ring.lo
  CC     libvte_la-trie.lo
  CC     libvte_la-vte.lo
  CC     libvte_la-vteaccess.lo
  CC     libvte_la-vtebg.lo
In file included from /usr/include/glib-2.0/gobject/gbinding.h:31,
                 from /usr/include/glib-2.0/glib-object.h:24,
                 from marshal.h:5,
                 from reaper.c:37:
reaper.c: In function 'vte_reaper_constructor':
/usr/include/glib-2.0/gobject/gobject.h:533:28: error: returning 'VteReaper *' {aka 'struct _VteReaper *'} from a function with incompatible return type 'GObject *' {aka 'struct _GObject *'} [-Wincompatible-pointer-types]
  533 | #define g_object_ref(Obj) ((glib_typeof (Obj)) (g_object_ref) (Obj))
      |                           ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
reaper.c:85:18: note: in expansion of macro 'g_object_ref'
   85 |           return g_object_ref (singleton_reaper);
      |                  ^~~~~~~~~~~~
make[3]: *** [Makefile:1067: libvte_la-reaper.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
trie.c: In function 'char_class_digit_extract':
trie.c:171:9: warning: 'g_value_array_append' is deprecated: Use 'GArray' instead [-Wdeprecated-declarations]
  171 |         g_value_array_append(array, &value);
      |         ^~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/glib-2.0/glib-object.h:38,
                 from trie.c:33:
/usr/include/glib-2.0/gobject/gvaluearray.h:75:17: note: declared here
   75 | GValueArray*    g_value_array_append         (GValueArray       *value_array,
      |                 ^~~~~~~~~~~~~~~~~~~~
trie.c: In function 'char_class_multi_extract':
trie.c:214:25: warning: 'g_value_array_append' is deprecated: Use 'GArray' instead [-Wdeprecated-declarations]
  214 |                         g_value_array_append(array, &value);
      |                         ^~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gvaluearray.h:75:17: note: declared here
   75 | GValueArray*    g_value_array_append         (GValueArray       *value_array,
      |                 ^~~~~~~~~~~~~~~~~~~~
trie.c:222:9: warning: 'g_value_array_append' is deprecated: Use 'GArray' instead [-Wdeprecated-declarations]
  222 |         g_value_array_append(array, &value);
      |         ^~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gvaluearray.h:75:17: note: declared here
   75 | GValueArray*    g_value_array_append         (GValueArray       *value_array,
      |                 ^~~~~~~~~~~~~~~~~~~~
trie.c: In function 'char_class_any_extract':
trie.c:248:9: warning: 'g_value_array_append' is deprecated: Use 'GArray' instead [-Wdeprecated-declarations]
  248 |         g_value_array_append(array, &value);
      |         ^~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gvaluearray.h:75:17: note: declared here
   75 | GValueArray*    g_value_array_append         (GValueArray       *value_array,
      |                 ^~~~~~~~~~~~~~~~~~~~
trie.c: In function 'char_class_string_extract':
trie.c:321:9: warning: 'g_value_array_append' is deprecated: Use 'GArray' instead [-Wdeprecated-declarations]
  321 |         g_value_array_append(array, &value);
      |         ^~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gvaluearray.h:75:17: note: declared here
   75 | GValueArray*    g_value_array_append         (GValueArray       *value_array,
      |                 ^~~~~~~~~~~~~~~~~~~~
trie.c: In function '_vte_trie_matchx':
trie.c:581:33: warning: 'g_value_array_new' is deprecated: Use 'GArray' instead [-Wdeprecated-declarations]
  581 |                                 tmparray = g_value_array_new(0);
      |                                 ^~~~~~~~
/usr/include/glib-2.0/gobject/gvaluearray.h:62:17: note: declared here
   62 | GValueArray*    g_value_array_new            (guint              n_prealloced);
      |                 ^~~~~~~~~~~~~~~~~
trie.c:648:25: warning: 'g_value_array_get_nth' is deprecated: Use 'GArray' instead [-Wdeprecated-declarations]
  648 |                         GValue *value = g_value_array_get_nth(bestarray, i);
      |                         ^~~~~~
/usr/include/glib-2.0/gobject/gvaluearray.h:58:17: note: declared here
   58 | GValue*         g_value_array_get_nth        (GValueArray       *value_array,
      |                 ^~~~~~~~~~~~~~~~~~~~~
trie.c:649:25: warning: 'g_value_array_append' is deprecated: Use 'GArray' instead [-Wdeprecated-declarations]
  649 |                         g_value_array_append(array, value);
      |                         ^~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gvaluearray.h:75:17: note: declared here
   75 | GValueArray*    g_value_array_append         (GValueArray       *value_array,
      |                 ^~~~~~~~~~~~~~~~~~~~
trie.c: In function '_vte_trie_match':
trie.c:686:17: warning: 'g_value_array_new' is deprecated: Use 'GArray' instead [-Wdeprecated-declarations]
  686 |                 valuearray = g_value_array_new(0);
      |                 ^~~~~~~~~~
/usr/include/glib-2.0/gobject/gvaluearray.h:62:17: note: declared here
   62 | GValueArray*    g_value_array_new            (guint              n_prealloced);
      |                 ^~~~~~~~~~~~~~~~~
trie.c:704:33: warning: 'g_value_array_get_nth' is deprecated: Use 'GArray' instead [-Wdeprecated-declarations]
  704 |                                 value = g_value_array_get_nth(valuearray, i);
      |                                 ^~~~~
/usr/include/glib-2.0/gobject/gvaluearray.h:58:17: note: declared here
   58 | GValue*         g_value_array_get_nth        (GValueArray       *value_array,
      |                 ^~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/gtk-2.0/gtk/gtkobject.h:37,
                 from /usr/include/gtk-2.0/gtk/gtkwidget.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkcontainer.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkbin.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkwindow.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkdialog.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkaboutdialog.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:33,
                 from vte.h:25,
                 from ring.h:27,
                 from ring.c:24:
/usr/include/gtk-2.0/gtk/gtktypeutils.h:236:1: warning: 'GTypeDebugFlags' is deprecated [-Wdeprecated-declarations]
  236 | void            gtk_type_init   (GTypeDebugFlags    debug_flags);
      | ^~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:31,
                 from /usr/include/glib-2.0/glib-object.h:24,
                 from /usr/include/glib-2.0/gio/gioenums.h:30,
                 from /usr/include/glib-2.0/gio/giotypes.h:30,
                 from /usr/include/glib-2.0/gio/gio.h:28,
                 from ring.h:26:
/usr/include/glib-2.0/gobject/gtype.h:725:1: note: declared here
  725 | {
      | ^
In file included from /usr/include/gtk-2.0/gtk/gtkobject.h:37,
                 from /usr/include/gtk-2.0/gtk/gtkwidget.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkcontainer.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkbin.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkwindow.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkdialog.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkaboutdialog.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:33,
                 from vtebg.c:23:
/usr/include/gtk-2.0/gtk/gtktypeutils.h:236:1: warning: 'GTypeDebugFlags' is deprecated [-Wdeprecated-declarations]
  236 | void            gtk_type_init   (GTypeDebugFlags    debug_flags);
      | ^~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:31,
                 from /usr/include/glib-2.0/glib-object.h:24,
                 from /usr/include/glib-2.0/gio/gioenums.h:30,
                 from /usr/include/glib-2.0/gio/giotypes.h:30,
                 from /usr/include/glib-2.0/gio/gio.h:28,
                 from /usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h:30,
                 from /usr/include/gtk-2.0/gdk/gdk.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:32:
/usr/include/glib-2.0/gobject/gtype.h:725:1: note: declared here
  725 | {
      | ^
In file included from /usr/include/gtk-2.0/gtk/gtkobject.h:37,
                 from /usr/include/gtk-2.0/gtk/gtkwidget.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkcontainer.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkbin.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkwindow.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkdialog.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkaboutdialog.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:33,
                 from vteaccess.c:30:
/usr/include/gtk-2.0/gtk/gtktypeutils.h:236:1: warning: 'GTypeDebugFlags' is deprecated [-Wdeprecated-declarations]
  236 | void            gtk_type_init   (GTypeDebugFlags    debug_flags);
      | ^~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:31,
                 from /usr/include/glib-2.0/glib-object.h:24,
                 from /usr/include/atk-1.0/atk/atk-enum-types.h:12,
                 from /usr/include/atk-1.0/atk/atk.h:24,
                 from vteaccess.c:29:
/usr/include/glib-2.0/gobject/gtype.h:725:1: note: declared here
  725 | {
      | ^
In file included from /usr/include/gtk-2.0/gtk/gtkobject.h:37,
                 from /usr/include/gtk-2.0/gtk/gtkwidget.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkcontainer.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkbin.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkwindow.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkdialog.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkaboutdialog.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:33,
                 from vte.h:25,
                 from vte.c:31:
/usr/include/gtk-2.0/gtk/gtktypeutils.h:236:1: warning: 'GTypeDebugFlags' is deprecated [-Wdeprecated-declarations]
  236 | void            gtk_type_init   (GTypeDebugFlags    debug_flags);
      | ^~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:31,
                 from /usr/include/glib-2.0/glib-object.h:24,
                 from /usr/include/glib-2.0/gio/gioenums.h:30,
                 from /usr/include/glib-2.0/gio/giotypes.h:30,
                 from /usr/include/glib-2.0/gio/gio.h:28,
                 from vte.h:23:
/usr/include/glib-2.0/gobject/gtype.h:725:1: note: declared here
  725 | {
      | ^
In file included from /usr/include/gtk-2.0/gtk/gtktoolitem.h:31,
                 from /usr/include/gtk-2.0/gtk/gtktoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtk.h:126:
/usr/include/gtk-2.0/gtk/gtktooltips.h:73:3: warning: 'GTimeVal' is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]
   73 |   GTimeVal last_popdown;
      |   ^~~~~~~~
In file included from /usr/include/glib-2.0/glib/galloca.h:34,
                 from /usr/include/glib-2.0/glib.h:32,
                 from debug.h:26,
                 from ring.c:23:
/usr/include/glib-2.0/glib/gtypes.h:580:8: note: declared here
  580 | struct _GTimeVal
      |        ^~~~~~~~~
In file included from /usr/include/gtk-2.0/gtk/gtktoolitem.h:31,
                 from /usr/include/gtk-2.0/gtk/gtktoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtk.h:126:
/usr/include/gtk-2.0/gtk/gtktooltips.h:73:3: warning: 'GTimeVal' is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]
   73 |   GTimeVal last_popdown;
      |   ^~~~~~~~
In file included from /usr/include/glib-2.0/glib/galloca.h:34,
                 from /usr/include/glib-2.0/glib.h:32,
                 from /usr/include/glib-2.0/gobject/gbinding.h:30:
/usr/include/glib-2.0/glib/gtypes.h:580:8: note: declared here
  580 | struct _GTimeVal
      |        ^~~~~~~~~
In file included from /usr/include/gtk-2.0/gtk/gtktoolitem.h:31,
                 from /usr/include/gtk-2.0/gtk/gtktoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtk.h:126:
/usr/include/gtk-2.0/gtk/gtktooltips.h:73:3: warning: 'GTimeVal' is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]
   73 |   GTimeVal last_popdown;
      |   ^~~~~~~~
In file included from /usr/include/glib-2.0/glib/galloca.h:34,
                 from /usr/include/glib-2.0/glib.h:32,
                 from /usr/include/atk-1.0/atk/atkversion.h:31,
                 from /usr/include/atk-1.0/atk/atk-enum-types.h:11:
/usr/include/glib-2.0/glib/gtypes.h:580:8: note: declared here
  580 | struct _GTimeVal
      |        ^~~~~~~~~
In file included from /usr/include/gtk-2.0/gtk/gtktoolitem.h:31,
                 from /usr/include/gtk-2.0/gtk/gtktoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtk.h:126:
/usr/include/gtk-2.0/gtk/gtktooltips.h:73:3: warning: 'GTimeVal' is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]
   73 |   GTimeVal last_popdown;
      |   ^~~~~~~~
In file included from /usr/include/glib-2.0/glib/galloca.h:34,
                 from /usr/include/glib-2.0/glib.h:32,
                 from vte.h:22:
/usr/include/glib-2.0/glib/gtypes.h:580:8: note: declared here
  580 | struct _GTimeVal
      |        ^~~~~~~~~
vtebg.c: In function 'vte_bg_finalize':
vtebg.c:182:37: warning: cast between incompatible function types from 'void (*)(VteBgCacheItem *)' to 'void (*)(void *, void *)' [-Wcast-function-type]
  182 |         g_list_foreach (pvt->cache, (GFunc)vte_bg_cache_item_free, NULL);
      |                                     ^
vtebg.c: In function 'vte_bg_class_init':
vtebg.c:203:9: warning: 'g_type_class_add_private' is deprecated [-Wdeprecated-declarations]
  203 |         g_type_class_add_private(klass, sizeof (VteBgPrivate));
      |         ^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1503:10: note: declared here
 1503 | void     g_type_class_add_private       (gpointer                    g_class,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/lib/glib-2.0/include/glibconfig.h:9,
                 from /usr/include/glib-2.0/glib/gtypes.h:34:
vtebg.c: In function 'vte_bg_init':
/usr/include/glib-2.0/glib/gmacros.h:1301:33: warning: Deprecated pre-processor symbol: replace with "G_ADD_PRIVATE"
 1301 | #define _GLIB_GNUC_DO_PRAGMA(x) _Pragma(G_STRINGIFY (x))
      |                                 ^~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:1304:3: note: in expansion of macro '_GLIB_GNUC_DO_PRAGMA'
 1304 |   _GLIB_GNUC_DO_PRAGMA(GCC warning G_STRINGIFY (Deprecated pre-processor symbol: replace with #f))
      |   ^~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gobject-visibility.h:584:49: note: in expansion of macro 'GLIB_DEPRECATED_MACRO_FOR'
  584 | #define GOBJECT_DEPRECATED_MACRO_IN_2_58_FOR(f) GLIB_DEPRECATED_MACRO_FOR (f)
      |                                                 ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:688:145: note: in expansion of macro 'GOBJECT_DEPRECATED_MACRO_IN_2_58_FOR'
  688 | #define G_TYPE_INSTANCE_GET_PRIVATE(instance, g_type, c_type)   ((c_type*) g_type_instance_get_private ((GTypeInstance*) (instance), (g_type))) GOBJECT_DEPRECATED_MACRO_IN_2_58_FOR(G_ADD_PRIVATE)
      |                                                                                                                                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vtebg.c:209:19: note: in expansion of macro 'G_TYPE_INSTANCE_GET_PRIVATE'
  209 |         bg->pvt = G_TYPE_INSTANCE_GET_PRIVATE (bg, VTE_TYPE_BG, VteBgPrivate);
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
vteaccess.c: In function 'vte_terminal_accessible_get_character_at_offset':
vteaccess.c:1302:13: warning: variable 'mapped' set but not used [-Wunused-but-set-variable]
 1302 |         int mapped;
      |             ^~~~~~
vteaccess.c: In function 'vte_terminal_accessible_get_character_extents':
vteaccess.c:1443:9: warning: 'atk_component_get_position' is deprecated: Use 'atk_component_get_extents' instead [-Wdeprecated-declarations]
 1443 |         atk_component_get_position (ATK_COMPONENT (text), &base_x, &base_y, coords);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/atk-1.0/atk/atk.h:26:
/usr/include/atk-1.0/atk/atkcomponent.h:249:6: note: declared here
  249 | void atk_component_get_position (AtkComponent *component,
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
vteaccess.c: In function 'vte_terminal_accessible_get_offset_at_point':
vteaccess.c:1487:9: warning: 'atk_component_get_position' is deprecated: Use 'atk_component_get_extents' instead [-Wdeprecated-declarations]
 1487 |         atk_component_get_position (ATK_COMPONENT (text), &base_x, &base_y, coords);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/atk-1.0/atk/atkcomponent.h:249:6: note: declared here
  249 | void atk_component_get_position (AtkComponent *component,
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
vteaccess.c: In function 'vte_terminal_accessible_get_extents':
vteaccess.c:1701:9: warning: 'atk_component_get_position' is deprecated: Use 'atk_component_get_extents' instead [-Wdeprecated-declarations]
 1701 |         atk_component_get_position(component, x, y, coord_type);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/atk-1.0/atk/atkcomponent.h:249:6: note: declared here
  249 | void atk_component_get_position (AtkComponent *component,
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
vteaccess.c:1702:9: warning: 'atk_component_get_size' is deprecated: Use 'atk_component_get_extents' instead [-Wdeprecated-declarations]
 1702 |         atk_component_get_size(component, width, height);
      |         ^~~~~~~~~~~~~~~~~~~~~~
/usr/include/atk-1.0/atk/atkcomponent.h:254:6: note: declared here
  254 | void atk_component_get_size (AtkComponent *component,
      |      ^~~~~~~~~~~~~~~~~~~~~~
vteaccess.c: In function 'vte_terminal_accessible_get_type':
vteaccess.c:2027:25: warning: cast between incompatible function types from 'void (*)(void **)' to 'void (*)(void *, void *)' [-Wcast-function-type]
 2027 |                         (GClassInitFunc)vte_terminal_accessible_class_init,
      |                         ^
In file included from /usr/include/glib-2.0/glib/giochannel.h:36,
                 from /usr/include/glib-2.0/glib.h:56:
vteaccess.c: In function 'vte_terminal_accessible_update_private_data_if_needed':
/usr/include/glib-2.0/glib/gstring.h:78:5: warning: ignoring return value of 'g_string_free_and_steal' declared with attribute 'warn_unused_result' [-Wunused-result]
   74 |   (__builtin_constant_p (free_segment) ?        \
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   75 |     ((free_segment) ?                           \
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   76 |       (g_string_free) ((str), (free_segment)) : \
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   77 |       g_string_free_and_steal (str))            \
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   78 |     :                                           \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   79 |     (g_string_free) ((str), (free_segment)))
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vteaccess.c:292:33: note: in expansion of macro 'g_string_free'
  292 |                                 g_string_free(priv->snapshot_text, FALSE);
      |                                 ^~~~~~~~~~~~~
vte.c: In function 'vte_terminal_pty_new':
vte.c:3592:29: warning: variable 'pvt' set but not used [-Wunused-but-set-variable]
 3592 |         VteTerminalPrivate *pvt;
      |                             ^~~
In file included from /usr/lib/glib-2.0/include/glibconfig.h:9,
                 from /usr/include/glib-2.0/glib/gtypes.h:34:
vte.c: In function 'vte_terminal_process_incoming':
/usr/include/glib-2.0/glib/gmacros.h:1301:33: warning: Deprecated pre-processor symbol: replace with "memmove"
 1301 | #define _GLIB_GNUC_DO_PRAGMA(x) _Pragma(G_STRINGIFY (x))
      |                                 ^~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:1304:3: note: in expansion of macro '_GLIB_GNUC_DO_PRAGMA'
 1304 |   _GLIB_GNUC_DO_PRAGMA(GCC warning G_STRINGIFY (Deprecated pre-processor symbol: replace with #f))
      |   ^~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/glib-visibility.h:278:46: note: in expansion of macro 'GLIB_DEPRECATED_MACRO_FOR'
  278 | #define GLIB_DEPRECATED_MACRO_IN_2_40_FOR(f) GLIB_DEPRECATED_MACRO_FOR (f)
      |                                              ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/gutils.h:315:64: note: in expansion of macro 'GLIB_DEPRECATED_MACRO_IN_2_40_FOR'
  315 |   G_STMT_START { memmove ((dest), (src), (len)); } G_STMT_END  GLIB_DEPRECATED_MACRO_IN_2_40_FOR(memmove)
      |                                                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vte.c:4103:25: note: in expansion of macro 'g_memmove'
 4103 |                         g_memmove (chunk->data, chunk->data + processed,
      |                         ^~~~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:1301:33: warning: Deprecated pre-processor symbol: replace with "memmove"
 1301 | #define _GLIB_GNUC_DO_PRAGMA(x) _Pragma(G_STRINGIFY (x))
      |                                 ^~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:1304:3: note: in expansion of macro '_GLIB_GNUC_DO_PRAGMA'
 1304 |   _GLIB_GNUC_DO_PRAGMA(GCC warning G_STRINGIFY (Deprecated pre-processor symbol: replace with #f))
      |   ^~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/glib-visibility.h:278:46: note: in expansion of macro 'GLIB_DEPRECATED_MACRO_FOR'
  278 | #define GLIB_DEPRECATED_MACRO_IN_2_40_FOR(f) GLIB_DEPRECATED_MACRO_FOR (f)
      |                                              ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/gutils.h:315:64: note: in expansion of macro 'GLIB_DEPRECATED_MACRO_IN_2_40_FOR'
  315 |   G_STMT_START { memmove ((dest), (src), (len)); } G_STMT_END  GLIB_DEPRECATED_MACRO_IN_2_40_FOR(memmove)
      |                                                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vte.c:4122:41: note: in expansion of macro 'g_memmove'
 4122 |                                         g_memmove (next_chunk->data,
      |                                         ^~~~~~~~~
vte.c: In function 'vte_terminal_get_text_range_maybe_wrapped':
vte.c:6302:20: warning: variable 'screen' set but not used [-Wunused-but-set-variable]
 6302 |         VteScreen *screen;
      |                    ^~~~~~
vte.c: In function 'vte_terminal_set_emulation':
vte.c:8166:29: warning: variable 'pvt' set but not used [-Wunused-but-set-variable]
 8166 |         VteTerminalPrivate *pvt;
      |                             ^~~
vte.c: In function 'vte_terminal_init':
/usr/include/glib-2.0/glib/gmacros.h:1301:33: warning: Deprecated pre-processor symbol: replace with "G_ADD_PRIVATE"
 1301 | #define _GLIB_GNUC_DO_PRAGMA(x) _Pragma(G_STRINGIFY (x))
      |                                 ^~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:1304:3: note: in expansion of macro '_GLIB_GNUC_DO_PRAGMA'
 1304 |   _GLIB_GNUC_DO_PRAGMA(GCC warning G_STRINGIFY (Deprecated pre-processor symbol: replace with #f))
      |   ^~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gobject-visibility.h:584:49: note: in expansion of macro 'GLIB_DEPRECATED_MACRO_FOR'
  584 | #define GOBJECT_DEPRECATED_MACRO_IN_2_58_FOR(f) GLIB_DEPRECATED_MACRO_FOR (f)
      |                                                 ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:688:145: note: in expansion of macro 'GOBJECT_DEPRECATED_MACRO_IN_2_58_FOR'
  688 | #define G_TYPE_INSTANCE_GET_PRIVATE(instance, g_type, c_type)   ((c_type*) g_type_instance_get_private ((GTypeInstance*) (instance), (g_type))) GOBJECT_DEPRECATED_MACRO_IN_2_58_FOR(G_ADD_PRIVATE)
      |                                                                                                                                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vte.c:8355:31: note: in expansion of macro 'G_TYPE_INSTANCE_GET_PRIVATE'
 8355 |         pvt = terminal->pvt = G_TYPE_INSTANCE_GET_PRIVATE (terminal, VTE_TYPE_TERMINAL, VteTerminalPrivate);
      |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~
vte.c: In function 'vte_terminal_draw_cells':
vte.c:10162:22: warning: variable 'ascent' set but not used [-Wunused-but-set-variable]
10162 |         int i, x, y, ascent;
      |                      ^~~~~~
vte.c: In function 'vte_terminal_draw_rows':
vte.c:10539:15: warning: variable 'delta' set but not used [-Wunused-but-set-variable]
10539 |         glong delta;
      |               ^~~~~
vte.c: In function 'vte_terminal_expand_region':
vte.c:10863:20: warning: variable 'screen' set but not used [-Wunused-but-set-variable]
10863 |         VteScreen *screen;
      |                    ^~~~~~
vte.c: In function 'vte_terminal_paint_im_preedit_string':
vte.c:11103:37: warning: variable 'descent' set but not used [-Wunused-but-set-variable]
11103 |         long width, height, ascent, descent, delta;
      |                                     ^~~~~~~
vte.c:11103:29: warning: variable 'ascent' set but not used [-Wunused-but-set-variable]
11103 |         long width, height, ascent, descent, delta;
      |                             ^~~~~~
vte.c:11102:18: warning: variable 'drow' set but not used [-Wunused-but-set-variable]
11102 |         int row, drow, col, columns;
      |                  ^~~~
vte.c: In function 'vte_terminal_get_accessible':
vte.c:11480:22: warning: variable 'terminal' set but not used [-Wunused-but-set-variable]
11480 |         VteTerminal *terminal;
      |                      ^~~~~~~~
vte.c: In function 'vte_terminal_class_init':
vte.c:11774:9: warning: 'g_type_class_add_private' is deprecated [-Wdeprecated-declarations]
11774 |         g_type_class_add_private(klass, sizeof (VteTerminalPrivate));
      |         ^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1503:10: note: declared here
 1503 | void     g_type_class_add_private       (gpointer                    g_class,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~
vte.c: In function 'vte_terminal_reset':
vte.c:14110:30: warning: argument to 'sizeof' in 'memset' call is the same expression as the destination; did you mean to remove the addressof? [-Wsizeof-pointer-memaccess]
14110 |                        sizeof(&pvt->selection_origin));
      |                              ^
vte.c:14112:30: warning: argument to 'sizeof' in 'memset' call is the same expression as the destination; did you mean to remove the addressof? [-Wsizeof-pointer-memaccess]
14112 |                        sizeof(&pvt->selection_last));
      |                              ^
vte.c:14114:30: warning: argument to 'sizeof' in 'memset' call is the same expression as the destination; did you mean to remove the addressof? [-Wsizeof-pointer-memaccess]
14114 |                        sizeof(&pvt->selection_start));
      |                              ^
vte.c:14116:30: warning: argument to 'sizeof' in 'memset' call is the same expression as the destination; did you mean to remove the addressof? [-Wsizeof-pointer-memaccess]
14116 |                        sizeof(&pvt->selection_end));
      |                              ^
vte.c: In function 'reset_update_regions':
vte.c:14630:33: warning: cast between incompatible function types from 'void (*)(GdkRegion *)' {aka 'void (*)(struct _GdkRegion *)'} to 'void (*)(void *, void *)' [-Wcast-function-type]
14630 |                                 (GFunc)gdk_region_destroy, NULL);
      |                                 ^
make[3]: Leaving directory '/tmp/ooo/LICENSES/vte-legacy/src/vte-0.28.2/src'
make[2]: *** [Makefile:728: all] Error 2
make[2]: Leaving directory '/tmp/ooo/LICENSES/vte-legacy/src/vte-0.28.2/src'
make[1]: *** [Makefile:476: all-recursive] Error 1
make[1]: Leaving directory '/tmp/ooo/LICENSES/vte-legacy/src/vte-0.28.2'
make: *** [Makefile:381: all] Error 2
==> ERROR: A failure occurred in build().
    Aborting...
Scimmia wrote:

Why do you want the gtk2 version, anyway?

For aesthetic reasons, I don’t like the GTK3 scrollbar.
Is there any way to install LXTerminal with GTK2? I tried editing the LXTerminal PKGBUILD and commenting out the 'enable-gtk3' line, but the build fails:

# Maintainer: Balló György <ballogyor+arch at gmail dot com>
# Contributor: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor: Angel Velasquez <angvp@archlinux.org> 
# Contributor: Geoffroy Carrier <geoffroy.carrier@koon.fr>

pkgname=lxterminal
pkgver=0.4.1
pkgrel=2
pkgdesc='VTE-based terminal emulator (part of LXDE)'
arch=(x86_64)
url='https://github.com/lxde/lxterminal'
license=(GPL-2.0-or-later)
groups=(lxde)
depends=(
  gdk-pixbuf2
  glib2
  glibc
  gtk3
  hicolor-icon-theme
  libx11
  pango
  vte3
)
makedepends=(
  git
  intltool
)
conflicts=(lxterminal-gtk3)
replaces=(lxterminal-gtk3)
source=(
  "git+https://github.com/lxde/lxterminal.git#tag=$pkgver"
  lxterminal.appdata.xml
  lxterminal-transient-dialog.patch
  lxterminal-fix-crash-on-close.patch
)
b2sums=(
  6c44a19ef2a00593773efe7c1a7259e9a25c47de4cb7b623fd7ddeb65ce5e03bc5d09d48690155ac812dc7beb878e0ce21f986cf67ef57191f707d7dd5abcba2
  049f5cb1d453d6d59f2e71be245432938778554c7d3dab7cfbf1ee2a8031634681b79367e7f9080fae1a26d7974bd9d6b91a49f100c6b862dc6967d1e29e62f4
  12a0f6800cd67bc75a9ffb7bf05bc60749d16e62e52bd3947287c5ee214c7865d4fba935ae8d368917570738d56a14adc1f6f7eb85139ee7863c370dbb3e87c6
  e0b3c2e9a236eed007d2d95a58c78d97f045914abebe40c41cfb6624183ae0c9aaeae8defa42dc4e8443d395688b03cacb3b126f06a4c11c3de4e86c582b1237
)

prepare() {
  cd $pkgname

  # https://github.com/lxde/lxterminal/pull/133
  git apply -3 ../lxterminal-transient-dialog.patch

  # https://github.com/lxde/lxterminal/pull/135
  git cherry-pick -n 3fa3a935bdacbcedccf51bea4b8b3c0a396b10ee
  git apply -3 ../lxterminal-fix-crash-on-close.patch

  autoreconf -fi
}

build() {
  cd $pkgname
  ./configure \
    --prefix=/usr \
    --sysconfdir=/etc \
    --localstatedir=/var \
#    --enable-gtk3
  make
}

package() {
  cd $pkgname
  make DESTDIR="$pkgdir" install
  install -Dm644 ../$pkgname.appdata.xml "$pkgdir/usr/share/metainfo/$pkgname.appdata.xml"
}
$ makepkg -si
==> Making package: lxterminal 0.4.1-2 (Fri Oct 31 13:26:53 2025)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Updating lxterminal git repo...
  -> Found lxterminal.appdata.xml
  -> Found lxterminal-transient-dialog.patch
  -> Found lxterminal-fix-crash-on-close.patch
==> Validating source files with b2sums...
    lxterminal ... Passed
    lxterminal.appdata.xml ... Passed
    lxterminal-transient-dialog.patch ... Passed
    lxterminal-fix-crash-on-close.patch ... Passed
==> Extracting sources...
  -> Creating working copy of lxterminal git repo...
Reset branch 'makepkg'
==> Starting prepare()...
Applied patch to 'src/lxterminal.c' cleanly.
Auto-merging src/lxterminal.c
Applied patch to 'src/lxterminal.c' cleanly.
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_CTYPE = (unset),
	LC_NUMERIC = (unset),
	LC_COLLATE = (unset),
	LC_TIME = (unset),
	LC_MESSAGES = (unset),
	LC_MONETARY = (unset),
	LC_ADDRESS = (unset),
	LC_IDENTIFICATION = (unset),
	LC_MEASUREMENT = (unset),
	LC_PAPER = (unset),
	LC_TELEPHONE = (unset),
	LC_NAME = (unset),
	LANG = "EN"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_CTYPE = (unset),
	LC_NUMERIC = (unset),
	LC_COLLATE = (unset),
	LC_TIME = (unset),
	LC_MESSAGES = (unset),
	LC_MONETARY = (unset),
	LC_ADDRESS = (unset),
	LC_IDENTIFICATION = (unset),
	LC_MEASUREMENT = (unset),
	LC_PAPER = (unset),
	LC_TELEPHONE = (unset),
	LC_NAME = (unset),
	LANG = "EN"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_CTYPE = (unset),
	LC_NUMERIC = (unset),
	LC_COLLATE = (unset),
	LC_TIME = (unset),
	LC_MESSAGES = (unset),
	LC_MONETARY = (unset),
	LC_ADDRESS = (unset),
	LC_IDENTIFICATION = (unset),
	LC_MEASUREMENT = (unset),
	LC_PAPER = (unset),
	LC_TELEPHONE = (unset),
	LC_NAME = (unset),
	LANG = "EN"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_CTYPE = (unset),
	LC_NUMERIC = (unset),
	LC_COLLATE = (unset),
	LC_TIME = (unset),
	LC_MESSAGES = (unset),
	LC_MONETARY = (unset),
	LC_ADDRESS = (unset),
	LC_IDENTIFICATION = (unset),
	LC_MEASUREMENT = (unset),
	LC_PAPER = (unset),
	LC_TELEPHONE = (unset),
	LC_NAME = (unset),
	LANG = "EN"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_CTYPE = (unset),
	LC_NUMERIC = (unset),
	LC_COLLATE = (unset),
	LC_TIME = (unset),
	LC_MESSAGES = (unset),
	LC_MONETARY = (unset),
	LC_ADDRESS = (unset),
	LC_IDENTIFICATION = (unset),
	LC_MEASUREMENT = (unset),
	LC_PAPER = (unset),
	LC_TELEPHONE = (unset),
	LC_NAME = (unset),
	LANG = "EN"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_CTYPE = (unset),
	LC_NUMERIC = (unset),
	LC_COLLATE = (unset),
	LC_TIME = (unset),
	LC_MESSAGES = (unset),
	LC_MONETARY = (unset),
	LC_ADDRESS = (unset),
	LC_IDENTIFICATION = (unset),
	LC_MEASUREMENT = (unset),
	LC_PAPER = (unset),
	LC_TELEPHONE = (unset),
	LC_NAME = (unset),
	LANG = "EN"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_CTYPE = (unset),
	LC_NUMERIC = (unset),
	LC_COLLATE = (unset),
	LC_TIME = (unset),
	LC_MESSAGES = (unset),
	LC_MONETARY = (unset),
	LC_ADDRESS = (unset),
	LC_IDENTIFICATION = (unset),
	LC_MEASUREMENT = (unset),
	LC_PAPER = (unset),
	LC_TELEPHONE = (unset),
	LC_NAME = (unset),
	LANG = "EN"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
configure.ac:3: warning: 'AM_CONFIG_HEADER': this macro is obsolete.
configure.ac:3: You should use the 'AC_CONFIG_HEADERS' macro instead.
aclocal.m4:1806: AM_CONFIG_HEADER is expanded from...
configure.ac:3: the top level
configure.ac:10: warning: The macro 'AC_PROG_INTLTOOL' is obsolete.
configure.ac:10: You should run autoupdate.
aclocal.m4:695: AC_PROG_INTLTOOL is expanded from...
configure.ac:10: the top level
configure.ac:13: warning: The macro 'AC_ISC_POSIX' is obsolete.
configure.ac:13: You should run autoupdate.
./lib/autoconf/specific.m4:732: AC_ISC_POSIX is expanded from...
configure.ac:13: the top level
configure.ac:18: warning: The macro 'AC_HEADER_STDC' is obsolete.
configure.ac:18: You should run autoupdate.
./lib/autoconf/headers.m4:663: AC_HEADER_STDC is expanded from...
configure.ac:18: the top level
configure.ac:21: warning: The macro 'AC_HELP_STRING' is obsolete.
configure.ac:21: You should run autoupdate.
./lib/autoconf/general.m4:204: AC_HELP_STRING is expanded from...
./lib/autoconf/general.m4:1534: AC_ARG_ENABLE is expanded from...
configure.ac:21: the top level
configure.ac:28: warning: The macro 'AC_HELP_STRING' is obsolete.
configure.ac:28: You should run autoupdate.
./lib/autoconf/general.m4:204: AC_HELP_STRING is expanded from...
./lib/autoconf/general.m4:1534: AC_ARG_ENABLE is expanded from...
configure.ac:28: the top level
configure.ac:36: warning: The macro 'AC_HELP_STRING' is obsolete.
configure.ac:36: You should run autoupdate.
./lib/autoconf/general.m4:204: AC_HELP_STRING is expanded from...
configure.ac:36: the top level
configure.ac:90: warning: The macro 'GLIB_GNU_GETTEXT' is obsolete.
configure.ac:90: You should run autoupdate.
aclocal.m4:388: GLIB_GNU_GETTEXT is expanded from...
aclocal.m4:488: AM_GLIB_GNU_GETTEXT is expanded from...
configure.ac:90: the top level
configure.ac:90: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.ac:90: You should run autoupdate.
./lib/autoconf/general.m4:2918: AC_TRY_LINK is expanded from...
lib/m4sugar/m4sh.m4:690: _AS_IF_ELSE is expanded from...
lib/m4sugar/m4sh.m4:697: AS_IF is expanded from...
./lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from...
./lib/autoconf/general.m4:2270: AC_CACHE_CHECK is expanded from...
aclocal.m4:73: GLIB_LC_MESSAGES is expanded from...
aclocal.m4:388: GLIB_GNU_GETTEXT is expanded from...
aclocal.m4:488: AM_GLIB_GNU_GETTEXT is expanded from...
configure.ac:90: the top level
configure.ac:90: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.ac:90: You should run autoupdate.
./lib/autoconf/general.m4:2918: AC_TRY_LINK is expanded from...
lib/m4sugar/m4sh.m4:690: _AS_IF_ELSE is expanded from...
lib/m4sugar/m4sh.m4:697: AS_IF is expanded from...
./lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from...
./lib/autoconf/general.m4:2270: AC_CACHE_CHECK is expanded from...
lib/m4sugar/m4sh.m4:697: AS_IF is expanded from...
./lib/autoconf/headers.m4:89: _AC_CHECK_HEADER_COMPILE is expanded from...
./lib/autoconf/headers.m4:56: AC_CHECK_HEADER is expanded from...
aclocal.m4:172: GLIB_WITH_NLS is expanded from...
aclocal.m4:388: GLIB_GNU_GETTEXT is expanded from...
aclocal.m4:488: AM_GLIB_GNU_GETTEXT is expanded from...
configure.ac:90: the top level
configure.ac:90: warning: The macro 'AC_TRY_LINK' is obsolete.
configure.ac:90: You should run autoupdate.
./lib/autoconf/general.m4:2918: AC_TRY_LINK is expanded from...
lib/m4sugar/m4sh.m4:697: AS_IF is expanded from...
./lib/autoconf/headers.m4:89: _AC_CHECK_HEADER_COMPILE is expanded from...
./lib/autoconf/headers.m4:56: AC_CHECK_HEADER is expanded from...
aclocal.m4:172: GLIB_WITH_NLS is expanded from...
aclocal.m4:388: GLIB_GNU_GETTEXT is expanded from...
aclocal.m4:488: AM_GLIB_GNU_GETTEXT is expanded from...
configure.ac:90: the top level
configure.ac:90: warning: The macro 'AC_OUTPUT_COMMANDS' is obsolete.
configure.ac:90: You should run autoupdate.
./lib/autoconf/status.m4:1025: AC_OUTPUT_COMMANDS is expanded from...
aclocal.m4:172: GLIB_WITH_NLS is expanded from...
aclocal.m4:388: GLIB_GNU_GETTEXT is expanded from...
aclocal.m4:488: AM_GLIB_GNU_GETTEXT is expanded from...
configure.ac:90: the top level
configure.ac:99: warning: The macro 'AC_HELP_STRING' is obsolete.
configure.ac:99: You should run autoupdate.
./lib/autoconf/general.m4:204: AC_HELP_STRING is expanded from...
acinclude.m4:5: JH_PATH_XML_CATALOG is expanded from...
acinclude.m4:39: JH_CHECK_XML_CATALOG is expanded from...
configure.ac:99: the top level
configure.ac:109: warning: AC_OUTPUT should be used without arguments.
configure.ac:109: You should run autoupdate.
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_CTYPE = (unset),
	LC_NUMERIC = (unset),
	LC_COLLATE = (unset),
	LC_TIME = (unset),
	LC_MESSAGES = (unset),
	LC_MONETARY = (unset),
	LC_ADDRESS = (unset),
	LC_IDENTIFICATION = (unset),
	LC_MEASUREMENT = (unset),
	LC_PAPER = (unset),
	LC_TELEPHONE = (unset),
	LC_NAME = (unset),
	LANG = "EN"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_CTYPE = (unset),
	LC_NUMERIC = (unset),
	LC_COLLATE = (unset),
	LC_TIME = (unset),
	LC_MESSAGES = (unset),
	LC_MONETARY = (unset),
	LC_ADDRESS = (unset),
	LC_IDENTIFICATION = (unset),
	LC_MEASUREMENT = (unset),
	LC_PAPER = (unset),
	LC_TELEPHONE = (unset),
	LC_NAME = (unset),
	LANG = "EN"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_CTYPE = (unset),
	LC_NUMERIC = (unset),
	LC_COLLATE = (unset),
	LC_TIME = (unset),
	LC_MESSAGES = (unset),
	LC_MONETARY = (unset),
	LC_ADDRESS = (unset),
	LC_IDENTIFICATION = (unset),
	LC_MEASUREMENT = (unset),
	LC_PAPER = (unset),
	LC_TELEPHONE = (unset),
	LC_NAME = (unset),
	LANG = "EN"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_CTYPE = (unset),
	LC_NUMERIC = (unset),
	LC_COLLATE = (unset),
	LC_TIME = (unset),
	LC_MESSAGES = (unset),
	LC_MONETARY = (unset),
	LC_ADDRESS = (unset),
	LC_IDENTIFICATION = (unset),
	LC_MEASUREMENT = (unset),
	LC_PAPER = (unset),
	LC_TELEPHONE = (unset),
	LC_NAME = (unset),
	LANG = "EN"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_CTYPE = (unset),
	LC_NUMERIC = (unset),
	LC_COLLATE = (unset),
	LC_TIME = (unset),
	LC_MESSAGES = (unset),
	LC_MONETARY = (unset),
	LC_ADDRESS = (unset),
	LC_IDENTIFICATION = (unset),
	LC_MEASUREMENT = (unset),
	LC_PAPER = (unset),
	LC_TELEPHONE = (unset),
	LC_NAME = (unset),
	LANG = "EN"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_CTYPE = (unset),
	LC_NUMERIC = (unset),
	LC_COLLATE = (unset),
	LC_TIME = (unset),
	LC_MESSAGES = (unset),
	LC_MONETARY = (unset),
	LC_ADDRESS = (unset),
	LC_IDENTIFICATION = (unset),
	LC_MEASUREMENT = (unset),
	LC_PAPER = (unset),
	LC_TELEPHONE = (unset),
	LC_NAME = (unset),
	LANG = "EN"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
configure.ac:13: installing './compile'
configure.ac:8: installing './install-sh'
configure.ac:8: installing './missing'
src/Makefile.am: installing './depcomp'
==> Starting build()...
checking whether make supports nested variables... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking whether sleep supports fractional seconds... yes
checking filesystem timestamp resolution... 0.01
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking xargs -n works... yes
checking whether UID '1000' is supported by ustar format... yes
checking whether GID '1000' is supported by ustar format... yes
checking how to create a ustar tar archive... gnutar
checking whether NLS is requested... yes
checking for intltool-update... /usr/bin/intltool-update
checking for intltool-merge... /usr/bin/intltool-merge
checking for intltool-extract... /usr/bin/intltool-extract
checking for xgettext... /usr/bin/xgettext
checking for msgmerge... /usr/bin/msgmerge
checking for msgfmt... /usr/bin/msgfmt
checking for gmsgfmt... /usr/bin/msgfmt
checking for perl... /usr/bin/perl
checking for perl >= 5.8.1... 5.42.0
checking for XML::Parser... ok
checking whether to enable maintainer-specific portions of Makefiles... yes
checking whether make supports the include directive... yes (GNU style)
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for library containing strerror... none required
checking for gcc... (cached) gcc
checking whether the compiler supports GNU C... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to enable C11 features... (cached) none needed
checking whether gcc understands -c and -o together... (cached) yes
checking dependency style of gcc... (cached) gcc3
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for locale.h... yes
checking for langinfo.h... yes
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for x11... yes
checking for gtk+-2.0 >= 2.18.0... yes
checking for glib-2.0 >= 2.16.0... yes
checking for pcre2.h... yes
checking for vte >= 0.26.0... no
configure: error: Package requirements (vte >= 0.26.0) were not met:

Package 'vte' not found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables vte_CFLAGS
and vte_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
==> ERROR: A failure occurred in build().
    Aborting...
$ pacman -Q|grep vte
vte-common 0.82.1-1
vte3 0.82.1-1
vte4 0.82.1-1

Last edited by quellen (2025-10-31 12:28:29)


sorry for my bad english

Offline

#4 2025-10-31 13:13:26

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 69,737

Re: Need vte-legacy for lxterminal-gtk2

For aesthetic reasons, I don’t like the GTK3 scrollbar.

https://slackalaxy.com/2017/11/27/gtk3- … crollbars/

In file included from /usr/include/glib-2.0/gobject/gbinding.h:31,
                 from /usr/include/glib-2.0/glib-object.h:24,
                 from marshal.h:5,
                 from reaper.c:37:
reaper.c: In function 'vte_reaper_constructor':
/usr/include/glib-2.0/gobject/gobject.h:533:28: error: returning 'VteReaper *' {aka 'struct _VteReaper *'} from a function with incompatible return type 'GObject *' {aka 'struct _GObject *'} [-Wincompatible-pointer-types]
  533 | #define g_object_ref(Obj) ((glib_typeof (Obj)) (g_object_ref) (Obj))
      |                           ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
reaper.c:85:18: note: in expansion of macro 'g_object_ref'
   85 |           return g_object_ref (singleton_reaper);
      |                  ^~~~~~~~~~~~
make[3]: *** [Makefile:1067: libvte_la-reaper.lo] Error 1

https://aur.archlinux.org/packages/vte- … ent-986796
Try to edit src/reaper.c and move the
G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT) above the marshal include.
You might have to explicitly "#include        <glib-object.h>" before the definition, though.

Online

#5 2025-10-31 13:32:02

quellen
Member
From: Italy
Registered: 2014-05-24
Posts: 342

Re: Need vte-legacy for lxterminal-gtk2

seth wrote:

For aesthetic reasons, I don’t like the GTK3 scrollbar.

https://aur.archlinux.org/packages/vte- … ent-986796
Try to edit src/reaper.c and move the
G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT) above the marshal include.
You might have to explicitly "#include        <glib-object.h>" before the definition, though.

I changed it like this, but the compilation still gives an error:

#include <config.h>
#include <glib-object.h>
#include "debug.h"
#include "reaper.h"

G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)

#include "marshal.h"

static VteReaper *singleton_reaper = NULL;

anyway, I’m not sure if it’s the correct way, but I solved it by downloading an old Fedora RPM package of vte-0.28 (vte-0.28.2-10.el7.x86_64.rpm), converting it into an Arch Linux .zst package, and installing it via a PKGBUILD.
Then I also installed ncurses5-compat-libs from the AUR.


sorry for my bad english

Offline

#6 2025-10-31 13:41:05

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 69,737

Re: Need vte-legacy for lxterminal-gtk2

G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT) needs to go UP, not #include "marshal.h" down

#include <config.h>
#include <glib-object.h>
G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
#include "marshal.h"
#include "debug.h"
#include "reaper.h"

Online

#7 2025-10-31 13:54:57

quellen
Member
From: Italy
Registered: 2014-05-24
Posts: 342

Re: Need vte-legacy for lxterminal-gtk2

seth wrote:

G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT) needs to go UP, not #include "marshal.h" down

#include <config.h>
#include <glib-object.h>
G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
#include "marshal.h"
#include "debug.h"
#include "reaper.h"

done. but it still show errors:

==> Making package: vte-legacy 0.28.2-10 (Fri Oct 31 14:53:02 2025)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> WARNING: Using existing $srcdir/ tree
==> Removing existing $pkgdir/ directory...
==> Starting build()...
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether to disable maintainer-specific portions of Makefiles... yes
checking which gtk+ version to compile against... 2.0
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking whether gcc and cc understand -c and -o together... yes
checking for a sed that does not truncate output... /usr/bin/sed
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking for a sed that does not truncate output... (cached) /usr/bin/sed
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking whether NLS is requested... yes
checking for intltool >= 0.35.0... 0.51.0 found
checking for intltool-update... /usr/bin/intltool-update
checking for intltool-merge... /usr/bin/intltool-merge
checking for intltool-extract... /usr/bin/intltool-extract
checking for xgettext... /usr/bin/xgettext
checking for msgmerge... /usr/bin/msgmerge
checking for msgfmt... /usr/bin/msgfmt
checking for gmsgfmt... /usr/bin/msgfmt
checking for perl... /usr/bin/perl
checking for perl >= 5.8.1... 5.42.0
checking for XML::Parser... ok
checking locale.h usability... yes
checking locale.h presence... yes
checking for locale.h... yes
checking for LC_MESSAGES... yes
checking libintl.h usability... yes
checking libintl.h presence... yes
checking for libintl.h... yes
checking for ngettext in libc... yes
checking for dgettext in libc... yes
checking for bind_textdomain_codeset... yes
checking for msgfmt... (cached) /usr/bin/msgfmt
checking for dcgettext... yes
checking if msgfmt accepts -c... yes
checking for gmsgfmt... (cached) /usr/bin/msgfmt
checking for xgettext... (cached) /usr/bin/xgettext
checking whether bind_textdomain_codeset is declared... yes
checking for a win32 platform... no
checking for supported warning flags... 
checking whether gcc supports -Wall... yes
checking whether gcc supports -Wextra... yes
checking whether gcc supports -Wsign-compare... yes
checking whether gcc supports -Werror-implicit-function-declaration... yes
checking whether gcc supports -Wpointer-arith... yes
checking whether gcc supports -Wwrite-strings... yes
checking whether gcc supports -Wstrict-prototypes... yes
checking whether gcc supports -Waggregate-return... yes
checking whether gcc supports -Wcast-align... yes
checking whether gcc supports -Wimplicit... yes
checking whether gcc supports -Wuninitialised... no
checking whether gcc supports -Wmissing-prototypes... yes
checking whether gcc supports -Wmissing-declarations... yes
checking whether gcc supports -Wnested-externs... yes
checking whether gcc supports -Wpacked... yes
checking whether gcc supports -Wmissing-format-attribute... yes
checking whether gcc supports -Wshadow... yes
checking whether gcc supports -Wstrict-aliasing=2... yes
checking whether gcc supports -Winit-self... yes
checking whether gcc supports -Wunsafe-loop-optimizations... yes
checking whether gcc supports -Wdeclaration-after-statement... yes
checking whether gcc supports -Wold-style-definition... yes
checking whether gcc supports -Wno-missing-field-initializers... yes
checking whether gcc supports -Wno-unused-parameter... yes
checking whether gcc supports -fno-common... yes
checking whether gcc supports -Wno-switch-enum... yes
checking which warning flags were supported...  -Wall -Wextra -Wsign-compare -Werror-implicit-function-declaration -Wpointer-arith -Wwrite-strings -Wstrict-prototypes -Waggregate-return -Wcast-align -Wimplicit -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wpacked -Wmissing-format-attribute -Wshadow -Wstrict-aliasing=2 -Winit-self -Wunsafe-loop-optimizations -Wdeclaration-after-statement -Wold-style-definition -Wno-missing-field-initializers -Wno-unused-parameter -fno-common -Wno-switch-enum
checking whether gcc supports -Wl,--warn-unresolved-symbols when linking... yes
checking whether gcc supports -Wl,-Bsymbolic-functions when linking... yes
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for GLIB... yes
checking for GTK... yes
checking for glib-genmarshal... /usr/bin/glib-genmarshal
checking for glib-mkenums... /usr/bin/glib-mkenums
checking sys/select.h usability... yes
checking sys/select.h presence... yes
checking for sys/select.h... yes
checking sys/syslimits.h usability... no
checking sys/syslimits.h presence... no
checking for sys/syslimits.h... no
checking sys/termios.h usability... yes
checking sys/termios.h presence... yes
checking for sys/termios.h... yes
checking sys/un.h usability... yes
checking sys/un.h presence... yes
checking for sys/un.h... yes
checking sys/wait.h usability... yes
checking sys/wait.h presence... yes
checking for sys/wait.h... yes
checking stropts.h usability... no
checking stropts.h presence... no
checking for stropts.h... no
checking termios.h usability... yes
checking termios.h presence... yes
checking for termios.h... yes
checking wchar.h usability... yes
checking wchar.h presence... yes
checking for wchar.h... yes
checking whether termios.h defines TIOCGWINSZ... no
checking whether sys/ioctl.h defines TIOCGWINSZ... yes
checking for cfmakeraw... yes
checking for fork... yes
checking for setsid... yes
checking for setpgid... yes
checking for getpgid... yes
checking for getpt... yes
checking for grantpt... yes
checking for unlockpt... yes
checking for ptsname... yes
checking for ptsname_r... yes
checking for tcgetattr... yes
checking for tcsetattr... yes
checking for socket... yes
checking for socketpair... yes
checking for recvmsg... yes
checking for floor... no
checking for floor in -lm... yes
checking for ceil... yes
checking for floor... (cached) no
checking for tgetent... no
checking for tgetent in -lncurses... yes
checking ncurses.h usability... yes
checking ncurses.h presence... yes
checking for ncurses.h... yes
checking term.h usability... yes
checking term.h presence... yes
checking for term.h... yes
checking for GDK target... x11
checking for VTE... yes
checking for wint_t... yes
checking for python version... 2.7
checking for python platform... linux2
checking for python script directory... ${prefix}/lib/python2.7/site-packages
checking for python extension module directory... ${exec_prefix}/lib/python2.7/site-packages
checking for python >= 2.2... okay
checking for headers required to compile python extensions... found
checking for pygtk-2.0... found
checking for PYGTK... yes
checking for pygtk-codegen-2.0... /usr/bin/pygtk-codegen-2.0
checking for pygtk defs... /usr/share/pygtk/2.0/defs
checking whether to install the glade catalogue... no
checking for gobject-introspection... yes
checking for gtkdoc-check... no
checking for gtkdoc-rebase... no
checking for gtkdoc-mkpdf... no
checking whether to build gtk-doc documentation... no
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating src/vteversion.h
config.status: creating termcaps/Makefile
config.status: creating perf/Makefile
config.status: creating python/Makefile
config.status: creating python/pyvte.pc
config.status: creating po/Makefile.in
config.status: creating doc/Makefile
config.status: creating doc/openi18n/Makefile
config.status: creating doc/reference/Makefile
config.status: creating doc/reference/version.xml
config.status: creating glade/Makefile
config.status: creating vte.pc
config.status: creating vte-uninstalled.pc
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands
config.status: executing default-1 commands
config.status: executing po/stamp-it commands

## -------------- ##
## Configuration. ##
## -------------- ##

Configuration for libvte 0.28.2 for gtk+-2.0
	Installing Glade catalogue: no
	Debugging: no
	Disallow deprecated features: 
make  all-recursive
make[1]: Entering directory '/tmp/vte-legacy/src/vte-0.28.2'
Making all in src
make[2]: Entering directory '/tmp/vte-legacy/src/vte-0.28.2/src'
make  all-am
make[3]: Entering directory '/tmp/vte-legacy/src/vte-0.28.2/src'
  CC     libvte_la-reaper.lo
  CC     libvte_la-ring.lo
  CC     libvte_la-vte.lo
  CC     libvte_la-vteaccess.lo
  CC     libvte_la-vteconv.lo
  CC     libvte_la-vtedraw.lo
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:31,
                 from /usr/include/glib-2.0/glib-object.h:24,
                 from reaper.c:35:
reaper.c:36:15: error: unknown type name 'VteReaper'
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      |               ^~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2289:48: note: in definition of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN_PRE'
 2289 | static void     type_name##_init              (TypeName        *self); \
      |                                                ^~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2053:61: note: in expansion of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN'
 2053 | #define G_DEFINE_TYPE_EXTENDED(TN, t_n, T_P, _f_, _C_)      _G_DEFINE_TYPE_EXTENDED_BEGIN (TN, t_n, T_P, _f_) {_C_;} _G_DEFINE_TYPE_EXTENDED_END()
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1834:61: note: in expansion of macro 'G_DEFINE_TYPE_EXTENDED'
 1834 | #define G_DEFINE_TYPE(TN, t_n, T_P)                         G_DEFINE_TYPE_EXTENDED (TN, t_n, T_P, 0, {})
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~
reaper.c:36:1: note: in expansion of macro 'G_DEFINE_TYPE'
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      | ^~~~~~~~~~~~~
reaper.c:36:15: error: unknown type name 'VteReaperClass'
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      |               ^~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2290:48: note: in definition of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN_PRE'
 2290 | static void     type_name##_class_init        (TypeName##Class *klass); \
      |                                                ^~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2053:61: note: in expansion of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN'
 2053 | #define G_DEFINE_TYPE_EXTENDED(TN, t_n, T_P, _f_, _C_)      _G_DEFINE_TYPE_EXTENDED_BEGIN (TN, t_n, T_P, _f_) {_C_;} _G_DEFINE_TYPE_EXTENDED_END()
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1834:61: note: in expansion of macro 'G_DEFINE_TYPE_EXTENDED'
 1834 | #define G_DEFINE_TYPE(TN, t_n, T_P)                         G_DEFINE_TYPE_EXTENDED (TN, t_n, T_P, 0, {})
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~
reaper.c:36:1: note: in expansion of macro 'G_DEFINE_TYPE'
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      | ^~~~~~~~~~~~~
reaper.c: In function 'vte_reaper_class_intern_init':
reaper.c:36:26: error: implicit declaration of function 'vte_reaper_class_init'; did you mean 'vte_reaper_class_intern_init'? [-Wimplicit-function-declaration]
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      |                          ^~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2264:3: note: in definition of macro '_G_DEFINE_TYPE_EXTENDED_CLASS_INIT'
 2264 |   type_name##_class_init ((TypeName##Class*) klass); \
      |   ^~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2343:3: note: in expansion of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN_PRE'
 2343 |   _G_DEFINE_TYPE_EXTENDED_BEGIN_PRE (TypeName, type_name)                      \
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2053:61: note: in expansion of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN'
 2053 | #define G_DEFINE_TYPE_EXTENDED(TN, t_n, T_P, _f_, _C_)      _G_DEFINE_TYPE_EXTENDED_BEGIN (TN, t_n, T_P, _f_) {_C_;} _G_DEFINE_TYPE_EXTENDED_END()
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1834:61: note: in expansion of macro 'G_DEFINE_TYPE_EXTENDED'
 1834 | #define G_DEFINE_TYPE(TN, t_n, T_P)                         G_DEFINE_TYPE_EXTENDED (TN, t_n, T_P, 0, {})
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~
reaper.c:36:1: note: in expansion of macro 'G_DEFINE_TYPE'
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      | ^~~~~~~~~~~~~
reaper.c:36:26: warning: nested extern declaration of 'vte_reaper_class_init' [-Wnested-externs]
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      |                          ^~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2264:3: note: in definition of macro '_G_DEFINE_TYPE_EXTENDED_CLASS_INIT'
 2264 |   type_name##_class_init ((TypeName##Class*) klass); \
      |   ^~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2343:3: note: in expansion of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN_PRE'
 2343 |   _G_DEFINE_TYPE_EXTENDED_BEGIN_PRE (TypeName, type_name)                      \
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2053:61: note: in expansion of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN'
 2053 | #define G_DEFINE_TYPE_EXTENDED(TN, t_n, T_P, _f_, _C_)      _G_DEFINE_TYPE_EXTENDED_BEGIN (TN, t_n, T_P, _f_) {_C_;} _G_DEFINE_TYPE_EXTENDED_END()
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1834:61: note: in expansion of macro 'G_DEFINE_TYPE_EXTENDED'
 1834 | #define G_DEFINE_TYPE(TN, t_n, T_P)                         G_DEFINE_TYPE_EXTENDED (TN, t_n, T_P, 0, {})
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~
reaper.c:36:1: note: in expansion of macro 'G_DEFINE_TYPE'
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      | ^~~~~~~~~~~~~
reaper.c:36:15: error: 'VteReaperClass' undeclared (first use in this function)
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      |               ^~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2264:28: note: in definition of macro '_G_DEFINE_TYPE_EXTENDED_CLASS_INIT'
 2264 |   type_name##_class_init ((TypeName##Class*) klass); \
      |                            ^~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2343:3: note: in expansion of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN_PRE'
 2343 |   _G_DEFINE_TYPE_EXTENDED_BEGIN_PRE (TypeName, type_name)                      \
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2053:61: note: in expansion of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN'
 2053 | #define G_DEFINE_TYPE_EXTENDED(TN, t_n, T_P, _f_, _C_)      _G_DEFINE_TYPE_EXTENDED_BEGIN (TN, t_n, T_P, _f_) {_C_;} _G_DEFINE_TYPE_EXTENDED_END()
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1834:61: note: in expansion of macro 'G_DEFINE_TYPE_EXTENDED'
 1834 | #define G_DEFINE_TYPE(TN, t_n, T_P)                         G_DEFINE_TYPE_EXTENDED (TN, t_n, T_P, 0, {})
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~
reaper.c:36:1: note: in expansion of macro 'G_DEFINE_TYPE'
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      | ^~~~~~~~~~~~~
reaper.c:36:15: note: each undeclared identifier is reported only once for each function it appears in
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      |               ^~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2264:28: note: in definition of macro '_G_DEFINE_TYPE_EXTENDED_CLASS_INIT'
 2264 |   type_name##_class_init ((TypeName##Class*) klass); \
      |                            ^~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2343:3: note: in expansion of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN_PRE'
 2343 |   _G_DEFINE_TYPE_EXTENDED_BEGIN_PRE (TypeName, type_name)                      \
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2053:61: note: in expansion of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN'
 2053 | #define G_DEFINE_TYPE_EXTENDED(TN, t_n, T_P, _f_, _C_)      _G_DEFINE_TYPE_EXTENDED_BEGIN (TN, t_n, T_P, _f_) {_C_;} _G_DEFINE_TYPE_EXTENDED_END()
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1834:61: note: in expansion of macro 'G_DEFINE_TYPE_EXTENDED'
 1834 | #define G_DEFINE_TYPE(TN, t_n, T_P)                         G_DEFINE_TYPE_EXTENDED (TN, t_n, T_P, 0, {})
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~
reaper.c:36:1: note: in expansion of macro 'G_DEFINE_TYPE'
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      | ^~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2264:44: error: expected expression before ')' token
 2264 |   type_name##_class_init ((TypeName##Class*) klass); \
      |                                            ^
/usr/include/glib-2.0/gobject/gtype.h:2295:1: note: in expansion of macro '_G_DEFINE_TYPE_EXTENDED_CLASS_INIT'
 2295 | _G_DEFINE_TYPE_EXTENDED_CLASS_INIT(TypeName, type_name) \
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2343:3: note: in expansion of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN_PRE'
 2343 |   _G_DEFINE_TYPE_EXTENDED_BEGIN_PRE (TypeName, type_name)                      \
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2053:61: note: in expansion of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN'
 2053 | #define G_DEFINE_TYPE_EXTENDED(TN, t_n, T_P, _f_, _C_)      _G_DEFINE_TYPE_EXTENDED_BEGIN (TN, t_n, T_P, _f_) {_C_;} _G_DEFINE_TYPE_EXTENDED_END()
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1834:61: note: in expansion of macro 'G_DEFINE_TYPE_EXTENDED'
 1834 | #define G_DEFINE_TYPE(TN, t_n, T_P)                         G_DEFINE_TYPE_EXTENDED (TN, t_n, T_P, 0, {})
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~
reaper.c:36:1: note: in expansion of macro 'G_DEFINE_TYPE'
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      | ^~~~~~~~~~~~~
reaper.c: At top level:
reaper.c:36:15: error: unknown type name 'VteReaper'
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      |               ^~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2299:35: note: in definition of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN_PRE'
 2299 | type_name##_get_instance_private (TypeName *self) \
      |                                   ^~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2053:61: note: in expansion of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN'
 2053 | #define G_DEFINE_TYPE_EXTENDED(TN, t_n, T_P, _f_, _C_)      _G_DEFINE_TYPE_EXTENDED_BEGIN (TN, t_n, T_P, _f_) {_C_;} _G_DEFINE_TYPE_EXTENDED_END()
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1834:61: note: in expansion of macro 'G_DEFINE_TYPE_EXTENDED'
 1834 | #define G_DEFINE_TYPE(TN, t_n, T_P)                         G_DEFINE_TYPE_EXTENDED (TN, t_n, T_P, 0, {})
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~
reaper.c:36:1: note: in expansion of macro 'G_DEFINE_TYPE'
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      | ^~~~~~~~~~~~~
reaper.c:36:26: warning: no previous prototype for 'vte_reaper_get_type' [-Wmissing-prototypes]
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      |                          ^~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2305:1: note: in definition of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN_PRE'
 2305 | type_name##_get_type (void) \
      | ^~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2053:61: note: in expansion of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN'
 2053 | #define G_DEFINE_TYPE_EXTENDED(TN, t_n, T_P, _f_, _C_)      _G_DEFINE_TYPE_EXTENDED_BEGIN (TN, t_n, T_P, _f_) {_C_;} _G_DEFINE_TYPE_EXTENDED_END()
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1834:61: note: in expansion of macro 'G_DEFINE_TYPE_EXTENDED'
 1834 | #define G_DEFINE_TYPE(TN, t_n, T_P)                         G_DEFINE_TYPE_EXTENDED (TN, t_n, T_P, 0, {})
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~
reaper.c:36:1: note: in expansion of macro 'G_DEFINE_TYPE'
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      | ^~~~~~~~~~~~~
reaper.c: In function 'vte_reaper_get_type_once':
reaper.c:36:15: error: 'VteReaperClass' undeclared (first use in this function)
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      |               ^~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2327:48: note: in definition of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN_REGISTER'
 2327 |                                        sizeof (TypeName##Class), \
      |                                                ^~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2053:61: note: in expansion of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN'
 2053 | #define G_DEFINE_TYPE_EXTENDED(TN, t_n, T_P, _f_, _C_)      _G_DEFINE_TYPE_EXTENDED_BEGIN (TN, t_n, T_P, _f_) {_C_;} _G_DEFINE_TYPE_EXTENDED_END()
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1834:61: note: in expansion of macro 'G_DEFINE_TYPE_EXTENDED'
 1834 | #define G_DEFINE_TYPE(TN, t_n, T_P)                         G_DEFINE_TYPE_EXTENDED (TN, t_n, T_P, 0, {})
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~
reaper.c:36:1: note: in expansion of macro 'G_DEFINE_TYPE'
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      | ^~~~~~~~~~~~~
reaper.c:36:15: error: 'VteReaper' undeclared (first use in this function)
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      |               ^~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2329:48: note: in definition of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN_REGISTER'
 2329 |                                        sizeof (TypeName), \
      |                                                ^~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2053:61: note: in expansion of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN'
 2053 | #define G_DEFINE_TYPE_EXTENDED(TN, t_n, T_P, _f_, _C_)      _G_DEFINE_TYPE_EXTENDED_BEGIN (TN, t_n, T_P, _f_) {_C_;} _G_DEFINE_TYPE_EXTENDED_END()
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1834:61: note: in expansion of macro 'G_DEFINE_TYPE_EXTENDED'
 1834 | #define G_DEFINE_TYPE(TN, t_n, T_P)                         G_DEFINE_TYPE_EXTENDED (TN, t_n, T_P, 0, {})
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~
reaper.c:36:1: note: in expansion of macro 'G_DEFINE_TYPE'
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      | ^~~~~~~~~~~~~
reaper.c:36:26: error: 'vte_reaper_init' undeclared (first use in this function); did you mean 'vte_reaper_get_type'?
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      |                          ^~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2330:76: note: in definition of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN_REGISTER'
 2330 |                                        (GInstanceInitFunc)(void (*)(void)) type_name##_init, \
      |                                                                            ^~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2053:61: note: in expansion of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN'
 2053 | #define G_DEFINE_TYPE_EXTENDED(TN, t_n, T_P, _f_, _C_)      _G_DEFINE_TYPE_EXTENDED_BEGIN (TN, t_n, T_P, _f_) {_C_;} _G_DEFINE_TYPE_EXTENDED_END()
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1834:61: note: in expansion of macro 'G_DEFINE_TYPE_EXTENDED'
 1834 | #define G_DEFINE_TYPE(TN, t_n, T_P)                         G_DEFINE_TYPE_EXTENDED (TN, t_n, T_P, 0, {})
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~
reaper.c:36:1: note: in expansion of macro 'G_DEFINE_TYPE'
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      | ^~~~~~~~~~~~~
reaper.c: In function 'vte_reaper_constructor':
/usr/include/glib-2.0/gobject/gobject.h:533:28: error: returning 'VteReaper *' {aka 'struct _VteReaper *'} from a function with incompatible return type 'GObject *' {aka 'struct _GObject *'} [-Wincompatible-pointer-types]
  533 | #define g_object_ref(Obj) ((glib_typeof (Obj)) (g_object_ref) (Obj))
      |                           ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
reaper.c:84:18: note: in expansion of macro 'g_object_ref'
   84 |           return g_object_ref (singleton_reaper);
      |                  ^~~~~~~~~~~~
reaper.c: At top level:
reaper.c:102:1: warning: conflicting types for 'vte_reaper_class_init'; have 'void(VteReaperClass *)' {aka 'void(struct _VteReaperClass *)'}
  102 | vte_reaper_class_init(VteReaperClass *klass)
      | ^~~~~~~~~~~~~~~~~~~~~
reaper.c:102:1: error: static declaration of 'vte_reaper_class_init' follows non-static declaration
reaper.c:36:26: note: previous implicit declaration of 'vte_reaper_class_init' with type 'void(VteReaperClass *)' {aka 'void(struct _VteReaperClass *)'}
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      |                          ^~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2264:3: note: in definition of macro '_G_DEFINE_TYPE_EXTENDED_CLASS_INIT'
 2264 |   type_name##_class_init ((TypeName##Class*) klass); \
      |   ^~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2343:3: note: in expansion of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN_PRE'
 2343 |   _G_DEFINE_TYPE_EXTENDED_BEGIN_PRE (TypeName, type_name)                      \
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:2053:61: note: in expansion of macro '_G_DEFINE_TYPE_EXTENDED_BEGIN'
 2053 | #define G_DEFINE_TYPE_EXTENDED(TN, t_n, T_P, _f_, _C_)      _G_DEFINE_TYPE_EXTENDED_BEGIN (TN, t_n, T_P, _f_) {_C_;} _G_DEFINE_TYPE_EXTENDED_END()
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1834:61: note: in expansion of macro 'G_DEFINE_TYPE_EXTENDED'
 1834 | #define G_DEFINE_TYPE(TN, t_n, T_P)                         G_DEFINE_TYPE_EXTENDED (TN, t_n, T_P, 0, {})
      |                                                             ^~~~~~~~~~~~~~~~~~~~~~
reaper.c:36:1: note: in expansion of macro 'G_DEFINE_TYPE'
   36 | G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
      | ^~~~~~~~~~~~~
reaper.c:102:1: warning: 'vte_reaper_class_init' defined but not used [-Wunused-function]
  102 | vte_reaper_class_init(VteReaperClass *klass)
      | ^~~~~~~~~~~~~~~~~~~~~
reaper.c:74:1: warning: 'vte_reaper_init' defined but not used [-Wunused-function]
   74 | vte_reaper_init(VteReaper *reaper)
      | ^~~~~~~~~~~~~~~
make[3]: *** [Makefile:1067: libvte_la-reaper.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
In file included from /usr/include/gtk-2.0/gtk/gtkobject.h:37,
                 from /usr/include/gtk-2.0/gtk/gtkwidget.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkcontainer.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkbin.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkwindow.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkdialog.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkaboutdialog.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:33,
                 from vte.h:25,
                 from ring.h:27,
                 from ring.c:24:
/usr/include/gtk-2.0/gtk/gtktypeutils.h:236:1: warning: 'GTypeDebugFlags' is deprecated [-Wdeprecated-declarations]
  236 | void            gtk_type_init   (GTypeDebugFlags    debug_flags);
      | ^~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:31,
                 from /usr/include/glib-2.0/glib-object.h:24,
                 from /usr/include/glib-2.0/gio/gioenums.h:30,
                 from /usr/include/glib-2.0/gio/giotypes.h:30,
                 from /usr/include/glib-2.0/gio/gio.h:28,
                 from ring.h:26:
/usr/include/glib-2.0/gobject/gtype.h:725:1: note: declared here
  725 | {
      | ^
In file included from /usr/include/gtk-2.0/gtk/gtkobject.h:37,
                 from /usr/include/gtk-2.0/gtk/gtkwidget.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkcontainer.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkbin.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkwindow.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkdialog.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkaboutdialog.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:33,
                 from vteaccess.c:30:
/usr/include/gtk-2.0/gtk/gtktypeutils.h:236:1: warning: 'GTypeDebugFlags' is deprecated [-Wdeprecated-declarations]
  236 | void            gtk_type_init   (GTypeDebugFlags    debug_flags);
      | ^~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:31,
                 from /usr/include/glib-2.0/glib-object.h:24,
                 from /usr/include/atk-1.0/atk/atk-enum-types.h:12,
                 from /usr/include/atk-1.0/atk/atk.h:24,
                 from vteaccess.c:29:
/usr/include/glib-2.0/gobject/gtype.h:725:1: note: declared here
  725 | {
      | ^
In file included from /usr/include/gtk-2.0/gtk/gtktoolitem.h:31,
                 from /usr/include/gtk-2.0/gtk/gtktoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtk.h:126:
/usr/include/gtk-2.0/gtk/gtktooltips.h:73:3: warning: 'GTimeVal' is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]
   73 |   GTimeVal last_popdown;
      |   ^~~~~~~~
In file included from /usr/include/glib-2.0/glib/galloca.h:34,
                 from /usr/include/glib-2.0/glib.h:32,
                 from debug.h:26,
                 from ring.c:23:
/usr/include/glib-2.0/glib/gtypes.h:580:8: note: declared here
  580 | struct _GTimeVal
      |        ^~~~~~~~~
In file included from /usr/include/gtk-2.0/gtk/gtkobject.h:37,
                 from /usr/include/gtk-2.0/gtk/gtkwidget.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkcontainer.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkbin.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkwindow.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkdialog.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkaboutdialog.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:33,
                 from vtedraw.c:24:
/usr/include/gtk-2.0/gtk/gtktypeutils.h:236:1: warning: 'GTypeDebugFlags' is deprecated [-Wdeprecated-declarations]
  236 | void            gtk_type_init   (GTypeDebugFlags    debug_flags);
      | ^~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:31,
                 from /usr/include/glib-2.0/glib-object.h:24,
                 from /usr/include/glib-2.0/gio/gioenums.h:30,
                 from /usr/include/glib-2.0/gio/giotypes.h:30,
                 from /usr/include/glib-2.0/gio/gio.h:28,
                 from /usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h:30,
                 from /usr/include/gtk-2.0/gdk/gdk.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:32:
/usr/include/glib-2.0/gobject/gtype.h:725:1: note: declared here
  725 | {
      | ^
In file included from /usr/include/gtk-2.0/gtk/gtktoolitem.h:31,
                 from /usr/include/gtk-2.0/gtk/gtktoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtk.h:126:
/usr/include/gtk-2.0/gtk/gtktooltips.h:73:3: warning: 'GTimeVal' is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]
   73 |   GTimeVal last_popdown;
      |   ^~~~~~~~
In file included from /usr/include/glib-2.0/glib/galloca.h:34,
                 from /usr/include/glib-2.0/glib.h:32,
                 from /usr/include/atk-1.0/atk/atkversion.h:31,
                 from /usr/include/atk-1.0/atk/atk-enum-types.h:11:
/usr/include/glib-2.0/glib/gtypes.h:580:8: note: declared here
  580 | struct _GTimeVal
      |        ^~~~~~~~~
In file included from /usr/include/gtk-2.0/gtk/gtkobject.h:37,
                 from /usr/include/gtk-2.0/gtk/gtkwidget.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkcontainer.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkbin.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkwindow.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkdialog.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkaboutdialog.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:33,
                 from vte.h:25,
                 from vte-private.h:44,
                 from vteconv.c:29:
/usr/include/gtk-2.0/gtk/gtktypeutils.h:236:1: warning: 'GTypeDebugFlags' is deprecated [-Wdeprecated-declarations]
  236 | void            gtk_type_init   (GTypeDebugFlags    debug_flags);
      | ^~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:31,
                 from /usr/include/glib-2.0/glib-object.h:24,
                 from /usr/include/glib-2.0/gio/gioenums.h:30,
                 from /usr/include/glib-2.0/gio/giotypes.h:30,
                 from /usr/include/glib-2.0/gio/gio.h:28,
                 from vte.h:23:
/usr/include/glib-2.0/gobject/gtype.h:725:1: note: declared here
  725 | {
      | ^
In file included from /usr/include/gtk-2.0/gtk/gtkobject.h:37,
                 from /usr/include/gtk-2.0/gtk/gtkwidget.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkcontainer.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkbin.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkwindow.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkdialog.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkaboutdialog.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:33,
                 from vte.h:25,
                 from vte.c:31:
/usr/include/gtk-2.0/gtk/gtktypeutils.h:236:1: warning: 'GTypeDebugFlags' is deprecated [-Wdeprecated-declarations]
  236 | void            gtk_type_init   (GTypeDebugFlags    debug_flags);
      | ^~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:31,
                 from /usr/include/glib-2.0/glib-object.h:24,
                 from /usr/include/glib-2.0/gio/gioenums.h:30,
                 from /usr/include/glib-2.0/gio/giotypes.h:30,
                 from /usr/include/glib-2.0/gio/gio.h:28,
                 from vte.h:23:
/usr/include/glib-2.0/gobject/gtype.h:725:1: note: declared here
  725 | {
      | ^
vteaccess.c: In function 'vte_terminal_accessible_get_character_at_offset':
vteaccess.c:1302:13: warning: variable 'mapped' set but not used [-Wunused-but-set-variable]
 1302 |         int mapped;
      |             ^~~~~~
vteaccess.c: In function 'vte_terminal_accessible_get_character_extents':
vteaccess.c:1443:9: warning: 'atk_component_get_position' is deprecated: Use 'atk_component_get_extents' instead [-Wdeprecated-declarations]
 1443 |         atk_component_get_position (ATK_COMPONENT (text), &base_x, &base_y, coords);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/atk-1.0/atk/atk.h:26:
/usr/include/atk-1.0/atk/atkcomponent.h:249:6: note: declared here
  249 | void atk_component_get_position (AtkComponent *component,
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
vteaccess.c: In function 'vte_terminal_accessible_get_offset_at_point':
vteaccess.c:1487:9: warning: 'atk_component_get_position' is deprecated: Use 'atk_component_get_extents' instead [-Wdeprecated-declarations]
 1487 |         atk_component_get_position (ATK_COMPONENT (text), &base_x, &base_y, coords);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/atk-1.0/atk/atkcomponent.h:249:6: note: declared here
  249 | void atk_component_get_position (AtkComponent *component,
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
vteaccess.c: In function 'vte_terminal_accessible_get_extents':
vteaccess.c:1701:9: warning: 'atk_component_get_position' is deprecated: Use 'atk_component_get_extents' instead [-Wdeprecated-declarations]
 1701 |         atk_component_get_position(component, x, y, coord_type);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/atk-1.0/atk/atkcomponent.h:249:6: note: declared here
  249 | void atk_component_get_position (AtkComponent *component,
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
vteaccess.c:1702:9: warning: 'atk_component_get_size' is deprecated: Use 'atk_component_get_extents' instead [-Wdeprecated-declarations]
 1702 |         atk_component_get_size(component, width, height);
      |         ^~~~~~~~~~~~~~~~~~~~~~
/usr/include/atk-1.0/atk/atkcomponent.h:254:6: note: declared here
  254 | void atk_component_get_size (AtkComponent *component,
      |      ^~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/gtk-2.0/gtk/gtktoolitem.h:31,
                 from /usr/include/gtk-2.0/gtk/gtktoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtk.h:126:
/usr/include/gtk-2.0/gtk/gtktooltips.h:73:3: warning: 'GTimeVal' is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]
   73 |   GTimeVal last_popdown;
      |   ^~~~~~~~
In file included from /usr/include/glib-2.0/glib/galloca.h:34,
                 from /usr/include/glib-2.0/glib.h:32,
                 from /usr/include/glib-2.0/gobject/gbinding.h:30:
/usr/include/glib-2.0/glib/gtypes.h:580:8: note: declared here
  580 | struct _GTimeVal
      |        ^~~~~~~~~
vteaccess.c: In function 'vte_terminal_accessible_get_type':
vteaccess.c:2027:25: warning: cast between incompatible function types from 'void (*)(void **)' to 'void (*)(void *, void *)' [-Wcast-function-type]
 2027 |                         (GClassInitFunc)vte_terminal_accessible_class_init,
      |                         ^
In file included from /usr/include/gtk-2.0/gtk/gtktoolitem.h:31,
                 from /usr/include/gtk-2.0/gtk/gtktoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtk.h:126:
/usr/include/gtk-2.0/gtk/gtktooltips.h:73:3: warning: 'GTimeVal' is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]
   73 |   GTimeVal last_popdown;
      |   ^~~~~~~~
In file included from /usr/include/glib-2.0/glib/galloca.h:34,
                 from /usr/include/glib-2.0/glib.h:32,
                 from vteconv.c:26:
/usr/include/glib-2.0/glib/gtypes.h:580:8: note: declared here
  580 | struct _GTimeVal
      |        ^~~~~~~~~
In file included from /usr/include/glib-2.0/glib/giochannel.h:36,
                 from /usr/include/glib-2.0/glib.h:56:
vteaccess.c: In function 'vte_terminal_accessible_update_private_data_if_needed':
/usr/include/glib-2.0/glib/gstring.h:78:5: warning: ignoring return value of 'g_string_free_and_steal' declared with attribute 'warn_unused_result' [-Wunused-result]
   74 |   (__builtin_constant_p (free_segment) ?        \
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   75 |     ((free_segment) ?                           \
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   76 |       (g_string_free) ((str), (free_segment)) : \
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   77 |       g_string_free_and_steal (str))            \
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   78 |     :                                           \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   79 |     (g_string_free) ((str), (free_segment)))
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vteaccess.c:292:33: note: in expansion of macro 'g_string_free'
  292 |                                 g_string_free(priv->snapshot_text, FALSE);
      |                                 ^~~~~~~~~~~~~
In file included from /usr/include/gtk-2.0/gtk/gtktoolitem.h:31,
                 from /usr/include/gtk-2.0/gtk/gtktoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtk.h:126:
/usr/include/gtk-2.0/gtk/gtktooltips.h:73:3: warning: 'GTimeVal' is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]
   73 |   GTimeVal last_popdown;
      |   ^~~~~~~~
In file included from /usr/include/glib-2.0/glib/galloca.h:34,
                 from /usr/include/glib-2.0/glib.h:32,
                 from vte.h:22:
/usr/include/glib-2.0/glib/gtypes.h:580:8: note: declared here
  580 | struct _GTimeVal
      |        ^~~~~~~~~
vteconv.c: In function '_vte_conv':
vteconv.c:232:29: warning: variable 'out_converted' set but not used [-Wunused-but-set-variable]
  232 |         gsize in_converted, out_converted;
      |                             ^~~~~~~~~~~~~
vteconv.c:232:15: warning: variable 'in_converted' set but not used [-Wunused-but-set-variable]
  232 |         gsize in_converted, out_converted;
      |               ^~~~~~~~~~~~
vtedraw.c: In function 'font_info_cache_ascii':
vtedraw.c:326:21: warning: 'pango_script_for_unichar' is deprecated: Use 'g_unichar_get_script' instead [-Wdeprecated-declarations]
  326 |                     pango_script_for_unichar (c) <= PANGO_SCRIPT_INHERITED)
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/pango-1.0/pango/pango-gravity.h:117,
                 from /usr/include/pango-1.0/pango/pango-types.h:235,
                 from /usr/include/pango-1.0/pango/pango-font.h:26,
                 from /usr/include/pango-1.0/pango/pango-attributes.h:25,
                 from /usr/include/pango-1.0/pango/pango.h:25,
                 from /usr/include/gtk-2.0/gdk/gdktypes.h:37,
                 from /usr/include/gtk-2.0/gdk/gdkscreen.h:32,
                 from /usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h:31:
/usr/include/pango-1.0/pango/pango-script.h:310:13: note: declared here
  310 | PangoScript pango_script_for_unichar         (gunichar             ch) G_GNUC_CONST;
      |             ^~~~~~~~~~~~~~~~~~~~~~~~
vte.c: In function 'vte_terminal_pty_new':
vte.c:3592:29: warning: variable 'pvt' set but not used [-Wunused-but-set-variable]
 3592 |         VteTerminalPrivate *pvt;
      |                             ^~~
In file included from /usr/lib/glib-2.0/include/glibconfig.h:9,
                 from /usr/include/glib-2.0/glib/gtypes.h:34:
vte.c: In function 'vte_terminal_process_incoming':
/usr/include/glib-2.0/glib/gmacros.h:1301:33: warning: Deprecated pre-processor symbol: replace with "memmove"
 1301 | #define _GLIB_GNUC_DO_PRAGMA(x) _Pragma(G_STRINGIFY (x))
      |                                 ^~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:1304:3: note: in expansion of macro '_GLIB_GNUC_DO_PRAGMA'
 1304 |   _GLIB_GNUC_DO_PRAGMA(GCC warning G_STRINGIFY (Deprecated pre-processor symbol: replace with #f))
      |   ^~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/glib-visibility.h:278:46: note: in expansion of macro 'GLIB_DEPRECATED_MACRO_FOR'
  278 | #define GLIB_DEPRECATED_MACRO_IN_2_40_FOR(f) GLIB_DEPRECATED_MACRO_FOR (f)
      |                                              ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/gutils.h:315:64: note: in expansion of macro 'GLIB_DEPRECATED_MACRO_IN_2_40_FOR'
  315 |   G_STMT_START { memmove ((dest), (src), (len)); } G_STMT_END  GLIB_DEPRECATED_MACRO_IN_2_40_FOR(memmove)
      |                                                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vte.c:4103:25: note: in expansion of macro 'g_memmove'
 4103 |                         g_memmove (chunk->data, chunk->data + processed,
      |                         ^~~~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:1301:33: warning: Deprecated pre-processor symbol: replace with "memmove"
 1301 | #define _GLIB_GNUC_DO_PRAGMA(x) _Pragma(G_STRINGIFY (x))
      |                                 ^~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:1304:3: note: in expansion of macro '_GLIB_GNUC_DO_PRAGMA'
 1304 |   _GLIB_GNUC_DO_PRAGMA(GCC warning G_STRINGIFY (Deprecated pre-processor symbol: replace with #f))
      |   ^~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/glib-visibility.h:278:46: note: in expansion of macro 'GLIB_DEPRECATED_MACRO_FOR'
  278 | #define GLIB_DEPRECATED_MACRO_IN_2_40_FOR(f) GLIB_DEPRECATED_MACRO_FOR (f)
      |                                              ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/gutils.h:315:64: note: in expansion of macro 'GLIB_DEPRECATED_MACRO_IN_2_40_FOR'
  315 |   G_STMT_START { memmove ((dest), (src), (len)); } G_STMT_END  GLIB_DEPRECATED_MACRO_IN_2_40_FOR(memmove)
      |                                                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vte.c:4122:41: note: in expansion of macro 'g_memmove'
 4122 |                                         g_memmove (next_chunk->data,
      |                                         ^~~~~~~~~
vte.c: In function 'vte_terminal_get_text_range_maybe_wrapped':
vte.c:6302:20: warning: variable 'screen' set but not used [-Wunused-but-set-variable]
 6302 |         VteScreen *screen;
      |                    ^~~~~~
vte.c: In function 'vte_terminal_set_emulation':
vte.c:8166:29: warning: variable 'pvt' set but not used [-Wunused-but-set-variable]
 8166 |         VteTerminalPrivate *pvt;
      |                             ^~~
vte.c: In function 'vte_terminal_init':
/usr/include/glib-2.0/glib/gmacros.h:1301:33: warning: Deprecated pre-processor symbol: replace with "G_ADD_PRIVATE"
 1301 | #define _GLIB_GNUC_DO_PRAGMA(x) _Pragma(G_STRINGIFY (x))
      |                                 ^~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:1304:3: note: in expansion of macro '_GLIB_GNUC_DO_PRAGMA'
 1304 |   _GLIB_GNUC_DO_PRAGMA(GCC warning G_STRINGIFY (Deprecated pre-processor symbol: replace with #f))
      |   ^~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gobject-visibility.h:584:49: note: in expansion of macro 'GLIB_DEPRECATED_MACRO_FOR'
  584 | #define GOBJECT_DEPRECATED_MACRO_IN_2_58_FOR(f) GLIB_DEPRECATED_MACRO_FOR (f)
      |                                                 ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:688:145: note: in expansion of macro 'GOBJECT_DEPRECATED_MACRO_IN_2_58_FOR'
  688 | #define G_TYPE_INSTANCE_GET_PRIVATE(instance, g_type, c_type)   ((c_type*) g_type_instance_get_private ((GTypeInstance*) (instance), (g_type))) GOBJECT_DEPRECATED_MACRO_IN_2_58_FOR(G_ADD_PRIVATE)
      |                                                                                                                                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vte.c:8355:31: note: in expansion of macro 'G_TYPE_INSTANCE_GET_PRIVATE'
 8355 |         pvt = terminal->pvt = G_TYPE_INSTANCE_GET_PRIVATE (terminal, VTE_TYPE_TERMINAL, VteTerminalPrivate);
      |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~
vte.c: In function 'vte_terminal_draw_cells':
vte.c:10162:22: warning: variable 'ascent' set but not used [-Wunused-but-set-variable]
10162 |         int i, x, y, ascent;
      |                      ^~~~~~
vte.c: In function 'vte_terminal_draw_rows':
vte.c:10539:15: warning: variable 'delta' set but not used [-Wunused-but-set-variable]
10539 |         glong delta;
      |               ^~~~~
vte.c: In function 'vte_terminal_expand_region':
vte.c:10863:20: warning: variable 'screen' set but not used [-Wunused-but-set-variable]
10863 |         VteScreen *screen;
      |                    ^~~~~~
vte.c: In function 'vte_terminal_paint_im_preedit_string':
vte.c:11103:37: warning: variable 'descent' set but not used [-Wunused-but-set-variable]
11103 |         long width, height, ascent, descent, delta;
      |                                     ^~~~~~~
vte.c:11103:29: warning: variable 'ascent' set but not used [-Wunused-but-set-variable]
11103 |         long width, height, ascent, descent, delta;
      |                             ^~~~~~
vte.c:11102:18: warning: variable 'drow' set but not used [-Wunused-but-set-variable]
11102 |         int row, drow, col, columns;
      |                  ^~~~
vte.c: In function 'vte_terminal_get_accessible':
vte.c:11480:22: warning: variable 'terminal' set but not used [-Wunused-but-set-variable]
11480 |         VteTerminal *terminal;
      |                      ^~~~~~~~
vte.c: In function 'vte_terminal_class_init':
vte.c:11774:9: warning: 'g_type_class_add_private' is deprecated [-Wdeprecated-declarations]
11774 |         g_type_class_add_private(klass, sizeof (VteTerminalPrivate));
      |         ^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1503:10: note: declared here
 1503 | void     g_type_class_add_private       (gpointer                    g_class,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~
vte.c: In function 'vte_terminal_reset':
vte.c:14110:30: warning: argument to 'sizeof' in 'memset' call is the same expression as the destination; did you mean to remove the addressof? [-Wsizeof-pointer-memaccess]
14110 |                        sizeof(&pvt->selection_origin));
      |                              ^
vte.c:14112:30: warning: argument to 'sizeof' in 'memset' call is the same expression as the destination; did you mean to remove the addressof? [-Wsizeof-pointer-memaccess]
14112 |                        sizeof(&pvt->selection_last));
      |                              ^
vte.c:14114:30: warning: argument to 'sizeof' in 'memset' call is the same expression as the destination; did you mean to remove the addressof? [-Wsizeof-pointer-memaccess]
14114 |                        sizeof(&pvt->selection_start));
      |                              ^
vte.c:14116:30: warning: argument to 'sizeof' in 'memset' call is the same expression as the destination; did you mean to remove the addressof? [-Wsizeof-pointer-memaccess]
14116 |                        sizeof(&pvt->selection_end));
      |                              ^
vte.c: In function 'reset_update_regions':
vte.c:14630:33: warning: cast between incompatible function types from 'void (*)(GdkRegion *)' {aka 'void (*)(struct _GdkRegion *)'} to 'void (*)(void *, void *)' [-Wcast-function-type]
14630 |                                 (GFunc)gdk_region_destroy, NULL);
      |                                 ^
make[3]: Leaving directory '/tmp/vte-legacy/src/vte-0.28.2/src'
make[2]: *** [Makefile:728: all] Error 2
make[2]: Leaving directory '/tmp/vte-legacy/src/vte-0.28.2/src'
make[1]: *** [Makefile:476: all-recursive] Error 1
make[1]: Leaving directory '/tmp/vte-legacy/src/vte-0.28.2'
make: *** [Makefile:381: all] Error 2
==> ERROR: A failure occurred in build().
    Aborting...
$ cat /tmp/vte-legacy/src/vte-0.28.2/src/reaper.c
/*
 * Copyright (C) 2002 Red Hat, Inc.
 *
 * This is free software; you can redistribute it and/or modify it under
 * the terms of the GNU Library General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful, but
 * WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * General Public License for more details.
 *
 * You should have received a copy of the GNU Library General Public
 * License along with this program; if not, write to the Free Software
 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 */

/**
 * SECTION: vte-reaper
 * @short_description: A singleton object which catches %SIGCHLD signals and
 * converts them into GObject-style &quot;child-exited&quot; signals
 *
 * Because an application may need to be notified when child processes
 * exit, and because there is only one %SIGCHLD handler, the #VteTerminal
 * widget relies on a #VteReaper to watch for %SIGCHLD notifications and
 * retrieve the exit status of child processes which have exited.  When
 * glib provides child_watch functionality, the #VteReaper merely acts as
 * a proxy for glib's own functionality.
 *
 * Since 0.11.11
 */

#include <config.h>
#include <glib-object.h>
G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
#include "marshal.h"
#include "debug.h"
#include "reaper.h"

static VteReaper *singleton_reaper = NULL;

static void
vte_reaper_child_watch_cb(GPid pid, gint status, gpointer data)
{
	_vte_debug_print(VTE_DEBUG_SIGNALS,
			"Reaper emitting child-exited signal.\n");
	g_signal_emit_by_name(data, "child-exited", pid, status);
	g_spawn_close_pid (pid);
}

/**
 * vte_reaper_add_child:
 * @pid: the ID of a child process which will be monitored
 *
 * Ensures that child-exited signals will be emitted when @pid exits.  This is
 * necessary for correct operation when running with glib versions >= 2.4.
 *
 * Returns: the new source ID
 *
 * Since 0.11.11
 */
int
vte_reaper_add_child(GPid pid)
{
	return g_child_watch_add_full(G_PRIORITY_LOW,
				      pid,
				      vte_reaper_child_watch_cb,
				      vte_reaper_get(),
				      (GDestroyNotify)g_object_unref);
}

static void
vte_reaper_init(VteReaper *reaper)
{
}

static GObject*
vte_reaper_constructor (GType                  type,
                        guint                  n_construct_properties,
                        GObjectConstructParam *construct_properties)
{
  if (singleton_reaper) {
	  return g_object_ref (singleton_reaper);
  } else {
	  GObject *obj;
	  obj = G_OBJECT_CLASS (vte_reaper_parent_class)->constructor (type, n_construct_properties, construct_properties);
	  singleton_reaper = VTE_REAPER (obj);
	  return obj;
  }
}


static void
vte_reaper_finalize(GObject *reaper)
{
	G_OBJECT_CLASS(vte_reaper_parent_class)->finalize(reaper);
	singleton_reaper = NULL;
}

static void
vte_reaper_class_init(VteReaperClass *klass)
{
	GObjectClass *gobject_class;

        /**
         * VteReaper::child-exited:
         * @vtereaper: the object which received the signal
         * @arg1: the process ID of the exited child
         * @arg2: the status of the exited child, as returned by waitpid()
         * 
         * Emitted when the #VteReaper object detects that a child of the
         * current process has exited.
         *
         * Since: 0.11.11
         */
	klass->child_exited_signal = g_signal_new(g_intern_static_string("child-exited"),
						  G_OBJECT_CLASS_TYPE(klass),
						  G_SIGNAL_RUN_LAST,
						  0,
						  NULL,
						  NULL,
						  _vte_marshal_VOID__INT_INT,
						  G_TYPE_NONE,
						  2, G_TYPE_INT, G_TYPE_INT);

	gobject_class = G_OBJECT_CLASS(klass);
	gobject_class->constructor = vte_reaper_constructor;
	gobject_class->finalize = vte_reaper_finalize;
}

/**
 * vte_reaper_get:
 *
 * Finds the address of the global #VteReaper object, creating the object if
 * necessary.
 *
 * Returns: the global #VteReaper object, which should not be unreffed.
 */
VteReaper *
vte_reaper_get(void)
{
	return g_object_new(VTE_TYPE_REAPER, NULL);
}

#ifdef REAPER_MAIN

#include <unistd.h>

GMainContext *context;
GMainLoop *loop;
pid_t child;

static void
child_exited(GObject *object, int pid, int status, gpointer data)
{
	g_print("[parent] Child with pid %d exited with code %d, "
		"was waiting for %d.\n", pid, status, GPOINTER_TO_INT(data));
	if (child == pid) {
		g_print("[parent] Quitting.\n");
		g_main_loop_quit(loop);
	}
}

int
main(int argc, char **argv)
{
	VteReaper *reaper;
	pid_t p, q;

	_vte_debug_init();

	g_type_init();
	context = g_main_context_default();
	loop = g_main_loop_new(context, FALSE);
	reaper = vte_reaper_get();

	g_print("[parent] Forking.\n");
	p = fork();
	switch (p) {
		case -1:
			g_print("[parent] Fork failed.\n");
			g_assert_not_reached();
			break;
		case 0:
			g_print("[child]  Going to sleep.\n");
			sleep(10);
			g_print("[child]  Quitting.\n");
			_exit(30);
			break;
		default:
			g_print("[parent] Starting to wait for %d.\n", p);
			child = p;
			g_signal_connect(reaper,
					 "child-exited",
					 G_CALLBACK(child_exited),
					 GINT_TO_POINTER(child));
			break;
	}

	g_print("[parent] Forking.\n");
	q = fork();
	switch (q) {
		case -1:
			g_print("[parent] Fork failed.\n");
			g_assert_not_reached();
			break;
		case 0:
			g_print("[child]  Going to sleep.\n");
			sleep(5);
			_exit(5);
			break;
		default:
			g_print("[parent] Not waiting for %d.\n", q);
			break;
	}


	g_main_loop_run(loop);

	g_object_unref(reaper);

	return 0;
}
#endif

sorry for my bad english

Offline

#8 2025-10-31 14:05:36

Scimmia
Fellow
Registered: 2012-09-01
Posts: 13,142

Re: Need vte-legacy for lxterminal-gtk2

All of this to use old, bitrotting software. It will get harder and harder to run as time goes on; gtk2 is dead, python2 is dead, vte-legacy is dead. You really need to just move on to maintained alternatives.

Last edited by Scimmia (2025-10-31 14:05:55)

Offline

#9 2025-10-31 14:06:35

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 69,737

Re: Need vte-legacy for lxterminal-gtk2

Try to move "#include "reaper.h"" up to have VteReaper defined

Scimmia wrote:

do you want the gtk2 version, anyway?

Online

#10 Today 09:53:08

quellen
Member
From: Italy
Registered: 2014-05-24
Posts: 342

Re: Need vte-legacy for lxterminal-gtk2

seth wrote:

Try to move "#include "reaper.h"" up to have VteReaper defined

#include <config.h>
#include <glib-object.h>
#include "reaper.h"
G_DEFINE_TYPE(VteReaper, vte_reaper, G_TYPE_OBJECT)
#include "marshal.h"
#include "debug.h"

errors log:

==> Making package: vte-legacy 0.28.2-10 (Mon Nov  3 10:52:01 2025)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> WARNING: Using existing $srcdir/ tree
==> Removing existing $pkgdir/ directory...
==> Starting build()...
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether to disable maintainer-specific portions of Makefiles... yes
checking which gtk+ version to compile against... 2.0
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking whether gcc and cc understand -c and -o together... yes
checking for a sed that does not truncate output... /usr/bin/sed
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking for a sed that does not truncate output... (cached) /usr/bin/sed
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking whether NLS is requested... yes
checking for intltool >= 0.35.0... 0.51.0 found
checking for intltool-update... /usr/bin/intltool-update
checking for intltool-merge... /usr/bin/intltool-merge
checking for intltool-extract... /usr/bin/intltool-extract
checking for xgettext... /usr/bin/xgettext
checking for msgmerge... /usr/bin/msgmerge
checking for msgfmt... /usr/bin/msgfmt
checking for gmsgfmt... /usr/bin/msgfmt
checking for perl... /usr/bin/perl
checking for perl >= 5.8.1... 5.42.0
checking for XML::Parser... ok
checking locale.h usability... yes
checking locale.h presence... yes
checking for locale.h... yes
checking for LC_MESSAGES... yes
checking libintl.h usability... yes
checking libintl.h presence... yes
checking for libintl.h... yes
checking for ngettext in libc... yes
checking for dgettext in libc... yes
checking for bind_textdomain_codeset... yes
checking for msgfmt... (cached) /usr/bin/msgfmt
checking for dcgettext... yes
checking if msgfmt accepts -c... yes
checking for gmsgfmt... (cached) /usr/bin/msgfmt
checking for xgettext... (cached) /usr/bin/xgettext
checking whether bind_textdomain_codeset is declared... yes
checking for a win32 platform... no
checking for supported warning flags... 
checking whether gcc supports -Wall... yes
checking whether gcc supports -Wextra... yes
checking whether gcc supports -Wsign-compare... yes
checking whether gcc supports -Werror-implicit-function-declaration... yes
checking whether gcc supports -Wpointer-arith... yes
checking whether gcc supports -Wwrite-strings... yes
checking whether gcc supports -Wstrict-prototypes... yes
checking whether gcc supports -Waggregate-return... yes
checking whether gcc supports -Wcast-align... yes
checking whether gcc supports -Wimplicit... yes
checking whether gcc supports -Wuninitialised... no
checking whether gcc supports -Wmissing-prototypes... yes
checking whether gcc supports -Wmissing-declarations... yes
checking whether gcc supports -Wnested-externs... yes
checking whether gcc supports -Wpacked... yes
checking whether gcc supports -Wmissing-format-attribute... yes
checking whether gcc supports -Wshadow... yes
checking whether gcc supports -Wstrict-aliasing=2... yes
checking whether gcc supports -Winit-self... yes
checking whether gcc supports -Wunsafe-loop-optimizations... yes
checking whether gcc supports -Wdeclaration-after-statement... yes
checking whether gcc supports -Wold-style-definition... yes
checking whether gcc supports -Wno-missing-field-initializers... yes
checking whether gcc supports -Wno-unused-parameter... yes
checking whether gcc supports -fno-common... yes
checking whether gcc supports -Wno-switch-enum... yes
checking which warning flags were supported...  -Wall -Wextra -Wsign-compare -Werror-implicit-function-declaration -Wpointer-arith -Wwrite-strings -Wstrict-prototypes -Waggregate-return -Wcast-align -Wimplicit -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wpacked -Wmissing-format-attribute -Wshadow -Wstrict-aliasing=2 -Winit-self -Wunsafe-loop-optimizations -Wdeclaration-after-statement -Wold-style-definition -Wno-missing-field-initializers -Wno-unused-parameter -fno-common -Wno-switch-enum
checking whether gcc supports -Wl,--warn-unresolved-symbols when linking... yes
checking whether gcc supports -Wl,-Bsymbolic-functions when linking... yes
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for GLIB... yes
checking for GTK... yes
checking for glib-genmarshal... /usr/bin/glib-genmarshal
checking for glib-mkenums... /usr/bin/glib-mkenums
checking sys/select.h usability... yes
checking sys/select.h presence... yes
checking for sys/select.h... yes
checking sys/syslimits.h usability... no
checking sys/syslimits.h presence... no
checking for sys/syslimits.h... no
checking sys/termios.h usability... yes
checking sys/termios.h presence... yes
checking for sys/termios.h... yes
checking sys/un.h usability... yes
checking sys/un.h presence... yes
checking for sys/un.h... yes
checking sys/wait.h usability... yes
checking sys/wait.h presence... yes
checking for sys/wait.h... yes
checking stropts.h usability... no
checking stropts.h presence... no
checking for stropts.h... no
checking termios.h usability... yes
checking termios.h presence... yes
checking for termios.h... yes
checking wchar.h usability... yes
checking wchar.h presence... yes
checking for wchar.h... yes
checking whether termios.h defines TIOCGWINSZ... no
checking whether sys/ioctl.h defines TIOCGWINSZ... yes
checking for cfmakeraw... yes
checking for fork... yes
checking for setsid... yes
checking for setpgid... yes
checking for getpgid... yes
checking for getpt... yes
checking for grantpt... yes
checking for unlockpt... yes
checking for ptsname... yes
checking for ptsname_r... yes
checking for tcgetattr... yes
checking for tcsetattr... yes
checking for socket... yes
checking for socketpair... yes
checking for recvmsg... yes
checking for floor... no
checking for floor in -lm... yes
checking for ceil... yes
checking for floor... (cached) no
checking for tgetent... no
checking for tgetent in -lncurses... yes
checking ncurses.h usability... yes
checking ncurses.h presence... yes
checking for ncurses.h... yes
checking term.h usability... yes
checking term.h presence... yes
checking for term.h... yes
checking for GDK target... x11
checking for VTE... yes
checking for wint_t... yes
checking for python version... 2.7
checking for python platform... linux2
checking for python script directory... ${prefix}/lib/python2.7/site-packages
checking for python extension module directory... ${exec_prefix}/lib/python2.7/site-packages
checking for python >= 2.2... okay
checking for headers required to compile python extensions... found
checking for pygtk-2.0... found
checking for PYGTK... yes
checking for pygtk-codegen-2.0... /usr/bin/pygtk-codegen-2.0
checking for pygtk defs... /usr/share/pygtk/2.0/defs
checking whether to install the glade catalogue... no
checking for gobject-introspection... yes
checking for gtkdoc-check... no
checking for gtkdoc-rebase... no
checking for gtkdoc-mkpdf... no
checking whether to build gtk-doc documentation... no
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating src/vteversion.h
config.status: creating termcaps/Makefile
config.status: creating perf/Makefile
config.status: creating python/Makefile
config.status: creating python/pyvte.pc
config.status: creating po/Makefile.in
config.status: creating doc/Makefile
config.status: creating doc/openi18n/Makefile
config.status: creating doc/reference/Makefile
config.status: creating doc/reference/version.xml
config.status: creating glade/Makefile
config.status: creating vte.pc
config.status: creating vte-uninstalled.pc
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands
config.status: executing default-1 commands
config.status: executing po/stamp-it commands

## -------------- ##
## Configuration. ##
## -------------- ##

Configuration for libvte 0.28.2 for gtk+-2.0
	Installing Glade catalogue: no
	Debugging: no
	Disallow deprecated features: 
make  all-recursive
make[1]: Entering directory '/tmp/vte-legacy/src/vte-0.28.2'
Making all in src
make[2]: Entering directory '/tmp/vte-legacy/src/vte-0.28.2/src'
make  all-am
make[3]: Entering directory '/tmp/vte-legacy/src/vte-0.28.2/src'
  CC     libvte_la-reaper.lo
  CC     libvte_la-ring.lo
  CC     libvte_la-vte.lo
  CC     libvte_la-vteaccess.lo
  CC     libvte_la-vteconv.lo
  CC     libvte_la-vtedraw.lo
In file included from /usr/include/glib-2.0/gobject/gbinding.h:31,
                 from /usr/include/glib-2.0/glib-object.h:24,
                 from reaper.c:35:
reaper.c: In function 'vte_reaper_constructor':
/usr/include/glib-2.0/gobject/gobject.h:533:28: error: returning 'VteReaper *' {aka 'struct _VteReaper *'} from a function with incompatible return type 'GObject *' {aka 'struct _GObject *'} [-Wincompatible-pointer-types]
  533 | #define g_object_ref(Obj) ((glib_typeof (Obj)) (g_object_ref) (Obj))
      |                           ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
reaper.c:84:18: note: in expansion of macro 'g_object_ref'
   84 |           return g_object_ref (singleton_reaper);
      |                  ^~~~~~~~~~~~
make[3]: *** [Makefile:1067: libvte_la-reaper.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
In file included from /usr/include/gtk-2.0/gtk/gtkobject.h:37,
                 from /usr/include/gtk-2.0/gtk/gtkwidget.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkcontainer.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkbin.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkwindow.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkdialog.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkaboutdialog.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:33,
                 from vtedraw.c:24:
/usr/include/gtk-2.0/gtk/gtktypeutils.h:236:1: warning: 'GTypeDebugFlags' is deprecated [-Wdeprecated-declarations]
  236 | void            gtk_type_init   (GTypeDebugFlags    debug_flags);
      | ^~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:31,
                 from /usr/include/glib-2.0/glib-object.h:24,
                 from /usr/include/glib-2.0/gio/gioenums.h:30,
                 from /usr/include/glib-2.0/gio/giotypes.h:30,
                 from /usr/include/glib-2.0/gio/gio.h:28,
                 from /usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h:30,
                 from /usr/include/gtk-2.0/gdk/gdk.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:32:
/usr/include/glib-2.0/gobject/gtype.h:725:1: note: declared here
  725 | {
      | ^
In file included from /usr/include/gtk-2.0/gtk/gtkobject.h:37,
                 from /usr/include/gtk-2.0/gtk/gtkwidget.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkcontainer.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkbin.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkwindow.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkdialog.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkaboutdialog.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:33,
                 from vte.h:25,
                 from ring.h:27,
                 from ring.c:24:
/usr/include/gtk-2.0/gtk/gtktypeutils.h:236:1: warning: 'GTypeDebugFlags' is deprecated [-Wdeprecated-declarations]
  236 | void            gtk_type_init   (GTypeDebugFlags    debug_flags);
      | ^~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:31,
                 from /usr/include/glib-2.0/glib-object.h:24,
                 from /usr/include/glib-2.0/gio/gioenums.h:30,
                 from /usr/include/glib-2.0/gio/giotypes.h:30,
                 from /usr/include/glib-2.0/gio/gio.h:28,
                 from ring.h:26:
/usr/include/glib-2.0/gobject/gtype.h:725:1: note: declared here
  725 | {
      | ^
In file included from /usr/include/gtk-2.0/gtk/gtkobject.h:37,
                 from /usr/include/gtk-2.0/gtk/gtkwidget.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkcontainer.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkbin.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkwindow.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkdialog.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkaboutdialog.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:33,
                 from vteaccess.c:30:
/usr/include/gtk-2.0/gtk/gtktypeutils.h:236:1: warning: 'GTypeDebugFlags' is deprecated [-Wdeprecated-declarations]
  236 | void            gtk_type_init   (GTypeDebugFlags    debug_flags);
      | ^~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:31,
                 from /usr/include/glib-2.0/glib-object.h:24,
                 from /usr/include/atk-1.0/atk/atk-enum-types.h:12,
                 from /usr/include/atk-1.0/atk/atk.h:24,
                 from vteaccess.c:29:
/usr/include/glib-2.0/gobject/gtype.h:725:1: note: declared here
  725 | {
      | ^
In file included from /usr/include/gtk-2.0/gtk/gtkobject.h:37,
                 from /usr/include/gtk-2.0/gtk/gtkwidget.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkcontainer.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkbin.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkwindow.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkdialog.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkaboutdialog.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:33,
                 from vte.h:25,
                 from vte.c:31:
/usr/include/gtk-2.0/gtk/gtktypeutils.h:236:1: warning: 'GTypeDebugFlags' is deprecated [-Wdeprecated-declarations]
  236 | void            gtk_type_init   (GTypeDebugFlags    debug_flags);
      | ^~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:31,
                 from /usr/include/glib-2.0/glib-object.h:24,
                 from /usr/include/glib-2.0/gio/gioenums.h:30,
                 from /usr/include/glib-2.0/gio/giotypes.h:30,
                 from /usr/include/glib-2.0/gio/gio.h:28,
                 from vte.h:23:
/usr/include/glib-2.0/gobject/gtype.h:725:1: note: declared here
  725 | {
      | ^
In file included from /usr/include/gtk-2.0/gtk/gtktoolitem.h:31,
                 from /usr/include/gtk-2.0/gtk/gtktoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtk.h:126:
/usr/include/gtk-2.0/gtk/gtktooltips.h:73:3: warning: 'GTimeVal' is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]
   73 |   GTimeVal last_popdown;
      |   ^~~~~~~~
In file included from /usr/include/glib-2.0/glib/galloca.h:34,
                 from /usr/include/glib-2.0/glib.h:32,
                 from /usr/include/atk-1.0/atk/atkversion.h:31,
                 from /usr/include/atk-1.0/atk/atk-enum-types.h:11:
/usr/include/glib-2.0/glib/gtypes.h:580:8: note: declared here
  580 | struct _GTimeVal
      |        ^~~~~~~~~
In file included from /usr/include/gtk-2.0/gtk/gtktoolitem.h:31,
                 from /usr/include/gtk-2.0/gtk/gtktoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtk.h:126:
/usr/include/gtk-2.0/gtk/gtktooltips.h:73:3: warning: 'GTimeVal' is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]
   73 |   GTimeVal last_popdown;
      |   ^~~~~~~~
In file included from /usr/include/glib-2.0/glib/galloca.h:34,
                 from /usr/include/glib-2.0/glib.h:32,
                 from /usr/include/glib-2.0/gobject/gbinding.h:30:
/usr/include/glib-2.0/glib/gtypes.h:580:8: note: declared here
  580 | struct _GTimeVal
      |        ^~~~~~~~~
In file included from /usr/include/gtk-2.0/gtk/gtkobject.h:37,
                 from /usr/include/gtk-2.0/gtk/gtkwidget.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkcontainer.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkbin.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkwindow.h:36,
                 from /usr/include/gtk-2.0/gtk/gtkdialog.h:35,
                 from /usr/include/gtk-2.0/gtk/gtkaboutdialog.h:32,
                 from /usr/include/gtk-2.0/gtk/gtk.h:33,
                 from vte.h:25,
                 from vte-private.h:44,
                 from vteconv.c:29:
/usr/include/gtk-2.0/gtk/gtktypeutils.h:236:1: warning: 'GTypeDebugFlags' is deprecated [-Wdeprecated-declarations]
  236 | void            gtk_type_init   (GTypeDebugFlags    debug_flags);
      | ^~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:26,
                 from /usr/include/glib-2.0/gobject/gbinding.h:31,
                 from /usr/include/glib-2.0/glib-object.h:24,
                 from /usr/include/glib-2.0/gio/gioenums.h:30,
                 from /usr/include/glib-2.0/gio/giotypes.h:30,
                 from /usr/include/glib-2.0/gio/gio.h:28,
                 from vte.h:23:
/usr/include/glib-2.0/gobject/gtype.h:725:1: note: declared here
  725 | {
      | ^
In file included from /usr/include/gtk-2.0/gtk/gtktoolitem.h:31,
                 from /usr/include/gtk-2.0/gtk/gtktoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtk.h:126:
/usr/include/gtk-2.0/gtk/gtktooltips.h:73:3: warning: 'GTimeVal' is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]
   73 |   GTimeVal last_popdown;
      |   ^~~~~~~~
In file included from /usr/include/glib-2.0/glib/galloca.h:34,
                 from /usr/include/glib-2.0/glib.h:32,
                 from debug.h:26,
                 from ring.c:23:
/usr/include/glib-2.0/glib/gtypes.h:580:8: note: declared here
  580 | struct _GTimeVal
      |        ^~~~~~~~~
In file included from /usr/include/gtk-2.0/gtk/gtktoolitem.h:31,
                 from /usr/include/gtk-2.0/gtk/gtktoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtk.h:126:
/usr/include/gtk-2.0/gtk/gtktooltips.h:73:3: warning: 'GTimeVal' is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]
   73 |   GTimeVal last_popdown;
      |   ^~~~~~~~
In file included from /usr/include/glib-2.0/glib/galloca.h:34,
                 from /usr/include/glib-2.0/glib.h:32,
                 from vte.h:22:
/usr/include/glib-2.0/glib/gtypes.h:580:8: note: declared here
  580 | struct _GTimeVal
      |        ^~~~~~~~~
vteaccess.c: In function 'vte_terminal_accessible_get_character_at_offset':
vteaccess.c:1302:13: warning: variable 'mapped' set but not used [-Wunused-but-set-variable]
 1302 |         int mapped;
      |             ^~~~~~
vteaccess.c: In function 'vte_terminal_accessible_get_character_extents':
vteaccess.c:1443:9: warning: 'atk_component_get_position' is deprecated: Use 'atk_component_get_extents' instead [-Wdeprecated-declarations]
 1443 |         atk_component_get_position (ATK_COMPONENT (text), &base_x, &base_y, coords);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/atk-1.0/atk/atk.h:26:
/usr/include/atk-1.0/atk/atkcomponent.h:249:6: note: declared here
  249 | void atk_component_get_position (AtkComponent *component,
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
vteaccess.c: In function 'vte_terminal_accessible_get_offset_at_point':
vteaccess.c:1487:9: warning: 'atk_component_get_position' is deprecated: Use 'atk_component_get_extents' instead [-Wdeprecated-declarations]
 1487 |         atk_component_get_position (ATK_COMPONENT (text), &base_x, &base_y, coords);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/atk-1.0/atk/atkcomponent.h:249:6: note: declared here
  249 | void atk_component_get_position (AtkComponent *component,
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
vteaccess.c: In function 'vte_terminal_accessible_get_extents':
vteaccess.c:1701:9: warning: 'atk_component_get_position' is deprecated: Use 'atk_component_get_extents' instead [-Wdeprecated-declarations]
 1701 |         atk_component_get_position(component, x, y, coord_type);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/atk-1.0/atk/atkcomponent.h:249:6: note: declared here
  249 | void atk_component_get_position (AtkComponent *component,
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
vteaccess.c:1702:9: warning: 'atk_component_get_size' is deprecated: Use 'atk_component_get_extents' instead [-Wdeprecated-declarations]
 1702 |         atk_component_get_size(component, width, height);
      |         ^~~~~~~~~~~~~~~~~~~~~~
/usr/include/atk-1.0/atk/atkcomponent.h:254:6: note: declared here
  254 | void atk_component_get_size (AtkComponent *component,
      |      ^~~~~~~~~~~~~~~~~~~~~~
vteaccess.c: In function 'vte_terminal_accessible_get_type':
vteaccess.c:2027:25: warning: cast between incompatible function types from 'void (*)(void **)' to 'void (*)(void *, void *)' [-Wcast-function-type]
 2027 |                         (GClassInitFunc)vte_terminal_accessible_class_init,
      |                         ^
In file included from /usr/include/gtk-2.0/gtk/gtktoolitem.h:31,
                 from /usr/include/gtk-2.0/gtk/gtktoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtk.h:126:
/usr/include/gtk-2.0/gtk/gtktooltips.h:73:3: warning: 'GTimeVal' is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]
   73 |   GTimeVal last_popdown;
      |   ^~~~~~~~
In file included from /usr/include/glib-2.0/glib/galloca.h:34,
                 from /usr/include/glib-2.0/glib.h:32,
                 from vteconv.c:26:
/usr/include/glib-2.0/glib/gtypes.h:580:8: note: declared here
  580 | struct _GTimeVal
      |        ^~~~~~~~~
In file included from /usr/include/glib-2.0/glib/giochannel.h:36,
                 from /usr/include/glib-2.0/glib.h:56:
vteaccess.c: In function 'vte_terminal_accessible_update_private_data_if_needed':
/usr/include/glib-2.0/glib/gstring.h:78:5: warning: ignoring return value of 'g_string_free_and_steal' declared with attribute 'warn_unused_result' [-Wunused-result]
   74 |   (__builtin_constant_p (free_segment) ?        \
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   75 |     ((free_segment) ?                           \
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   76 |       (g_string_free) ((str), (free_segment)) : \
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   77 |       g_string_free_and_steal (str))            \
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   78 |     :                                           \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   79 |     (g_string_free) ((str), (free_segment)))
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vteaccess.c:292:33: note: in expansion of macro 'g_string_free'
  292 |                                 g_string_free(priv->snapshot_text, FALSE);
      |                                 ^~~~~~~~~~~~~
vtedraw.c: In function 'font_info_cache_ascii':
vtedraw.c:326:21: warning: 'pango_script_for_unichar' is deprecated: Use 'g_unichar_get_script' instead [-Wdeprecated-declarations]
  326 |                     pango_script_for_unichar (c) <= PANGO_SCRIPT_INHERITED)
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/pango-1.0/pango/pango-gravity.h:117,
                 from /usr/include/pango-1.0/pango/pango-types.h:235,
                 from /usr/include/pango-1.0/pango/pango-font.h:26,
                 from /usr/include/pango-1.0/pango/pango-attributes.h:25,
                 from /usr/include/pango-1.0/pango/pango.h:25,
                 from /usr/include/gtk-2.0/gdk/gdktypes.h:37,
                 from /usr/include/gtk-2.0/gdk/gdkscreen.h:32,
                 from /usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h:31:
/usr/include/pango-1.0/pango/pango-script.h:310:13: note: declared here
  310 | PangoScript pango_script_for_unichar         (gunichar             ch) G_GNUC_CONST;
      |             ^~~~~~~~~~~~~~~~~~~~~~~~
vteconv.c: In function '_vte_conv':
vteconv.c:232:29: warning: variable 'out_converted' set but not used [-Wunused-but-set-variable]
  232 |         gsize in_converted, out_converted;
      |                             ^~~~~~~~~~~~~
vteconv.c:232:15: warning: variable 'in_converted' set but not used [-Wunused-but-set-variable]
  232 |         gsize in_converted, out_converted;
      |               ^~~~~~~~~~~~
vte.c: In function 'vte_terminal_pty_new':
vte.c:3592:29: warning: variable 'pvt' set but not used [-Wunused-but-set-variable]
 3592 |         VteTerminalPrivate *pvt;
      |                             ^~~
In file included from /usr/lib/glib-2.0/include/glibconfig.h:9,
                 from /usr/include/glib-2.0/glib/gtypes.h:34:
vte.c: In function 'vte_terminal_process_incoming':
/usr/include/glib-2.0/glib/gmacros.h:1301:33: warning: Deprecated pre-processor symbol: replace with "memmove"
 1301 | #define _GLIB_GNUC_DO_PRAGMA(x) _Pragma(G_STRINGIFY (x))
      |                                 ^~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:1304:3: note: in expansion of macro '_GLIB_GNUC_DO_PRAGMA'
 1304 |   _GLIB_GNUC_DO_PRAGMA(GCC warning G_STRINGIFY (Deprecated pre-processor symbol: replace with #f))
      |   ^~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/glib-visibility.h:278:46: note: in expansion of macro 'GLIB_DEPRECATED_MACRO_FOR'
  278 | #define GLIB_DEPRECATED_MACRO_IN_2_40_FOR(f) GLIB_DEPRECATED_MACRO_FOR (f)
      |                                              ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/gutils.h:315:64: note: in expansion of macro 'GLIB_DEPRECATED_MACRO_IN_2_40_FOR'
  315 |   G_STMT_START { memmove ((dest), (src), (len)); } G_STMT_END  GLIB_DEPRECATED_MACRO_IN_2_40_FOR(memmove)
      |                                                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vte.c:4103:25: note: in expansion of macro 'g_memmove'
 4103 |                         g_memmove (chunk->data, chunk->data + processed,
      |                         ^~~~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:1301:33: warning: Deprecated pre-processor symbol: replace with "memmove"
 1301 | #define _GLIB_GNUC_DO_PRAGMA(x) _Pragma(G_STRINGIFY (x))
      |                                 ^~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:1304:3: note: in expansion of macro '_GLIB_GNUC_DO_PRAGMA'
 1304 |   _GLIB_GNUC_DO_PRAGMA(GCC warning G_STRINGIFY (Deprecated pre-processor symbol: replace with #f))
      |   ^~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/glib-visibility.h:278:46: note: in expansion of macro 'GLIB_DEPRECATED_MACRO_FOR'
  278 | #define GLIB_DEPRECATED_MACRO_IN_2_40_FOR(f) GLIB_DEPRECATED_MACRO_FOR (f)
      |                                              ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/glib/gutils.h:315:64: note: in expansion of macro 'GLIB_DEPRECATED_MACRO_IN_2_40_FOR'
  315 |   G_STMT_START { memmove ((dest), (src), (len)); } G_STMT_END  GLIB_DEPRECATED_MACRO_IN_2_40_FOR(memmove)
      |                                                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vte.c:4122:41: note: in expansion of macro 'g_memmove'
 4122 |                                         g_memmove (next_chunk->data,
      |                                         ^~~~~~~~~
vte.c: In function 'vte_terminal_get_text_range_maybe_wrapped':
vte.c:6302:20: warning: variable 'screen' set but not used [-Wunused-but-set-variable]
 6302 |         VteScreen *screen;
      |                    ^~~~~~
vte.c: In function 'vte_terminal_set_emulation':
vte.c:8166:29: warning: variable 'pvt' set but not used [-Wunused-but-set-variable]
 8166 |         VteTerminalPrivate *pvt;
      |                             ^~~
vte.c: In function 'vte_terminal_init':
/usr/include/glib-2.0/glib/gmacros.h:1301:33: warning: Deprecated pre-processor symbol: replace with "G_ADD_PRIVATE"
 1301 | #define _GLIB_GNUC_DO_PRAGMA(x) _Pragma(G_STRINGIFY (x))
      |                                 ^~~~~~~
/usr/include/glib-2.0/glib/gmacros.h:1304:3: note: in expansion of macro '_GLIB_GNUC_DO_PRAGMA'
 1304 |   _GLIB_GNUC_DO_PRAGMA(GCC warning G_STRINGIFY (Deprecated pre-processor symbol: replace with #f))
      |   ^~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gobject-visibility.h:584:49: note: in expansion of macro 'GLIB_DEPRECATED_MACRO_FOR'
  584 | #define GOBJECT_DEPRECATED_MACRO_IN_2_58_FOR(f) GLIB_DEPRECATED_MACRO_FOR (f)
      |                                                 ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:688:145: note: in expansion of macro 'GOBJECT_DEPRECATED_MACRO_IN_2_58_FOR'
  688 | #define G_TYPE_INSTANCE_GET_PRIVATE(instance, g_type, c_type)   ((c_type*) g_type_instance_get_private ((GTypeInstance*) (instance), (g_type))) GOBJECT_DEPRECATED_MACRO_IN_2_58_FOR(G_ADD_PRIVATE)
      |                                                                                                                                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vte.c:8355:31: note: in expansion of macro 'G_TYPE_INSTANCE_GET_PRIVATE'
 8355 |         pvt = terminal->pvt = G_TYPE_INSTANCE_GET_PRIVATE (terminal, VTE_TYPE_TERMINAL, VteTerminalPrivate);
      |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~
vte.c: In function 'vte_terminal_draw_cells':
vte.c:10162:22: warning: variable 'ascent' set but not used [-Wunused-but-set-variable]
10162 |         int i, x, y, ascent;
      |                      ^~~~~~
vte.c: In function 'vte_terminal_draw_rows':
vte.c:10539:15: warning: variable 'delta' set but not used [-Wunused-but-set-variable]
10539 |         glong delta;
      |               ^~~~~
vte.c: In function 'vte_terminal_expand_region':
vte.c:10863:20: warning: variable 'screen' set but not used [-Wunused-but-set-variable]
10863 |         VteScreen *screen;
      |                    ^~~~~~
vte.c: In function 'vte_terminal_paint_im_preedit_string':
vte.c:11103:37: warning: variable 'descent' set but not used [-Wunused-but-set-variable]
11103 |         long width, height, ascent, descent, delta;
      |                                     ^~~~~~~
vte.c:11103:29: warning: variable 'ascent' set but not used [-Wunused-but-set-variable]
11103 |         long width, height, ascent, descent, delta;
      |                             ^~~~~~
vte.c:11102:18: warning: variable 'drow' set but not used [-Wunused-but-set-variable]
11102 |         int row, drow, col, columns;
      |                  ^~~~
vte.c: In function 'vte_terminal_get_accessible':
vte.c:11480:22: warning: variable 'terminal' set but not used [-Wunused-but-set-variable]
11480 |         VteTerminal *terminal;
      |                      ^~~~~~~~
vte.c: In function 'vte_terminal_class_init':
vte.c:11774:9: warning: 'g_type_class_add_private' is deprecated [-Wdeprecated-declarations]
11774 |         g_type_class_add_private(klass, sizeof (VteTerminalPrivate));
      |         ^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gobject/gtype.h:1503:10: note: declared here
 1503 | void     g_type_class_add_private       (gpointer                    g_class,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~
vte.c: In function 'vte_terminal_reset':
vte.c:14110:30: warning: argument to 'sizeof' in 'memset' call is the same expression as the destination; did you mean to remove the addressof? [-Wsizeof-pointer-memaccess]
14110 |                        sizeof(&pvt->selection_origin));
      |                              ^
vte.c:14112:30: warning: argument to 'sizeof' in 'memset' call is the same expression as the destination; did you mean to remove the addressof? [-Wsizeof-pointer-memaccess]
14112 |                        sizeof(&pvt->selection_last));
      |                              ^
vte.c:14114:30: warning: argument to 'sizeof' in 'memset' call is the same expression as the destination; did you mean to remove the addressof? [-Wsizeof-pointer-memaccess]
14114 |                        sizeof(&pvt->selection_start));
      |                              ^
vte.c:14116:30: warning: argument to 'sizeof' in 'memset' call is the same expression as the destination; did you mean to remove the addressof? [-Wsizeof-pointer-memaccess]
14116 |                        sizeof(&pvt->selection_end));
      |                              ^
vte.c: In function 'reset_update_regions':
vte.c:14630:33: warning: cast between incompatible function types from 'void (*)(GdkRegion *)' {aka 'void (*)(struct _GdkRegion *)'} to 'void (*)(void *, void *)' [-Wcast-function-type]
14630 |                                 (GFunc)gdk_region_destroy, NULL);
      |                                 ^
make[3]: Leaving directory '/tmp/vte-legacy/src/vte-0.28.2/src'
make[2]: *** [Makefile:728: all] Error 2
make[2]: Leaving directory '/tmp/vte-legacy/src/vte-0.28.2/src'
make[1]: *** [Makefile:476: all-recursive] Error 1
make[1]: Leaving directory '/tmp/vte-legacy/src/vte-0.28.2'
make: *** [Makefile:381: all] Error 2
==> ERROR: A failure occurred in build().
    Aborting...

sorry for my bad english

Offline

#11 Today 13:38:29

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 69,737

Re: Need vte-legacy for lxterminal-gtk2

Back to square one

In file included from /usr/include/glib-2.0/gobject/gbinding.h:31,
                 from /usr/include/glib-2.0/glib-object.h:24,
                 from reaper.c:35:
reaper.c: In function 'vte_reaper_constructor':
/usr/include/glib-2.0/gobject/gobject.h:533:28: error: returning 'VteReaper *' {aka 'struct _VteReaper *'} from a function with incompatible return type 'GObject *' {aka 'struct _GObject *'} [-Wincompatible-pointer-types]
  533 | #define g_object_ref(Obj) ((glib_typeof (Obj)) (g_object_ref) (Obj))
      |                           ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
reaper.c:84:18: note: in expansion of macro 'g_object_ref'
   84 |           return g_object_ref (singleton_reaper);
      |                  ^~~~~~~~~~~~
make[3]: *** [Makefile:1067: libvte_la-reaper.lo] Error 1
make[3]: *** Waiting for unfinished jobs....

You could just ignore the condition, https://gcc.gnu.org/onlinedocs/gcc/Warn … c-errors-1 but really

Scimmia wrote:

All of this to use old, bitrotting software. It will get harder and harder to run as time goes on; gtk2 is dead, python2 is dead, vte-legacy is dead. You really need to just move on to maintained alternatives.

Online

Board footer

Powered by FluxBB