Building Falco with bundled dependencies fails on a fresh Ubuntu 24.04.2 LTS
envgap__falcosecurity__falco-3532
01 / FAILURE SIGNATURE
As reported upstream
/home/ubuntu/falco/userspace/engine/falco_utils.cpp:26:10: fatal error: openssl/evp.h: No such file or directory
Not a benchmark task.
- In a clean container the reported failure did not reproduce, or the known fix did not make the project run.
02 / ENVIRONMENT RECIPE
- Base commit
68465f6f2e98ce0bdafd290f06d807013b2261d0- Manifest
userspace/engine/CMakeLists.txt- Reproduce
Awaiting issue-specific recipe- Run under trace
Awaiting a meaningful runtime command
03 / ORIGINAL ISSUE TEXT
falcosecurity/falco #3532 · read the original issue
**Describe the bug**
Compilation of Falco with bundled dependencies fails on a fresh (+ sudo apt-get dist-upgrade) installation of Ubuntu 24.04.2 LTS despite of dependencies listed in https://falco.org/docs/developer-guide/source/#build-falco which are "git cmake clang build-essential linux-tools-common linux-tools-generic libelf-dev".
The building process stops at the following error:
...
[ 78%] Built target sinsp
[ 78%] Building CXX object userspace/engine/CMakeFiles/falco_engine.dir/falco_common.cpp.o
[ 78%] Building CXX object userspace/engine/CMakeFiles/falco_engine.dir/falco_engine.cpp.o
[ 79%] Building CXX object userspace/engine/CMakeFiles/falco_engine.dir/falco_load_result.cpp.o
[ 79%] Building CXX object userspace/engine/CMakeFiles/falco_engine.dir/falco_utils.cpp.o
/home/ubuntu/falco/userspace/engine/falco_utils.cpp:26:10: fatal error: openssl/evp.h: No such file or directory
26 | #include <openssl/evp.h>
| ^~~~~~~~~~~~~~~
compilation terminated.
make[3]: *** [userspace/engine/CMakeFiles/falco_engine.dir/build.make:118: userspace/engine/CMakeFiles/falco_engine.dir/falco_utils.cpp.o] Error 1
make[2]: *** [CMakeFiles/Makefile2:2743: userspace/engine/CMakeFiles/falco_engine.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:2852: userspace/falco/CMakeFiles/falco.dir/rule] Error 2
make: *** [Makefile:1191: falco] Error 2
Workaround: build first openssl and then run again the build command.
<!-- A clear and concise description of what the bug is. -->
**How to reproduce it**
1. install a clean Ubuntu 24.04, update packages and install build dependencies as described in https://falco.org/docs/developer-guide/source/#build-falco
2. git clone https://github.com/falcosecurity/falco.git
3. cd falco && mkdir build && cd build
4. cmake -DUSE_BUNDLED_DEPS=ON ..
5. make falco
...
make: *** [Makefile:1191: falco] Error 2
...
6. make openssl
...
[100%] Built target openssl
...
8. make falco
...
[ 78%] Built target sinsp
[ 78%] Building CXX object userspace/engine/CMakeFiles/falco_engine.dir/falco_utils.cpp.o
[ 78%] Building CXX object userspace/engine/CMakeFiles/falco_engine.dir/filter_ruleset.cpp.o
...
[100%] Linking CXX executable falco
[100%] Built target falco
<!-- Minimal and precise steps to reproduce the bug. -->
**Expected behaviour**
There should not be need to build 'openssl' separately. Falco should compile simply by running "make falco".
<!-- A clear and concise description of what you expected to happen. -->
**Screenshots**
<!-- If applicable, add screenshots to help explain your problem. -->
**Environment**
<!-- Please complete the following info. -->
- Falco version:
$ git log
commit 18f99582da2899c82de1dd17a5c82cf70694fdc2 (HEAD -> master, origin/master, origin/HEAD)
Falco version: 0.0.0
Libs version: dd929392e440dc12fdc949c03375f06a7ddcfc59
Plugin API: 3.10.0
Engine: 0.47.0
Driver:
API version: 8.0.0
Schema version: 3.6.0
Default driver: dd929392e440dc12fdc949c03375f06a7ddcfc59
<!-- Use "falco --version". -->
```
- System info: Linux version 6.8.0-57-generic (buildd@lcy02-amd64-040) (x86_64-linux-gnu-gcc-13 (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0, GNU ld (GNU Binutils for Ubuntu) 2.42) #59-Ubuntu SMP PREEMPT_DYNAMIC Sat Mar 15 17:40:59 UTC 2025
```
<!-- Falco has a built-in support command you can use "falco --support | jq .system_info" -->
PRETTY_NAME="Ubuntu 24.04.2 LTS"
NAME="Ubuntu"
VERSION_ID="24.04"
VERSION="24.04.2 LTS (Noble Numbat)"
VERSION_CODENAME=noble
<!-- Eg., output of "cat /etc/os-release". -->
```
- Kernel: 6.8.0-57-generic \#59-Ubuntu SMP PREEMPT_DYNAMIC Sat Mar 15 17:40:59 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
```
<!-- Eg., output of "uname -a". -->
- Installation method: source
<!-- Eg., Kubernetes, RPM, DEB, from source? -->
**Additional context**
<!-- Add any other context about the problem here. -->
04 / LABELS
Labels from the report text only; not yet run
No supported category has been assigned.
Label rules and the text that matched
[]