Tried reproducing the issue of sysdig build failure on ppc64el. On checking the logs minutely, got to know that the issue is due to use of luaL_setfuncs().

The error was
chisel.cpp:985:9: error: ‘luaL_setfuncs’ was not declared in this scope

This happens because libluajit-5.1-dev does not support ppc64el. As a result, the current Build-Depends fallback to liblua5.1-0-dev  and still causes incompatibility, since luaL_setfuncs is only available in Lua ≥5.2. I propose replacing the conditional dependency with a direct one on liblua5.3-dev, which provides full support for ppc64el and the required API.

I have also tested cross-building sysdig for other architectures (including amd64, arm64, armel, armhf, mips64el, riscv64 and s390x) using sbuild, and all of them successfully build with liblua5.3-dev instead of libluajit-5.1-dev. This suggests that the switch does not break existing builds and improves compatibility for architectures like ppc64el that are not supported by LuaJIT. I have attached the patch in this mail.

From 09dba5336abf9e278b698d31c1c8cbc3856fd4fe Mon Sep 17 00:00:00 2001
From: Tanushree Shah <[email protected]>
Date: Fri, 8 Aug 2025 14:48:10 +0530
Subject: [PATCH] Replace libluajit-5.1-dev with liblua5.3-dev in Build-Depends
 to fix the build in ppc64el.

---
 debian/control | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/debian/control b/debian/control
index 58e570d..c213409 100644
--- a/debian/control
+++ b/debian/control
@@ -20,7 +20,7 @@ Build-Depends: cmake,
                zlib1g-dev,
                uthash-dev,
 # Same as the dependency in falcosecurity-libs
-               libluajit-5.1-dev [amd64 arm64 armel armhf i386 mips64el s390x riscv64 ] | liblua5.1-0-dev
+               liblua5.3-dev
 Standards-Version: 4.5.0
 Homepage: https://www.sysdig.com/
 Vcs-Git: https://salsa.debian.org/debian/sysdig.git
-- 
2.47.2

Reply via email to