Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[SOLVED] Ninja error compiling brisk-menu
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Unsupported Software
View previous topic :: View next topic  
Author Message
Linx_
n00b
n00b


Joined: 01 Jul 2018
Posts: 63

PostPosted: Sun Sep 08, 2019 6:48 pm    Post subject: [SOLVED] Ninja error compiling brisk-menu Reply with quote

I'm trying to install brisk-menu on my ~amd64 from this ebuild https://gpo.zugaina.org/Overlays/jorgicio/mate-extra/brisk-menu

It fails with the following error about the ninja build environment:
Code:
-DGDK_VERSION_MAX_ALLOWED=GDK_VERSION_3_18 -DGDK_VERSION_MIN_REQUIRED=GDK_VERSION_3_18 -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_44 -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_44 -march=haswell -O2 -pthread -MD -MQ 'src/mate-applet/219b2c5@@brisk-menu@exe/applet.c.o' -MF 'src/mate-applet/219b2c5@@brisk-menu@exe/applet.c.o.d' -o 'src/mate-applet/219b2c5@@brisk-menu@exe/applet.c.o' -c ../brisk-menu-9999/src/mate-applet/applet.c
ninja: build stopped: subcommand failed.
 * ERROR: mate-extra/brisk-menu-9999::localrepo failed (compile phase):
 *   ninja -v -j13 -l0 -C /var/tmp/portage/mate-extra/brisk-menu-9999/work/brisk-menu-9999-build failed
 *
 * Call stack:
 *     ebuild.sh, line  125:  Called src_compile
 *   environment, line 3840:  Called meson_src_compile
 *   environment, line 2735:  Called eninja '-C' '/var/tmp/portage/mate-extra/brisk-menu-9999/work/brisk-menu-9999-build'
 *   environment, line 1074:  Called die
 * The specific snippet of code:
 *       "$@" || die "${nonfatal_args[@]}" "${*} failed"
 *
 * If you need support, post the output of `emerge --info '=mate-extra/brisk-menu-9999::localrepo'`,
 * the complete build log and the output of `emerge -pqv '=mate-extra/brisk-menu-9999::localrepo'`.
 * The complete build log is located at '/var/tmp/portage/mate-extra/brisk-menu-9999/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/mate-extra/brisk-menu-9999/temp/environment'.
 * Working directory: '/var/tmp/portage/mate-extra/brisk-menu-9999/work/brisk-menu-9999'
 * S: '/var/tmp/portage/mate-extra/brisk-menu-9999/work/brisk-menu-9999'

 * Messages for package mate-extra/brisk-menu-9999:

 * ERROR: mate-extra/brisk-menu-9999::localrepo failed (compile phase):
 *   ninja -v -j13 -l0 -C /var/tmp/portage/mate-extra/brisk-menu-9999/work/brisk-menu-9999-build failed
 *
 * Call stack:
 *     ebuild.sh, line  125:  Called src_compile
 *   environment, line 3840:  Called meson_src_compile
 *   environment, line 2735:  Called eninja '-C' '/var/tmp/portage/mate-extra/brisk-menu-9999/work/brisk-menu-9999-build'
 *   environment, line 1074:  Called die
 * The specific snippet of code:
 *       "$@" || die "${nonfatal_args[@]}" "${*} failed"
 *
 * If you need support, post the output of `emerge --info '=mate-extra/brisk-menu-9999::localrepo'`,
 * the complete build log and the output of `emerge -pqv '=mate-extra/brisk-menu-9999::localrepo'`.
 * The complete build log is located at '/var/tmp/portage/mate-extra/brisk-menu-9999/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/mate-extra/brisk-menu-9999/temp/environment'.
 * Working directory: '/var/tmp/portage/mate-extra/brisk-menu-9999/work/brisk-menu-9999'
 * S: '/var/tmp/portage/mate-extra/brisk-menu-9999/work/brisk-menu-9999'


