as-needed i KDE* - co z tym robimy?
Arkadiusz Miskiewicz
arekm w pld-linux.org
Sob, 9 Wrz 2006, 12:51:43 CEST
On Saturday 09 September 2006 10:22, Jakub Bogusz wrote:
> On Fri, Sep 08, 2006 at 10:32:45PM +0200, Arkadiusz Miskiewicz wrote:
> > Witam,
> >
> > Co robimy z as-needed i kde? Wyłączamy per paczka czy ktoś wpadł na
> > rozwiązanie (lub choć wie w czym jest problem... czy libtool zapomina
> > dodać -lc itp?).
>
> KDE ma coś nachrzanione w swoich makrach do auto* i w w przypadku
> autoconfa 2.60 tworzy niesprawnego libtoola.
> Wyłączenie as-needed nie naprawi linkowania (tam jest -nostdlib), trzeba
> znaleźć źródło problemu.
> Może chodzić o to, że autoconf 2.60 ustawia "set -o posix" także dla ksh,
> do czego ksh podchodzi rygorystycznie i niektóre konstrukcje przestają
> działać (szczegóły w man ksh). W szczególności \"\" wewnątrz `` zachowują
> się inaczej (przez to np. php się teraz nie buduje).
Dokładnie w tym siedział problem. W KDE jest sobie admin/libtool.m4.in
zawierający:
output_verbose_link_cmd="`$echo \"X$output_verbose_link_cmd\" | $Xsed -e
\"$no_glob_subst\"`"
co owocuje
sed: -e expression #2, char 1: unknown command: `"'
Poprawka:
[arekm w arm ~/rpm/SOURCES]$ cat kde-ac260-lt.patch
diff -urN arts-1.5.4.org/admin/libtool.m4.in arts-1.5.4/admin/libtool.m4.in
--- arts-1.5.4.org/admin/libtool.m4.in 2006-07-24 09:06:24.000000000 +0200
+++ arts-1.5.4/admin/libtool.m4.in 2006-09-09 12:45:13.172062500 +0200
@@ -3542,7 +3542,7 @@
# The `*' in the case matches for architectures that use `case' in
# $output_verbose_cmd can trigger glob expansion during the loop
# eval without this substitution.
- output_verbose_link_cmd="`$echo \"X$output_verbose_link_cmd\" | $Xsed -e
\"$no_glob_subst\"`"
+ output_verbose_link_cmd=`$echo "X$output_verbose_link_cmd" |
$Xsed -e "$no_glob_subst"`
for p in `eval $output_verbose_link_cmd`; do
case $p in
(tak jest w aktualnym libtoolu)
--
Arkadiusz Miśkiewicz PLD/Linux Team
arekm / maven.pl http://ftp.pld-linux.org/
Więcej informacji o liście dyskusyjnej pld-devel-pl