perla nie da sie zbudowac ?
Radoslaw Zielinski
radek w karnet.pl
Pią, 22 Lis 2002, 19:16:04 CET
Andrzej Krzysztofowicz <ankry w green.mif.pg.gda.pl> [22-11-2002 17:05]:
>> plik /usr/lib/perl5/5.6.1/base.pm jest potrzebny do zbudowania
>> perl-Class-Fields, ale nie da sie zbudowac perl-Class-Fields bez pliku
>> base.pm i kolko sie zamyka.
Ups, nie zauważyłem. Rozwiązanie na chwilę obecną: rpm -i
--nodeps perl-Class-Fields z FTP; to jest pakiet noarch.
>> proponuje, poprostu zlikwidowac pakiet perl-Class-Fields a base.pm
>> wsadzic do perl.spec czyli odkomentowac to co jest zakomentowane obecnie
Problem w tym, że wersja base.pm, dystrybuowana z perlem 5.6.1, jest
dość stara. Zdecydowałem się na to, co jest obecnie, bo coś kiedyś
wymagało nowszej.
>> lub jakie jest inne rozwiazanie ?
Widzę dwa:
1. Zignorować i czekać na rewolucję przy okazji 5.8.
2. Odkomentować base.pm w perl.spec i zmienić perl-Class-Fields.spec
tak, żeby wrzucał wszystko do %{perl_sitelib}.
> Przyjrzec sie nowemu perlowi ?
To, co leży na branchu PERL_5_8_0, jest totalnie rozgrzebane.
Zmodyfikowałem jeszcze jakieś trzy patche, ale nie wrzucałem ich jeszcze
do CVS; jak ktoś chce się tym zająć, to podeślę. Niestety, nie mam
teraz na to czasu (i przez jakieś dwa tygodnie się nie zanosi).
> Wtedy perl-Class-Fields nie bedzie potrzebny... ?
Prędzej czy później, będzie.
Problem w tym, że nowe, stabilne wersja perla wychodzą w odstępach rzędu
roku, a biblioteki i oprogramowanie od perla zależne -- bardzo często.
Te biblioteki (zaliczam do nich to, co zawiera CPAN) mają prawo wymagać
przy budowaniu zarówno obecności pełnej dystrybucji perla, jak i nowych
wersji dostarczanych z nim modułów.
Idealnie, w systemie powinna znajdować się zarówno pełna dystrybucja
perla wraz z dostarczanymi z nią modułami w tych wersjach, które są
dostarczane, jak i ich nowsze wersje. [1]
Istnieje odpowiedni mechanizm; katalogi:
/usr/lib/perl5/%{version}/ -- na moduły dostarczane z perlem
/usr/lib/perl5/site_perl/ -- na instalowane przez użytkownika
/usr/lib/perl5/vendor_perl/ -- na dostarczane w pakietach (np. RPM)
Drugi i trzeci (zwłaszcza trzeci) spokojnie można oczywiście nazwać
inaczej. Określa się to w trakcie budowania perla; aktualny stan
pokazuje polecenie:
$ perl -V:privlib -V:sitelib -V:vendorlib
Problem: spakowanie tego porządnie. Na tym wysiadłem, nie mam pomysłu.
Podział na perl i perl-modules jest w większości sztuczny, z perl-devel
też sprawa nie jest jasna... Jedyne poprawne rozwiązanie, jakie widzę,
to wrzucenie wszystkiego do jednego pakietu, ale to ze zrozumiałych
względów nie jest akceptowalne.
[1] Tak jest w Debianie. Ich polityka odnośnie perla to IMO kawał dobrej
roboty: <http://www.debian.org/doc/packaging-manuals/perl-policy/>.
Nie wiem niestety, jak to tam wygląda w praktyce.
--
Radosław Zieliński <radek w karnet.pl>
[ GPG key: http://radek.karnet.pl/ ]
-------------- następna część ---------
Załącznik, który nie był tekstem został usunięty...
Name: nie znany
Type: application/pgp-signature
Size: 189 bytes
Desc: nie znany
Url : /mailman/pipermail/pld-devel-pl/attachments/20040626/8c166fad/attachment.bin
Więcej informacji o liście dyskusyjnej pld-devel-pl