emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Build failure: 'seccomp-filter'


From: Colin Baxter
Subject: Re: Build failure: 'seccomp-filter'
Date: Sun, 11 Apr 2021 16:40:48 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux)

>>>>> Philipp Stephani <p.stephani2@gmail.com> writes:

    > Am So., 11. Apr. 2021 um 16:40 Uhr schrieb Philipp Stephani
    > <p.stephani2@gmail.com>:
    >> 
    >> Am So., 11. Apr. 2021 um 16:31 Uhr schrieb Philipp
    >> <p.stephani2@gmail.com>:
    >> >
    >> >
    >> >
    >> > > Am 11.04.2021 um 12:45 schrieb Colin Baxter
    >> <m43cap@yandex.com>:
    >> > >
    >> > >>>>>> Philipp Stephani <p.stephani2@gmail.com> writes:
    >> > >
    >> > >> Am So., 11. Apr. 2021 um 09:51 Uhr schrieb Colin Baxter > >>
    >> <m43cap@yandex.com>:
    >> > >>>
    >> > >>>>>>>> Eli Zaretskii <eliz@gnu.org> writes:
    >> > >>>
    >> > >>>>> From: Colin Baxter <m43cap@yandex.com> Cc: Date: Sun, 11
    >> Apr > >>> 2021 >> 07:45:19 +0100
    >> > >>>>>
    >> > >>>>> I get a build with the latest pull of emacs:
    >> > >>>>>
    >> > >>>>> Makefile:415: recipe for target 'seccomp-filter' failed >
    >> >>> make[1]: >> *** [seccomp-filter] Error 1 make[1]: Leaving >
    >> >>> directory >> '/home/redknight/git/emacs/lib-src'
    >> Makefile:396: > >>> recipe for >> target 'lib-src' failed make:
    >> *** [lib-src] Error 2
    >> > >>>
    >> > >>>> Are there no error or warning messages before the > >>>
    >> "Makefile:415" > one?  If there are, please show all the > >>>
    >> messages.
    >> > >>>
    >> > >>> Yes, sorry, I missed the earlier errors. Here is the full
    >> list > >>> beginning after the attempt to compile seccomp-filter:
    >> > >>>
    >> > >>> ---------- Begin error list ------------
    >> > >>>
    >> > >>> CCLD seccomp-filter seccomp-filter.c: In function ‘main’: >
    >> >>> seccomp-filter.c:142:23: error: ‘SCMP_ACT_KILL_PROCESS’ > >>>
    >> undeclared (first use in this function) ctx = seccomp_init > >>>
    >> (SCMP_ACT_KILL_PROCESS); ^~~~~~~~~~~~~~~~~~~~~
    >> > >
    >> > >
    >> > >> This is an interesting failure. Looks like seccomp.h exists
    >> on > >> your system, but doesn't contain the right definitions?
    >> What does > >> your config.log say about seccomp.h (not
    >> linux/seccomp.h) and > >> seccomp_init?
    >> > >
    >> > > I have appended below the occurrences in config.log for
    >> seccomp.h. (Do > > you want me to attach the whole config.log in
    >> a second email?) The only > > other mentions are multiple lines
    >> of the form
    >> > >
    >> > > 5090:| #define HAVE_LINUX_SECCOMP_H 1
    >> > >
    >> > > ending with
    >> > >
    >> > > 27758:ac_cv_header_linux_seccomp_h=yes > >
    >> 27771:ac_cv_header_seccomp_h=yes > > 29332:#define
    >> HAVE_LINUX_SECCOMP_H 1
    >> > >
    >> > > Hope this helps.
    >> > >
    >> > > ---------- Begin relevant portion of config.log -----------
    >> > >
    >> > > configure:17719: checking linux/seccomp.h usability > >
    >> configure:17719: gcc -c -g3 -O2 -pthread -isystem > >
    >> /usr/include/librsvg-2.0 -isystem /usr/include/gdk-pixbuf-2.0 > >
    >> -isystem /usr/include/libpng16 -isystem /usr/include/cairo > >
    >> -isystem /usr/include/glib-2.0 -isystem > >
    >> /usr/lib/i386-linux-gnu/glib-2.0/include -isystem > >
    >> /usr/include/pixman-1 -isystem /usr/include/freetype2 -isystem >
    >> > /usr/include/libpng16 -isystem /usr/include/cairo -isystem > >
    >> /usr/include/glib-2.0 -isystem > >
    >> /usr/lib/i386-linux-gnu/glib-2.0/include -isystem > >
    >> /usr/include/pixman-1 -isystem /usr/include/freetype2 -isystem >
    >> > /usr/include/libpng16 conftest.c >&5 > > configure:17719: $? =
    >> 0 > > configure:17719: result: yes > > configure:17719: checking
    >> linux/seccomp.h presence > > configure:17719: gcc -E conftest.c >
    >> > configure:17719: $? = 0 > > configure:17719: result: yes > >
    >> configure:17719: checking for linux/seccomp.h > >
    >> configure:17719: result: yes > > configure:17731: checking
    >> seccomp.h usability > > configure:17731: gcc -c -g3 -O2 -pthread
    >> -isystem > > /usr/include/librsvg-2.0 -isystem
    >> /usr/include/gdk-pixbuf-2.0 > > -isystem /usr/include/libpng16
    >> -isystem /usr/include/cairo > > -isystem /usr/include/glib-2.0
    >> -isystem > > /usr/lib/i386-linux-gnu/glib-2.0/include -isystem >
    >> > /usr/include/pixman-1 -isystem /usr/include/freetype2 -isystem
    >> > > /usr/include/libpng16 -isystem /usr/include/cairo -isystem >
    >> > /usr/include/glib-2.0 -isystem > >
    >> /usr/lib/i386-linux-gnu/glib-2.0/include -isystem > >
    >> /usr/include/pixman-1 -isystem /usr/include/freetype2 -isystem >
    >> > /usr/include/libpng16 conftest.c >&5 > > configure:17731: $? =
    >> 0 > > configure:17731: result: yes > > configure:17731: checking
    >> seccomp.h presence > > configure:17731: gcc -E conftest.c > >
    >> configure:17731: $? = 0 > > configure:17731: result: yes > >
    >> configure:17731: checking for seccomp.h > > configure:17731:
    >> result: yes > > configure:17733: checking for seccomp_init in
    >> -lseccomp > > configure:17758: gcc -o conftest -g3 -O2 -pthread
    >> -isystem > > /usr/include/librsvg-2.0 -isystem
    >> /usr/include/gdk-pixbuf-2.0 > > -isystem /usr/include/libpng16
    >> -isystem /usr/include/cairo > > -isystem /usr/include/glib-2.0
    >> -isystem > > /usr/lib/i386-linux-gnu/glib-2.0/include -isystem >
    >> > /usr/include/pixman-1 -isystem /usr/include/freetype2 -isystem
    >> > > /usr/include/libpng16 -isystem /usr/include/cairo -isystem >
    >> > /usr/include/glib-2.0 -isystem > >
    >> /usr/lib/i386-linux-gnu/glib-2.0/include -isystem > >
    >> /usr/include/pixman-1 -isystem /usr/include/freetype2 -isystem >
    >> > /usr/include/libpng16 conftest.c -lseccomp -lX11 -lcairo >&5 >
    >> > configure:17758: $? = 0 > > configure:17767: result: yes
    >> > >
    >> > > ---------- End relevant portion of config.log ----
    >> > >
    >> > >
    >> >
    >> >
    >> > OK, looks like libseccomp is available and should be working.
    >> > Does /usr/include/seccomp.h contain at least some of the
    >> symbols > the compiler complains about?
    >> >
    >> 
    >> Looking at
    >> https://github.com/seccomp/libseccomp/blob/main/CHANGELOG, I
    >> guess we need at least version 2.4.0 of libseccomp. I'll see that
    >> I can add a few more checks to configure.ac.

    > With commit 725fc96b706c57ef8ceca5e7d82b175d9a72e845, I've now
    > switched to using pkg-config, which seems cleaner anyway.

This seems to be successful. With commit 725fc96b70, I can now build
emacs-28.0.50.

Thanks you.

Best wishes,

Colin Baxter.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]