I tried compiling manually from the git repo at https://github.com/solus-project/brisk-menu, and it gives a little more information in the error.
Code:
gentoo /usr/src/brisk-menu # meson --reconfigure --buildtype plain build --prefix=/usr
The Meson build system
Version: 0.51.2
Source dir: /usr/src/brisk-menu
Build dir: /usr/src/brisk-menu/build
Build type: native build
Project name: brisk-menu
Project version: 0.5.0
C compiler for the host machine: cc (gcc 9.2.0 "cc (Gentoo 9.2.0 p1) 9.2.0")
Build machine cpu family: x86_64
Build machine cpu: x86_64
Program meson_post_install.sh found: YES (/usr/src/brisk-menu/meson_post_install.sh)
Dependency gtk+-3.0 found: YES (cached)
Dependency gio-unix-2.0 found: YES (cached)
Dependency gdk-x11-3.0 found: YES (cached)
Dependency x11 found: YES (cached)
Dependency libmatepanelapplet-4.0 found: YES (cached)
Dependency libmate-menu found: YES (cached)
Dependency libnotify found: YES (cached)
Configuring config.h using configuration
Found pkg-config: /usr/bin/pkg-config (1.6.3)
Configuring com.solus_project.brisk.BriskMenu.mate-panel-applet using configuration
Configuring org.mate.panel.applet.BriskMenuFactory.service using configuration
Message:


    Build configuration:
    ====================

    prefix:                                 /usr
    datadir:                                /usr/share
    sysconfdir:                             /etc
    bindir:                                 /usr/bin
    libexecdir:                             /usr/libexec

    MATE Applet:
    ============

    applet type:                            stand-alone


