przebudowywanie autoconfa i ferajny.

Tomasz Kłoczko kloczek w rudy.mif.pg.gda.pl
Pon, 23 Lip 2001, 06:03:47 CEST


On Mon, 23 Jul 2001, Robert R. Wal wrote:

> Heja.
> 
> Mam pytanie dotyczace tego co w temacie: czy naprawde w PLD musimy
> przebudowywac wszystkie elementy tworzone przez suite automake/autoconf
> etc? Przeciez to jest proszenie sie o problemy:
> 
> W manualach do autoconfa wyraznie jest napisane, ze zainstalowane
> skladniki tego pakietu musza byc wylacznie na maszynie osoby
> przygotowujacej archiwum dystrybucyjne z programem. Osoba, ktora
> otrzymuje tarballa powinna to sobie skompilowac majac w systemie tylko
> sh/make/cc. Gdzie sa te problemy, o ktorych bylo:
> 
> Ot chociazby niekompatybilnosci miedzy wersjami
> automake/autoconf/libtool etc. Kloczek przy okazji moich walk z
> exim+pop-b4-smtp rzucil we mnie apgrejdem pakietu whoson. w tej chwili
> podczas przebudowania wystepuje cos takiego:
> 
> 8<--- 'rpm -bb' output
> + /usr/bin/make
> /bin/sh ./libtool --mode=compile i386-pld-linux-gcc -DHAVE_CONFIG_H -I.
> -I. -I.     -O2 -march=i686 -Wall -c clnt_common.c
> libtool: ltconfig version `' does not match ltmain.sh version `1.3.3'
> Fatal configuration error.  See the libtool docs for more information.
> 8<---

Przykładowo ten pakiet nie skompiluje się bez regeneracji zasobów 
libtooola na conajmniej trzech architektórach: sparc64, ia64 i s390.
Dlaczego ? ano dlatego że skrypt libtoola w wersji 1.3.3 nic nie wie na 
temat tych arhitektór. Jeżeli będziemy się przystawiać do robienia portu 
pod athalona to mamy już czwarta architektóre.
Wywołaj "libtoolize --copy --force" na początku i będzie po sprawie.

> Pewnie sie to da jakos obejsc, ale... Jesli wstawie po prostu
> %configure2_13 i wywale generacje wszystkich elementow zaleznych
> (autoheader, automake, autoconf etc), to kompiluje sie bez najmniejszych
> problemow, od kopa.

To co robie ze zmienianiem s/%configure2_13/%configure/ to jest w pełni 
świadoma inwestycja na przyszłość. jeżlei znaleziony zostanie kolejny bład 
w skryptahc libtoola (a zadazaja sie dość często) to regeneracja tych 
zasobów uchroni brzed przykrymi skutkami takowych. Kwestie portowania tych 
zasobów na inne ach bendą w pełni otwarte i pzretarte.

> Podobne problemy mialem AFAIR z xmms-input-avi AFAIR, a to lezace na FTP
> po prostu sie nie instaluje.

Trzeba mu zaaplikować podobne zmiany.

> A wiec, pozostaje pytanie: czy ktos moze mi wyjasnic cel przebudowywania
> plikow zaleznych automake/autoconf etc. w sytuacji, kiedy manuale
> wyraznie mowia, ze dystrybucja programu stworzonego ta metoda
> jest/powinna byc ,,self-contained'' i kiedy zlamanie tej zasady prowadzi
> do problemow i koniecznosci zmian w zrodlach -- i.e. niepotrzebnej pracy.

Ta dokumentacja nie ujmuje spraw zwiażanycj z libtoolem. Taka przypadłość, 
że regeneracja libtoola pociaga za soba regeneracje automake a to dalej
autoconfa.

naprawdę rzadko kiedy coś trzeba przy takich regeneracjach poprawiać. 
Zwykjle też poprawki są portowalne w kieruinku starszych wersji ac/am/lt 
więc nie szkodzi to też dla tych co uzywaja starszych wersji ac/am/lt.

kloczek
-- 
-----------------------------------------------------------
*Ludzie nie mają problemów, tylko sobie sami je stwarzają*
-----------------------------------------------------------
Tomasz Kłoczko, sys adm @zie.pg.gda.pl|*e-mail: kloczek w rudy.mif.pg.gda.pl*



Więcej informacji o liście dyskusyjnej pld-devel-pl