Opened 14 hours ago
#11382 new enhancement
Default build assumes /tmp allows exec.
Reported by: | Tom | Owned by: | |
---|---|---|---|
Priority: | normal | Component: | undetermined |
Version: | unspecified | Keywords: | TMPDIR, noexec, building |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | no | |
Analyzed by developer: | no |
Description
Summary of the bug:
The default configure and build process puts temporary files in the /tmp dir instead of the build dir.
Refer to for what I'm talking about. https://git.ffmpeg.org/gitweb/ffmpeg.git/commit/be0d52ab7875f91d783feba3ea12f338dfd08d45
The bug is that this is not of this time and /tmp being mounted with noexec is not at all weird in namespaces or similar closed build environments.
Which makes ffmpeg not build.
How to reproduce:
Try to compile ffmpeg in an environment where /tmp is mounted noexec.
You get:
./configure Unable to create and execute files in /tmp. Set the TMPDIR environment variable to another directory and make sure that it is not mounted noexec. Sanity test failed.
While the workaround provided is functional, it begs the question why on earth ffmpeg doesn't just put its scripts in the build dir like any other project does. This practice of using /tmp feels like it was done before out-of-source builds became a standard practice.