thestinger / termite

Termite is obsoleted by Alacritty. Termite was a keyboard-centric VTE-based terminal, aimed at use within a window manager with tiling and/or tabbing support.
https://github.com/alacritty/alacritty
2.73k stars 240 forks source link

Cant't compile on OpenBSD #670

Closed k6Q28k5w5eWuRuuzTg9j7GrKCbjt7 closed 3 years ago

k6Q28k5w5eWuRuuzTg9j7GrKCbjt7 commented 5 years ago

Trying to compile this on OpenBSD as follows: opbsd# pkg_add -iv gmake vte3 opbsd$ cd termite && gmake g++ -std=c++11 -O3 -Wall -Wextra -pedantic -Winit-self -Wshadow -Wformat=2 -Wmissing-declarations -Wstrict-overflow=5 -Wcast-align -Wconversion -Wunused-macros -Wwrite-strings -DNDEBUG -D_POSIX_C_SOURCE=200809L -DTERMITE_VERSION=\"v14\" -I/usr/local/include/vte-2.91 -I/usr/local/include/gtk-3.0 -I/usr/local/include/at-spi2-atk/2.0 -I/usr/local/include/at-spi-2.0 -I/usr/local/include/dbus-1.0 -I/usr/local/lib/dbus-1.0/include -I/usr/X11R6/include -I/usr/local/include/cairo -I/usr/X11R6/include/libdrm -I/usr/local/include/pango-1.0 -I/usr/local/include/harfbuzz -I/usr/local/include -I/usr/local/include/fribidi -I/usr/local/include/atk-1.0 -I/usr/X11R6/include/pixman-1 -I/usr/X11R6/include/freetype2 -I/usr/local/include/libpng16 -I/usr/local/include/gdk-pixbuf-2.0 -I/usr/local/include/gio-unix-2.0 -pthread -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/p11-kit-1 -Wno-missing-field-initializers -s -Wl,--as-needed termite.cc -L/usr/local/lib -Wl,-rpath-link,/usr/X11R6/lib -lvte-2.91 -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lintl -lz -lpcre2-8 -lgnutls -o termite cc1plus: warning: command line option "-Wmissing-declarations" is valid for C/ObjC but not for C++ cc1plus: error: unrecognized command line option "-std=c++11" gmake: *** [Makefile:36: termite] Error 1

Edit: Err, noticed vte3 vs vte-ng faq

jelly commented 5 years ago

Is g++ clang or gcc?

k6Q28k5w5eWuRuuzTg9j7GrKCbjt7 commented 5 years ago

Oh, was a bit quick there. Sorry. It's clang.

hel$ CXX=clang++ gmake

clang++ -std=c++11 -O3 -Wall -Wextra -pedantic -Winit-self -Wshadow -Wformat=2 -Wmissing-declarations -Wstrict-overflow=5 -Wcast-align -Wconversion -Wunused-macros -Wwrite-strings -DNDEBUG -D_POSIX_C_SOURCE=200809L -DTERMITE_VERSION=\"v15\" -I/usr/local/include/vte-2.91 -I/usr/local/include/gtk-3.0 -I/usr/local/include/at-spi2-atk/2.0 -I/usr/local/include/at-spi-2.0 -I/usr/local/include/dbus-1.0 -I/usr/local/lib/dbus-1.0/include -I/usr/X11R6/include -I/usr/local/include/cairo -I/usr/X11R6/include/libdrm -I/usr/local/include/pango-1.0 -I/usr/local/include/harfbuzz -I/usr/local/include -I/usr/local/include/fribidi -I/usr/local/include/atk-1.0 -I/usr/X11R6/include/pixman-1 -I/usr/X11R6/include/freetype2 -I/usr/local/include/libpng16 -I/usr/local/include/gdk-pixbuf-2.0 -I/usr/local/include/gio-unix-2.0 -pthread -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/p11-kit-1 -Wimplicit-fallthrough -s -Wl,--as-needed termite.cc -L/usr/local/lib -Wl,-rpath-link,/usr/X11R6/lib -lvte-2.91 -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lintl -lz -lpcre2-8 -lgnutls -o termite In file included from termite.cc:39: In file included from /usr/local/include/gtk-3.0/gdk/gdkx.h:30: In file included from /usr/X11R6/include/X11/Xlib.h:47: /usr/X11R6/include/X11/Xfuncproto.h:174:24: warning: named variadic macros are a GNU extension [-Wvariadic-macros]

