http://lists.altlinux.org/pipermail/devel/2006-March/030452.html При поиске зависимостей в %buildroot не учитывается, что бинарные модули могут иметь установленный RPATH. Без этого не удается загрузить требуемые библиотеки.
Попробуйте %define __spec_autodep_custom_pre export LD_LIBRARY_PATH=%buildroot%_libdir/libsvn_swig
ping
на subversion 1.5.4 ошибка с этими исправлениями сохраняется
Я проверил сборку subversion-1.6.17-alt2 с указанным в 1-ом комментарии define'ом и сборка прошла успешной. Поэтому мне кажется, что blocker тут не очень уместен. В принципе, можно улучшить perl.req, заставив его искать lib*.so.* файлы рекурсивно по всем каталогам в %buildroot%_libdir и добавлять все такие найденные каталоги в LD_LIBRARY_PATH. Как-то так: diff --git a/perl.req b/perl.req index c6e2967..df23bbd 100755 --- a/perl.req +++ b/perl.req @@ -4,6 +4,7 @@ use strict; use Config qw(%Config); use PerlReq::Utils qw(argv inc explode mod2dep path2dep); +use File::Find; sub pod2usage { eval { require Pod::Usage } or die $@; @@ -188,10 +189,16 @@ sub do_deparse { } # adjust LD_LIBRARY_PATH if there are libraries inside buildroot # spotted by Yury Konovalov - for my $libdir ("/usr/lib64", "/usr/lib") { - next unless glob "$ENV{RPM_BUILD_ROOT}$libdir/lib*.so*"; + my %lib_paths = (); + find ( sub { + next unless (/^lib.*\.so\..*$/ ); + next if (exists $lib_paths{$File::Find::dir} + || $File::Find::dir =~ m{^$ENV{RPM_BUILD_ROOT}/usr/lib/debug} ); + $lib_paths{$File::Find::dir}++; + }, "$ENV{RPM_BUILD_ROOT}/usr/lib64", "$ENV{RPM_BUILD_ROOT}/usr/lib"); + if (keys %lib_paths) { $ENV{LD_LIBRARY_PATH} .= ":" if $ENV{LD_LIBRARY_PATH}; - $ENV{LD_LIBRARY_PATH} .= "$ENV{RPM_BUILD_ROOT}$libdir"; + $ENV{LD_LIBRARY_PATH} .= join ":", keys %lib_paths; } } my @pipe = ($X, shebang_options($fname));
Ещё актуально?
(In reply to comment #5) > Ещё актуально? Актуально, но, видимо, уже не очень срочно.
На досуге приложу и поверю.
rpm-build-perl-0.85-alt3 -> sisyphus: Wed Jan 19 2022 Igor Vlasenko <viy@altlinux> 0.85-alt3 - applied crux's patch (closes: #9307)