From 927d7f55bac1b3218bc1b1e569d72731aa861b13 Mon Sep 17 00:00:00 2001 From: henderkes Date: Thu, 18 Sep 2025 22:47:01 +0200 Subject: [PATCH] make sure -ldl is not taken as needed, problem on EL8 --- src/SPC/builder/unix/library/imagemagick.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/SPC/builder/unix/library/imagemagick.php b/src/SPC/builder/unix/library/imagemagick.php index 2d312549..2e795a0d 100644 --- a/src/SPC/builder/unix/library/imagemagick.php +++ b/src/SPC/builder/unix/library/imagemagick.php @@ -32,7 +32,10 @@ trait imagemagick ); // special: linux-static target needs `-static` - $ldflags = SPCTarget::isStatic() ? ('-static -ldl') : '-ldl'; + $ldflags = SPCTarget::isStatic() ? '-static -ldl' : '-ldl'; + if (str_contains($this->builder->arch_ld_flags, '-Wl,--as-needed')) { + $ldflags = str_replace('-ldl', '-Wl,--no-as-needed -ldl -Wl,--as-needed', $ldflags); + } // special: macOS needs -iconv $libs = SPCTarget::getTargetOS() === 'Darwin' ? '-liconv' : '';