define _X_NONNULL(args...) attribute((nonnull(args)))

                   ^

termite.cc:347:5: error: use of undeclared identifier 'errno' errno = 0; ^ termite.cc:349:10: error: use of undeclared identifier 'errno' if (!errno && id && id <= info->url_list.size() && !end) { ^ termite.cc:447:5: error: use of undeclared identifier 'vte_terminal_set_selection_block_mode'; did you mean 'vte_terminal_set_text_blink_mode'? vte_terminal_set_selection_block_mode(vte, select->mode == vi_mode::visual_block); ^~~~~~~~~ vte_terminal_set_text_blink_mode /usr/local/include/vte-2.91/vte/vteterminal.h:226:6: note: 'vte_terminal_set_text_blink_mode' declared here void vte_terminal_set_text_blink_mode(VteTerminal terminal, ^ termite.cc:447:48: error: cannot initialize a parameter of type 'VteTextBlinkMode' with an rvalue of type 'bool' vte_terminal_set_selection_block_mode(vte, select->mode == vi_mode::visual_block); ^~~~~~~~~ /usr/local/include/vte-2.91/vte/vteterminal.h:227:56: note: passing argument to parameter 'text_blink_mode' here VteTextBlinkMode text_blink_mode) _VTEGNUC... ^ termite.cc:453:13: error: use of undeclared identifier 'vte_terminal_select_text'; did you mean 'vte_terminal_set_colors'? vte_terminal_select_text(vte, select->begin_col, select->begin_row, ^~~~~~~~ vte_terminal_set_colors /usr/local/include/vte-2.91/vte/vteterminal.h:274:6: note: 'vte_terminal_set_colors' declared here void vte_terminal_set_colors(VteTerminal terminal, ^ termite.cc:453:43: error: cannot initialize a parameter of type 'const GdkRGBA ' (aka 'const _GdkRGBA ') with an lvalue of type 'const long' vte_terminal_select_text(vte, select->begin_col, select->begin_row, ^~~~~ /usr/local/include/vte-2.91/vte/vteterminal.h:275:45: note: passing argument to parameter 'foreground' here const GdkRGBA foreground, ^ termite.cc:456:13: error: use of undeclared identifier 'vte_terminal_select_text'; did you mean 'vte_terminal_set_colors'? vte_terminal_select_text(vte, cursor_col, cursor_row, ^~~~~~~~ vte_terminal_set_colors /usr/local/include/vte-2.91/vte/vteterminal.h:274:6: note: 'vte_terminal_set_colors' declared here void vte_terminal_set_colors(VteTerminal terminal, ^ termite.cc:456:43: error: cannot initialize a parameter of type 'const GdkRGBA ' (aka 'const _GdkRGBA ') with an lvalue of type 'long' vte_terminal_select_text(vte, cursor_col, cursor_row, ^~~~~~ /usr/local/include/vte-2.91/vte/vteterminal.h:275:45: note: passing argument to parameter 'foreground' here const GdkRGBA foreground, ^ termite.cc:460:9: error: use of undeclared identifier 'vte_terminal_select_text'; did you mean 'vte_terminal_set_colors'? vte_terminal_select_text(vte, 0, ^~~~~~~~ vte_terminal_set_colors /usr/local/include/vte-2.91/vte/vteterminal.h:274:6: note: 'vte_terminal_set_colors' declared here void vte_terminal_set_colors(VteTerminal terminal, ^ termite.cc:461:34: error: cannot initialize a parameter of type 'const GdkRGBA ' (aka 'const _GdkRGBA ') with an lvalue of type 'const long' std::min(select->begin_row, cursor_row), ^~~~~~~~~~~ /usr/local/include/vte-2.91/vte/vteterminal.h:276:45: note: passing argument to parameter 'background' here const GdkRGBA background, ^ termite.cc:465:9: error: use of undeclared identifier 'vte_terminal_select_text'; did you mean 'vte_terminal_set_colors'? vte_terminal_select_text(vte, ^~~~~~~~ vte_terminal_set_colors /usr/local/include/vte-2.91/vte/vteterminal.h:274:6: note: 'vte_terminal_set_colors' declared here void vte_terminal_set_colors(VteTerminal terminal, ^ termite.cc:466:34: error: cannot initialize a parameter of type 'const GdkRGBA ' (aka 'const _GdkRGBA ') with an lvalue of type 'const long' std::min(select->begin_col, cursor_col), ^~~~~~~~~~~ /usr/local/include/vte-2.91/vte/vteterminal.h:275:45: note: passing argument to parameter 'foreground' here const GdkRGBA foreground, ^ termite.cc:476:5: error: use of undeclared identifier 'vte_terminal_disconnect_pty_read' vte_terminal_disconnect_pty_read(vte); ^ termite.cc:483:5: error: use of undeclared identifier 'vte_terminal_set_cursor_position'; did you mean 'vte_terminal_get_cursor_position'? vte_terminal_set_cursor_position(vte, select->origin_col, select->origin_row); ^~~~~~~~ vte_terminal_get_cursor_position /usr/local/include/vte-2.91/vte/vteterminal.h:377:6: note: 'vte_terminal_get_cursor_position' declared here void vte_terminal_get_cursor_position(VteTerminal terminal, ^ termite.cc:483:43: error: cannot initialize a parameter of type 'glong ' (aka 'long ') with an lvalue of type 'long' vte_terminal_set_cursor_position(vte, select->origin_col, select->origin_row); ^~~~~~ /usr/local/include/vte-2.91/vte/vteterminal.h:378:18: note: passing argument to parameter 'column' here glong column, ^ termite.cc:484:5: error: use of undeclared identifier 'vte_terminal_connect_pty_read' vte_terminal_connect_pty_read(vte); ^ termite.cc:551:5: error: use of undeclared identifier 'vte_terminal_set_cursor_position'; did you mean 'vte_terminal_get_cursor_position'? vte_terminal_set_cursor_position(vte, ^~~~~~~~ vte_terminal_get_cursor_position /usr/local/include/vte-2.91/vte/vteterminal.h:377:6: note: 'vte_terminal_get_cursor_position' declared here void vte_terminal_get_cursor_position(VteTerminal terminal, ^ termite.cc:552:38: error: cannot initialize a parameter of type 'glong ' (aka 'long ') with an lvalue of type 'const long' clamp(cursor_col + col, 0l, end_col), ^~~~~~~~ /usr/local/include/vte-2.91/vte/vteterminal.h:378:18: note: passing argument to parameter 'column' here glong column, ^ termite.cc:561:5: error: use of undeclared identifier 'vte_terminal_set_cursor_position'; did you mean 'vte_terminal_get_cursor_position'? vte_terminal_set_cursor_position(vte, 0, row); ^~~~~~~~ vte_terminal_get_cursor_position /usr/local/include/vte-2.91/vte/vteterminal.h:377:6: note: 'vte_terminal_get_cursor_position' declared here void vte_terminal_get_cursor_position(VteTerminal *terminal, ^ fatal error: too many errors emitted, stopping now [-ferror-limit=] 1 warning and 20 errors generated. gmake: *** [Makefile:36: termite] Error 1 hel$

jelly commented 5 years ago

You aren't building termite against vte3-ng

thestinger commented 3 years ago

Termite is obsolete. Please use Alacritty instead. See https://github.com/thestinger/termite#termite-is-obsoleted-by-alacritty for more details.