[GH-ISSUE #3661] Error w/o 'gawk' and no apparmor on Ubuntu #2307

Closed
opened 2026-05-05 08:59:44 -06:00 by gitea-mirror · 4 comments
Owner

Originally created by @Fred-Barclay on GitHub (Oct 10, 2020).
Original GitHub issue: https://github.com/netblue30/firejail/issues/3661

When compiling from source on Ubuntu 20.04, compilation fails with the following error unless gawk is installed (it isn't by default), even without enabling apparmor (see 01cdce7435). I'm not sure if this is a bug, expected behavior that needs documenting, or something that is documented and I just haven't seen it.

make[1]: Leaving directory '/home/fred/firejail/src/lib'
make -C src/man
make[1]: Entering directory '/home/fred/firejail/src/man'
./preproc.awk -DHAVE_X11 -DHAVE_PRIVATE_HOME  -DHAVE_OVERLAYFS -DHAVE_DBUSPROXY -DHAVE_FIRETUNNEL -DHAVE_GLOBALCFG -DHAVE_CHROOT -DHAVE_NETWORK -DHAVE_USERNS -DHAVE_FILE_TRANSFER -DHAVE_WHITELIST  < firecfg.txt > firecfg.man
/bin/sh: 1: ./preproc.awk: not found
make[1]: *** [Makefile:5: firecfg.man] Error 127
make[1]: Leaving directory '/home/fred/firejail/src/man'
make: *** [Makefile:43: src/man] Error 2

Compile process is ./configure --prefix=/usr && make && sudo make install-strip. Config options reported by firejail are

Configuration options:
   prefix: /usr
   sysconfdir: /etc
   apparmor:
   global config: -DHAVE_GLOBALCFG
   chroot: -DHAVE_CHROOT
   network: -DHAVE_NETWORK
   user namespace: -DHAVE_USERNS
   X11 sandboxing support: -DHAVE_X11
   whitelisting: -DHAVE_WHITELIST
   private home support: -DHAVE_PRIVATE_HOME
   file transfer support: -DHAVE_FILE_TRANSFER
   overlayfs support: -DHAVE_OVERLAYFS
   DBUS proxy support: -DHAVE_DBUSPROXY
   Manpage support: -DHAVE_MAN
   firetunnel support: -DHAVE_FIRETUNNEL
   busybox workaround: no
   Spectre compiler patch: yes
   EXTRA_LDFLAGS:
   EXTRA_CFLAGS:  -fstack-clash-protection -fstack-protector-strong
   fatal warnings:
   Gcov instrumentation:
   Install contrib scripts: yes
   SELinux labeling support:
   Install as a SUID executable: yes
Originally created by @Fred-Barclay on GitHub (Oct 10, 2020). Original GitHub issue: https://github.com/netblue30/firejail/issues/3661 When compiling from source on Ubuntu 20.04, compilation fails with the following error unless `gawk` is installed (it isn't by default), even **without** enabling apparmor (see 01cdce743568345bf9c6c6b34a68fa39df723f0e). I'm not sure if this is a bug, expected behavior that needs documenting, or something that is documented and I just haven't seen it. ``` make[1]: Leaving directory '/home/fred/firejail/src/lib' make -C src/man make[1]: Entering directory '/home/fred/firejail/src/man' ./preproc.awk -DHAVE_X11 -DHAVE_PRIVATE_HOME -DHAVE_OVERLAYFS -DHAVE_DBUSPROXY -DHAVE_FIRETUNNEL -DHAVE_GLOBALCFG -DHAVE_CHROOT -DHAVE_NETWORK -DHAVE_USERNS -DHAVE_FILE_TRANSFER -DHAVE_WHITELIST < firecfg.txt > firecfg.man /bin/sh: 1: ./preproc.awk: not found make[1]: *** [Makefile:5: firecfg.man] Error 127 make[1]: Leaving directory '/home/fred/firejail/src/man' make: *** [Makefile:43: src/man] Error 2 ``` Compile process is `./configure --prefix=/usr && make && sudo make install-strip`. Config options reported by firejail are ``` Configuration options: prefix: /usr sysconfdir: /etc apparmor: global config: -DHAVE_GLOBALCFG chroot: -DHAVE_CHROOT network: -DHAVE_NETWORK user namespace: -DHAVE_USERNS X11 sandboxing support: -DHAVE_X11 whitelisting: -DHAVE_WHITELIST private home support: -DHAVE_PRIVATE_HOME file transfer support: -DHAVE_FILE_TRANSFER overlayfs support: -DHAVE_OVERLAYFS DBUS proxy support: -DHAVE_DBUSPROXY Manpage support: -DHAVE_MAN firetunnel support: -DHAVE_FIRETUNNEL busybox workaround: no Spectre compiler patch: yes EXTRA_LDFLAGS: EXTRA_CFLAGS: -fstack-clash-protection -fstack-protector-strong fatal warnings: Gcov instrumentation: Install contrib scripts: yes SELinux labeling support: Install as a SUID executable: yes ```
Author
Owner

@reinerh commented on GitHub (Oct 10, 2020):

gawk is a new build dependency required for pre-processing manpages. It is not related to AppArmor.

<!-- gh-comment-id:706574858 --> @reinerh commented on GitHub (Oct 10, 2020): gawk is a new build dependency required for pre-processing manpages. It is not related to AppArmor.
Author
Owner

@reinerh commented on GitHub (Oct 10, 2020):

Maybe we should check for gawk during configure?

Edit: though it should not be needed when building with --disable-man.

<!-- gh-comment-id:706575610 --> @reinerh commented on GitHub (Oct 10, 2020): Maybe we should check for gawk during configure? Edit: though it should not be needed when building with `--disable-man`.
Author
Owner

@Fred-Barclay commented on GitHub (Oct 10, 2020):

I think --disable-man is an edge case, so we'd probably better check for gawk.

<!-- gh-comment-id:706578580 --> @Fred-Barclay commented on GitHub (Oct 10, 2020): I think `--disable-man` is an edge case, so we'd probably better check for gawk.
Author
Owner

@reinerh commented on GitHub (Oct 10, 2020):

I added the check for gawk only when manpages are also built (i.e. they are not disabled via --disable-man).

<!-- gh-comment-id:706597097 --> @reinerh commented on GitHub (Oct 10, 2020): I added the check for gawk only when manpages are also built (i.e. they are not disabled via `--disable-man`).
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: github-starred/firejail#2307
No description provided.