Build targets in project: 15
Found ninja-1.9.0.git.kitware.dyndep-1.jobserver-1 at /usr/bin/ninja
gentoo /usr/src/brisk-menu # ninja -C build -j$(($(getconf _NPROCESSORS_ONLN)+1))
ninja: Entering directory `build'
[1/7] Compiling C object 'src/backend/...sk-backend@sta/apps_apps-section.c.o'.
FAILED: src/backend/5a57eed@@brisk-backend@sta/apps_apps-section.c.o
cc -Isrc/backend/5a57eed@@brisk-backend@sta -Isrc/backend -I../src/backend -Isrc/lib -I../src/lib -Isrc -I../src -I/usr/include/mate-menus -I/usr/include/gio-unix-2.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib64/libffi-3.3_rc0/include -I/usr/include/libmount -I/usr/include/blkid -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -std=c11 -fstack-protector -Wall -pedantic -Wstrict-prototypes -Wundef -fno-common -Werror-implicit-function-declaration -Wformat -Wformat-security -Werror=format-security -Wconversion -Wunused-variable -Wunreachable-code -W -D_FORTIFY_SOURCE=2 -DGDK_VERSION_MAX_ALLOWED=GDK_VERSION_3_18 -DGDK_VERSION_MIN_REQUIRED=GDK_VERSION_3_18 -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_44 -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_44 -fPIC -pthread -MD -MQ 'src/backend/5a57eed@@brisk-backend@sta/apps_apps-section.c.o' -MF 'src/backend/5a57eed@@brisk-backend@sta/apps_apps-section.c.o.d' -o 'src/backend/5a57eed@@brisk-backend@sta/apps_apps-section.c.o' -c ../src/backend/apps/apps-section.c
In file included from /usr/include/bits/libc-header-start.h:33,
                 from /usr/include/limits.h:26,
                 from /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include-fixed/limits.h:194,
                 from /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include-fixed/syslimits.h:7,
                 from /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include-fixed/limits.h:34,
                 from /usr/lib64/glib-2.0/include/glibconfig.h:11,
                 from /usr/include/glib-2.0/glib/gtypes.h:32,
                 from /usr/include/glib-2.0/glib/galloca.h:32,
                 from /usr/include/glib-2.0/glib.h:30,
                 from /usr/include/glib-2.0/gobject/gbinding.h:28,
                 from /usr/include/glib-2.0/glib-object.h:23,
                 from /usr/include/glib-2.0/gio/gioenums.h:28,
                 from /usr/include/glib-2.0/gio/giotypes.h:28,
                 from /usr/include/glib-2.0/gio/gio.h:26,
                 from /usr/include/gio-unix-2.0/gio/gdesktopappinfo.h:24,
                 from ../src/backend/apps/apps-item.h:14,
                 from ../src/backend/apps/apps-section.c:17:
/usr/include/features.h:382:4: warning: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Wcpp]
  382 | #  warning _FORTIFY_SOURCE requires compiling with optimization (-O)
      |    ^~~~~~~
In file included from ../src/backend/apps/apps-section.h:16,
                 from ../src/backend/apps/apps-section.c:18:
/usr/include/mate-menus/matemenu-tree.h:24:2: error: #error "libmate-menu should only be used if you understand that it's subject to frequent change, and is not supported as a fixed API/ABI or as part of the platform"
   24 | #error "libmate-menu should only be used if you understand that it's subject to frequent change, and is not supported as a fixed API/ABI or as part of the platform"
      |  ^~~~~
../src/backend/apps/apps-section.c: In function ‘brisk_apps_section_update_directory’:
../src/backend/apps/apps-section.c:88:14: warning: assignment to ‘const gchar *’ {aka ‘const char *’} from incompatible pointer type ‘GIcon *’ {aka ‘struct _GIcon *’} [-Wincompatible-pointer-types]
   88 |         icon = matemenu_tree_directory_get_icon(directory);
      |              ^
[2/7] Compiling C object 'src/backend/...sk-backend@sta/apps_apps-backend.c.o'.
FAILED: src/backend/5a57eed@@brisk-backend@sta/apps_apps-backend.c.o
cc -Isrc/backend/5a57eed@@brisk-backend@sta -Isrc/backend -I../src/backend -Isrc/lib -I../src/lib -Isrc -I../src -I/usr/include/mate-menus -I/usr/include/gio-unix-2.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib64/libffi-3.3_rc0/include -I/usr/include/libmount -I/usr/include/blkid -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -std=c11 -fstack-protector -Wall -pedantic -Wstrict-prototypes -Wundef -fno-common -Werror-implicit-function-declaration -Wformat -Wformat-security -Werror=format-security -Wconversion -Wunused-variable -Wunreachable-code -W -D_FORTIFY_SOURCE=2 -DGDK_VERSION_MAX_ALLOWED=GDK_VERSION_3_18 -DGDK_VERSION_MIN_REQUIRED=GDK_VERSION_3_18 -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_44 -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_44 -fPIC -pthread -MD -MQ 'src/backend/5a57eed@@brisk-backend@sta/apps_apps-backend.c.o' -MF 'src/backend/5a57eed@@brisk-backend@sta/apps_apps-backend.c.o.d' -o 'src/backend/5a57eed@@brisk-backend@sta/apps_apps-backend.c.o' -c ../src/backend/apps/apps-backend.c
In file included from /usr/include/bits/libc-header-start.h:33,
                 from /usr/include/limits.h:26,
                 from /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include-fixed/limits.h:194,
                 from /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include-fixed/syslimits.h:7,
                 from /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include-fixed/limits.h:34,
                 from /usr/lib64/glib-2.0/include/glibconfig.h:11,
                 from /usr/include/glib-2.0/glib/gtypes.h:32,
                 from /usr/include/glib-2.0/glib/galloca.h:32,
                 from /usr/include/glib-2.0/glib.h:30,
                 from /usr/include/glib-2.0/gobject/gbinding.h:28,
                 from /usr/include/glib-2.0/glib-object.h:23,
                 from /usr/include/glib-2.0/gio/gioenums.h:28,
                 from /usr/include/glib-2.0/gio/giotypes.h:28,
                 from /usr/include/glib-2.0/gio/gio.h:26,
                 from ../src/backend/apps/../item.h:14,
                 from ../src/backend/apps/../backend.h:14,
                 from ../src/backend/apps/apps-backend.h:14,
                 from ../src/backend/apps/apps-backend.c:17:
/usr/include/features.h:382:4: warning: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Wcpp]
  382 | #  warning _FORTIFY_SOURCE requires compiling with optimization (-O)
      |    ^~~~~~~
In file included from ../src/backend/apps/apps-section.h:16,
                 from ../src/backend/apps/apps-backend.c:19:
/usr/include/mate-menus/matemenu-tree.h:24:2: error: #error "libmate-menu should only be used if you understand that it's subject to frequent change, and is not supported as a fixed API/ABI or as part of the platform"
   24 | #error "libmate-menu should only be used if you understand that it's subject to frequent change, and is not supported as a fixed API/ABI or as part of the platform"
      |  ^~~~~
In file included from ../src/backend/apps/apps-backend.c:14:
../src/backend/apps/apps-backend.c: In function ‘_autofree_func_MateMenuTreeItem’:
../src/backend/apps/apps-backend.c:75:14: error: ‘MateMenuTreeItem’ undeclared (first use in this function); did you mean ‘MateMenuTreeIter’?
   75 | DEF_AUTOFREE(MateMenuTreeItem, matemenu_tree_item_unref)
      |              ^~~~~~~~~~~~~~~~
../src/lib/util.h:86:28: note: in definition of macro ‘DEF_AUTOFREE’
   86 |                 if (p && *(N **)p) {                                                               \
      |                            ^
../src/backend/apps/apps-backend.c:75:14: note: each undeclared identifier is reported only once for each function it appears in
   75 | DEF_AUTOFREE(MateMenuTreeItem, matemenu_tree_item_unref)
      |              ^~~~~~~~~~~~~~~~
../src/lib/util.h:86:28: note: in definition of macro ‘DEF_AUTOFREE’
   86 |                 if (p && *(N **)p) {                                                               \
      |                            ^
../src/lib/util.h:86:32: error: expected expression before ‘)’ token
   86 |                 if (p && *(N **)p) {                                                               \
      |                                ^
../src/backend/apps/apps-backend.c:75:1: note: in expansion of macro ‘DEF_AUTOFREE’
   75 | DEF_AUTOFREE(MateMenuTreeItem, matemenu_tree_item_unref)
      | ^~~~~~~~~~~~
../src/lib/util.h:87:33: error: expected expression before ‘)’ token
   87 |                         C(*(N **)p);                                                               \
      |                                 ^
../src/backend/apps/apps-backend.c:75:1: note: in expansion of macro ‘DEF_AUTOFREE’
   75 | DEF_AUTOFREE(MateMenuTreeItem, matemenu_tree_item_unref)
      | ^~~~~~~~~~~~
../src/backend/apps/apps-backend.c: In function ‘_autofree_func_MateMenuTree’:
../src/backend/apps/apps-backend.c:76:28: error: implicit declaration of function ‘matemenu_tree_unref’; did you mean ‘matemenu_tree_new’? [-Werror=implicit-function-declaration]
   76 | DEF_AUTOFREE(MateMenuTree, matemenu_tree_unref)
      |                            ^~~~~~~~~~~~~~~~~~~
../src/lib/util.h:87:25: note: in definition of macro ‘DEF_AUTOFREE’
   87 |                         C(*(N **)p);                                                               \
      |                         ^
../src/backend/apps/apps-backend.c: In function ‘brisk_apps_backend_build_from_tree’:
../src/backend/apps/apps-backend.c:356:16: error: implicit declaration of function ‘matemenu_tree_lookup’; did you mean ‘matemenu_tree_new’? [-Werror=implicit-function-declaration]
  356 |         tree = matemenu_tree_lookup(menu_id, MATEMENU_TREE_FLAGS_NONE);
      |                ^~~~~~~~~~~~~~~~~~~~
      |                matemenu_tree_new
../src/backend/apps/apps-backend.c:356:14: warning: assignment to ‘MateMenuTree *’ {aka ‘struct _MateMenuTree *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  356 |         tree = matemenu_tree_lookup(menu_id, MATEMENU_TREE_FLAGS_NONE);
      |              ^
../src/backend/apps/apps-backend.c: In function ‘brisk_apps_backend_recurse_root’:
../src/backend/apps/apps-backend.c:398:16: error: implicit declaration of function ‘matemenu_tree_directory_get_contents’; did you mean ‘matemenu_tree_directory_get_comment’? [-Werror=implicit-function-declaration]
  398 |         kids = matemenu_tree_directory_get_contents(directory);
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                matemenu_tree_directory_get_comment
../src/backend/apps/apps-backend.c:398:14: warning: assignment to ‘GSList *’ {aka ‘struct _GSList *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  398 |         kids = matemenu_tree_directory_get_contents(directory);
      |              ^
In file included from ../src/backend/apps/apps-backend.c:14:
../src/backend/apps/apps-backend.c:402:26: error: unknown type name ‘MateMenuTreeItem’
  402 |                 autofree(MateMenuTreeItem) *item = elem->data;
      |                          ^~~~~~~~~~~~~~~~
../src/lib/util.h:92:66: note: in definition of macro ‘autofree’
   92 | #define autofree(N) __attribute__((cleanup(_autofree_func_##N))) N
      |                                                                  ^
../src/backend/apps/apps-backend.c:404:25: error: implicit declaration of function ‘matemenu_tree_item_get_type’; did you mean ‘matemenu_tree_iter_get_type’? [-Werror=implicit-function-declaration]
  404 |                 switch (matemenu_tree_item_get_type(item)) {
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                         matemenu_tree_iter_get_type
../src/backend/apps/apps-backend.c:406:54: error: implicit declaration of function ‘MATEMENU_TREE_DIRECTORY’; did you mean ‘MATEMENU_TREE_CLASS’? [-Werror=implicit-function-declaration]
  406 |                         MateMenuTreeDirectory *dir = MATEMENU_TREE_DIRECTORY(item);
      |                                                      ^~~~~~~~~~~~~~~~~~~~~~~
      |                                                      MATEMENU_TREE_CLASS
../src/backend/apps/apps-backend.c:406:54: warning: initialization of ‘MateMenuTreeDirectory *’ {aka ‘struct MateMenuTreeDirectory *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
../src/backend/apps/apps-backend.c:412:34: error: implicit declaration of function ‘matemenu_tree_item_get_parent’; did you mean ‘matemenu_tree_entry_get_parent’? [-Werror=implicit-function-declaration]
  412 |                         parent = matemenu_tree_item_get_parent(item);
      |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                  matemenu_tree_entry_get_parent
../src/backend/apps/apps-backend.c:412:32: warning: assignment to ‘MateMenuTreeDirectory *’ {aka ‘struct MateMenuTreeDirectory *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  412 |                         parent = matemenu_tree_item_get_parent(item);
      |                                ^
../src/backend/apps/apps-backend.c:418:34: warning: assignment to ‘GSList *’ {aka ‘struct _GSList *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  418 |                         children = matemenu_tree_directory_get_contents(dir);
      |                                  ^
../src/backend/apps/apps-backend.c:440:52: error: implicit declaration of function ‘MATEMENU_TREE_ENTRY’; did you mean ‘MATEMENU_TREE_CLASS’? [-Werror=implicit-function-declaration]
  440 |                         MateMenuTreeEntry *entry = MATEMENU_TREE_ENTRY(item);
      |                                                    ^~~~~~~~~~~~~~~~~~~
      |                                                    MATEMENU_TREE_CLASS
../src/backend/apps/apps-backend.c:440:52: warning: initialization of ‘MateMenuTreeEntry *’ {aka ‘struct MateMenuTreeEntry *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
cc1: some warnings being treated as errors
[3/7] Compiling C object 'src/frontend...ntend@sta/classic_classic-window.c.o'.
FAILED: src/frontend/7a63256@@brisk-frontend@sta/classic_classic-window.c.o
cc -Isrc/frontend/7a63256@@brisk-frontend@sta -Isrc/frontend -I../src/frontend -Isrc/frontend/../../data -I../src/frontend/../../data -Isrc/lib -I../src/lib -Isrc/backend -I../src/backend -Isrc -I../src -I/usr/include/mate-menus -I/usr/include/gio-unix-2.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib64/libffi-3.3_rc0/include -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/gtk-3.0 -I/usr/include/pango-1.0 -I/usr/include/fribidi -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/uuid -I/usr/include/libdrm -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/atk-1.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -std=c11 -fstack-protector -Wall -pedantic -Wstrict-prototypes -Wundef -fno-common -Werror-implicit-function-declaration -Wformat -Wformat-security -Werror=format-security -Wconversion -Wunused-variable -Wunreachable-code -W -D_FORTIFY_SOURCE=2 -DGDK_VERSION_MAX_ALLOWED=GDK_VERSION_3_18 -DGDK_VERSION_MIN_REQUIRED=GDK_VERSION_3_18 -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_44 -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_44 -fPIC -pthread -MD -MQ 'src/frontend/7a63256@@brisk-frontend@sta/classic_classic-window.c.o' -MF 'src/frontend/7a63256@@brisk-frontend@sta/classic_classic-window.c.o.d' -o 'src/frontend/7a63256@@brisk-frontend@sta/classic_classic-window.c.o' -c ../src/frontend/classic/classic-window.c
In file included from /usr/include/bits/libc-header-start.h:33,
                 from /usr/include/limits.h:26,
                 from /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include-fixed/limits.h:194,
                 from /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include-fixed/syslimits.h:7,
                 from /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include-fixed/limits.h:34,
                 from /usr/lib64/glib-2.0/include/glibconfig.h:11,
                 from /usr/include/glib-2.0/glib/gtypes.h:32,
                 from /usr/include/glib-2.0/glib/galloca.h:32,
                 from /usr/include/glib-2.0/glib.h:30,
                 from /usr/include/glib-2.0/gobject/gbinding.h:28,
                 from /usr/include/glib-2.0/glib-object.h:23,
                 from /usr/include/glib-2.0/gio/gioenums.h:28,
                 from /usr/include/glib-2.0/gio/giotypes.h:28,
                 from /usr/include/glib-2.0/gio/gio.h:26,
                 from ../src/backend/item.h:14,
                 from ../src/backend/backend.h:14,
                 from ../src/frontend/classic/../menu-private.h:14,
                 from ../src/frontend/classic/classic-window.c:18:
/usr/include/features.h:382:4: warning: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Wcpp]
  382 | #  warning _FORTIFY_SOURCE requires compiling with optimization (-O)
      |    ^~~~~~~
In file included from ../src/frontend/classic/desktop-button.h:16,
                 from ../src/frontend/classic/classic-window.c:22:
/usr/include/mate-menus/matemenu-tree.h:24:2: error: #error "libmate-menu should only be used if you understand that it's subject to frequent change, and is not supported as a fixed API/ABI or as part of the platform"
   24 | #error "libmate-menu should only be used if you understand that it's subject to frequent change, and is not supported as a fixed API/ABI or as part of the platform"
      |  ^~~~~
[4/7] Compiling C object 'src/frontend...ntend@sta/classic_desktop-button.c.o'.
FAILED: src/frontend/7a63256@@brisk-frontend@sta/classic_desktop-button.c.o
cc -Isrc/frontend/7a63256@@brisk-frontend@sta -Isrc/frontend -I../src/frontend -Isrc/frontend/../../data -I../src/frontend/../../data -Isrc/lib -I../src/lib -Isrc/backend -I../src/backend -Isrc -I../src -I/usr/include/mate-menus -I/usr/include/gio-unix-2.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib64/libffi-3.3_rc0/include -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/gtk-3.0 -I/usr/include/pango-1.0 -I/usr/include/fribidi -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/uuid -I/usr/include/libdrm -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/atk-1.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -std=c11 -fstack-protector -Wall -pedantic -Wstrict-prototypes -Wundef -fno-common -Werror-implicit-function-declaration -Wformat -Wformat-security -Werror=format-security -Wconversion -Wunused-variable -Wunreachable-code -W -D_FORTIFY_SOURCE=2 -DGDK_VERSION_MAX_ALLOWED=GDK_VERSION_3_18 -DGDK_VERSION_MIN_REQUIRED=GDK_VERSION_3_18 -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_44 -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_44 -fPIC -pthread -MD -MQ 'src/frontend/7a63256@@brisk-frontend@sta/classic_desktop-button.c.o' -MF 'src/frontend/7a63256@@brisk-frontend@sta/classic_desktop-button.c.o.d' -o 'src/frontend/7a63256@@brisk-frontend@sta/classic_desktop-button.c.o' -c ../src/frontend/classic/desktop-button.c
In file included from /usr/include/bits/libc-header-start.h:33,
                 from /usr/include/limits.h:26,
                 from /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include-fixed/limits.h:194,
                 from /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include-fixed/syslimits.h:7,
                 from /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include-fixed/limits.h:34,
                 from /usr/lib64/glib-2.0/include/glibconfig.h:11,
                 from /usr/include/glib-2.0/glib/gtypes.h:32,
                 from /usr/include/glib-2.0/glib/galloca.h:32,
                 from /usr/include/glib-2.0/glib.h:30,
                 from /usr/include/glib-2.0/gobject/gbinding.h:28,
                 from /usr/include/glib-2.0/glib-object.h:23,
                 from ../src/frontend/classic/desktop-button.h:14,
                 from ../src/frontend/classic/desktop-button.c:17:
/usr/include/features.h:382:4: warning: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Wcpp]
  382 | #  warning _FORTIFY_SOURCE requires compiling with optimization (-O)
      |    ^~~~~~~
In file included from ../src/frontend/classic/desktop-button.h:16,
                 from ../src/frontend/classic/desktop-button.c:17:
/usr/include/mate-menus/matemenu-tree.h:24:2: error: #error "libmate-menu should only be used if you understand that it's subject to frequent change, and is not supported as a fixed API/ABI or as part of the platform"
   24 | #error "libmate-menu should only be used if you understand that it's subject to frequent change, and is not supported as a fixed API/ABI or as part of the platform"
      |  ^~~~~
ninja: build stopped: subcommand failed.
gentoo /usr/src/brisk-menu #


A little Googling indicates it's trying to apply some sort of source hardening that requires -O2 to be passed to ninja, but for the life of me I can't figure out how to do so. I tried disabling the source fortification by adding --disable-hardening and some other stuff to the meson command, and that was all invalid. I also tried passing the -O2 flag to ninja, and that was also invalid. I feel like I'm very close to getting this to build, but there's some magic sauce I'm missing here.

[Moderator edit: changed [quote] tags to [code] tags to preserve output layout. -Hu]
_________________
I occasionally post sober.
My overlay of Mate tools and desktop apps is here.


Last edited by Linx_ on Wed Oct 16, 2019 3:44 pm; edited 1 time in total
Back to top
View user's profile Send private message
Hu
Administrator
Administrator


Joined: 06 Mar 2007
Posts: 21724

PostPosted: Sun Sep 08, 2019 8:10 pm    Post subject: Re: Ninja error compiling brisk-menu Reply with quote

Linx_ wrote:
I'm trying to install brisk-menu on my ~amd64 from this ebuild https://gpo.zugaina.org/Overlays/jorgicio/mate-extra/brisk-menu

It fails with the following error about the ninja build environment:
Code:
-DGDK_VERSION_MAX_ALLOWED=GDK_VERSION_3_18 -DGDK_VERSION_MIN_REQUIRED=GDK_VERSION_3_18 -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_44 -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_44 -march=haswell -O2 -pthread -MD -MQ 'src/mate-applet/219b2c5@@brisk-menu@exe/applet.c.o' -MF 'src/mate-applet/219b2c5@@brisk-menu@exe/applet.c.o.d' -o 'src/mate-applet/219b2c5@@brisk-menu@exe/applet.c.o' -c ../brisk-menu-9999/src/mate-applet/applet.c
ninja: build stopped: subcommand failed.
This just tells you that a command run by ninja failed. You need to look higher up in the output for what failed, and why.
Linx_ wrote:
I tried compiling manually from the git repo at https://github.com/solus-project/brisk-menu, and it gives a little more information in the error.
Code:
gentoo /usr/src/brisk-menu # meson --reconfigure --buildtype plain build --prefix=/usr
This looks weird. Were you trying to build as root?
Linx_ wrote:
Code:

FAILED: src/backend/5a57eed@@brisk-backend@sta/apps_apps-section.c.o
In file included from /usr/include/bits/libc-header-start.h:33,
                 from ../src/backend/apps/apps-section.c:17:
/usr/include/features.h:382:4: warning: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Wcpp]
  382 | #  warning _FORTIFY_SOURCE requires compiling with optimization (-O)
You are building without optimization. This is probably not what you want. To enable optimization, add -O2 to your CFLAGS.
Linx_ wrote:
Code:

In file included from ../src/backend/apps/apps-section.h:16,
                 from ../src/backend/apps/apps-section.c:18:
/usr/include/mate-menus/matemenu-tree.h:24:2: error: #error "libmate-menu should only be used if you understand that it's subject to frequent change, and is not supported as a fixed API/ABI or as part of the platform"
   24 | #error "libmate-menu should only be used if you understand that it's subject to frequent change, and is not supported as a fixed API/ABI or as part of the platform"
This is the first real error. The program is trying to include a header that is hostile to being used, and did not disarm this error.
Linx_ wrote:
Code:

In file included from ../src/backend/apps/apps-backend.c:14:
../src/backend/apps/apps-backend.c: In function ‘_autofree_func_MateMenuTreeItem’:
../src/backend/apps/apps-backend.c:75:14: error: ‘MateMenuTreeItem’ undeclared (first use in this function); did you mean ‘MateMenuTreeIter’?
This may be why that #error exists. Your target program is not compatible with the version of the headers it is using. It may have worked once, but the headers it uses are now not sufficient.
Linx_ wrote:
A little Googling indicates it's trying to apply some sort of source hardening that requires -O2 to be passed to ninja, but for the life of me I can't figure out how to do so.
Hardening is good to have, but is not your problem here.
Linx_ wrote:
I tried disabling the source fortification by adding --disable-hardening and some other stuff to the meson command, and that was all invalid.
You should not disable hardening unless you can explain why that is a good idea.
Back to top
View user's profile Send private message
Linx_
n00b
n00b


Joined: 01 Jul 2018
Posts: 63

PostPosted: Sun Sep 08, 2019 8:23 pm    Post subject: Re: Ninja error compiling brisk-menu Reply with quote

Hu wrote:
You are building without optimization. This is probably not what you want. To enable optimization, add -O2 to your CFLAGS.

Yes, that's what I thought, but I have it already unless there is a separate place I have to add it for ninja. Here is my whole make.conf:
Code:
# These settings were set by the catalyst build script that automatically
# built this stage.
# Please consult /usr/share/portage/config/make.conf.example for a more
# detailed example.
COMMON_FLAGS="-march=haswell -O2 -pipe"
CFLAGS="${COMMON_FLAGS}"
CXXFLAGS="${COMMON_FLAGS}"
FCFLAGS="${COMMON_FLAGS}"
FFLAGS="${COMMON_FLAGS}"

# NOTE: This stage was built with the bindist Use flag enabled
PORTDIR="/usr/portage"
DISTDIR="/usr/portage/distfiles"
PKGDIR="/usr/portage/packages"

# This sets the language of build output to English.
# Please keep this setting intact when reporting bugs.
LC_MESSAGES=C
ACCEPT_KEYWORDS="~amd64"
MAKEOPTS="-j13"
EMERGE_DEFAULT_OPTS="--jobs 13"
USE="branding cleartype corefonts -gnome ieee1394 mate scanner truetype type1 user-session video-thumbnails xinerama"
VIDEO_CARDS="nvidia"
L10N="en-US"
ACCEPT_LICENSE="*"
QEMU_USER_TARGETS="aarch64 arm"
RUBY_TARGETS="ruby26"


[Moderator edit: changed [quote] tags to [code] tags to preserve output layout. -Hu]
_________________
I occasionally post sober.
My overlay of Mate tools and desktop apps is here.
Back to top
View user's profile Send private message
Hu
Administrator
Administrator


Joined: 06 Mar 2007
Posts: 21724

PostPosted: Sun Sep 08, 2019 9:32 pm    Post subject: Reply with quote

That will set it when you use Portage to build. Your output showed it not being set when you built as root outside Portage. Where do you have it that ninja would read when called from outside Portage?
Back to top
View user's profile Send private message
Linx_
n00b
n00b


Joined: 01 Jul 2018
Posts: 63

PostPosted: Sun Sep 08, 2019 10:23 pm    Post subject: Reply with quote

Hu wrote:
That will set it when you use Portage to build. Your output showed it not being set when you built as root outside Portage. Where do you have it that ninja would read when called from outside Portage?

Right, but you said to add it to make.conf, which it already is. I know it's not passed outside of portage, but I can't figure out how to pass it from the command line. All of the flags I've added to the command line to try have been invalid. How would you go about passing CFLAGS=-O2 to this particular build command?

Also, since I'm getting the same (or very similar) error building from the ebuild, I would think I need to either fix my make.conf or fix the ebuild.

[EDIT] Part of the problem is that I have no idea what meson and ninja really are or how they relate to GCC. I'm not a developer and I've never used them before. I've been building software with ./configure make make install for 20 years, but I've never seen a setup like this.
_________________
I occasionally post sober.
My overlay of Mate tools and desktop apps is here.
Back to top
View user's profile Send private message
Hu
Administrator
Administrator


Joined: 06 Mar 2007
Posts: 21724

PostPosted: Sun Sep 08, 2019 11:38 pm    Post subject: Reply with quote

Linx_ wrote:
Hu wrote:
That will set it when you use Portage to build. Your output showed it not being set when you built as root outside Portage. Where do you have it that ninja would read when called from outside Portage?
Right, but you said to add it to make.conf, which it already is.
Where did I say that?
Linx_ wrote:
I know it's not passed outside of portage, but I can't figure out how to pass it from the command line. All of the flags I've added to the command line to try have been invalid. How would you go about passing CFLAGS=-O2 to this particular build command?
I don't know. I don't use Ninja. If I were to guess, I would guess that you do it like you do for most build systems: put it in the process environment and let the tool discover it there. That won't fix your core problem though. It will just resolve the warning about hardening.
Back to top
View user's profile Send private message
GDH-gentoo
Veteran
Veteran


Joined: 20 Jul 2019
Posts: 1549
Location: South America

PostPosted: Mon Sep 09, 2019 4:39 pm    Post subject: Reply with quote

The issue here is that two files, src/backend/apps/apps-section.h and src/frontend/classic/desktop-button.h, include <matemenu-tree.h> (from mate-menus), and that says:

Code:
#ifndef MATEMENU_I_KNOW_THIS_IS_UNSTABLE
#error "libmate-menu should only be used if you understand that it's subject to frequent change, and is not supported as a fixed API/ABI or as part of the platform"
#endif

However, the repository the ebuild is fetching the source code from is deprecated. The current one has newer versions with fixed files: desktop-button.h no longer includes <matemenu-tree.h>, and apps-section.h defines MATEMENU_I_KNOW_THIS_IS_UNSTABLE before doing so. You should ask the ebuild repository's maintainer to bump brisk-menu's version and to update its source repository's URL.
Back to top
View user's profile Send private message
Linx_
n00b
n00b


Joined: 01 Jul 2018
Posts: 63

PostPosted: Wed Oct 16, 2019 3:44 pm    Post subject: Reply with quote

GDH-gentoo wrote:
The issue here is that two files, src/backend/apps/apps-section.h and src/frontend/classic/desktop-button.h, include <matemenu-tree.h> (from mate-menus), and that says:

Code:
#ifndef MATEMENU_I_KNOW_THIS_IS_UNSTABLE
#error "libmate-menu should only be used if you understand that it's subject to frequent change, and is not supported as a fixed API/ABI or as part of the platform"
#endif

However, the repository the ebuild is fetching the source code from is deprecated. The current one has newer versions with fixed files: desktop-button.h no longer includes <matemenu-tree.h>, and apps-section.h defines MATEMENU_I_KNOW_THIS_IS_UNSTABLE before doing so. You should ask the ebuild repository's maintainer to bump brisk-menu's version and to update its source repository's URL.


Sorry I'm slow responding, but switching repos fixed everything. Marking solved. I had no idea that was deprecated. There really should be clearer documentation directing the user to the new repo, because that's the only one that turns up in a Google search. Thanks.
_________________
I occasionally post sober.
My overlay of Mate tools and desktop apps is here.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Unsupported Software All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum