Ce paragraphe est spécifique à Debian, il n'est pas nécessaire à l'installation de Catalyst. En effet tout ce qui sera installé dans la suite de ce document le sera dans le répertoire personnel de l'utilisateur.( Excepté les prérequis du chapitre suivant)
apt-get install debootstrap debootstrap etch testcatalyst chroot testcatalyst
Ajoutons un utilisateur ' test'
adduser test
Prérequis: Les outils de compilation et templates toolkit doivent être installés
apt-get install build-essential libtemplate-perl ftp unzip (ou equivalent dans une autre distrib)
J'installe aussi le module Perl DBI qui semble poser des problèmes si je le fais par le CPAN
apt-get install libdbi-perl
Se logué sous l'utilisateur voulu:
su - test
Ensuite nous exportons les variables nécessaires à l'installation de Catalyst en local, c'est à dire dans le répertoire ' site' de l'utilisateur.
perlversion=`perl -v | grep 'built for' | awk '{print $4}' | sed -e 's/v//;'`
export PERL5LIB=~/site/perl/share/perl/5.8:~/site/perl/share/perl/$perlversion:\
~/site/perl/lib/perl5:~/site/perl/lib/perl/$perlversion:~/site/share/perl/$perlversionCes
lignes peuvent éventuellement être copiées dans
~/.bashrc
Maintenant que tout est en place, débutons l'installation :
perl -MCPAN -e shell
Diverses questions vont être posées, valider simplement.
Lorsque la configuration de CPAN est terminée, sortir du shell CPAN avec un Control D.
Recommencer car nous allons maintenant installer la dernière version de CPAN.
perl -MCPAN -e shell o conf commit install CPAN
Attention à ne pas oublier les 'o' sinon le shell refusera les commandes.
Sortir à nouveau du shell pour la prise en compte du nouveau CPAN et pour l'installation de Module::Build
perl -MCPAN -e shell o conf mbuildpl_arg --install-base=~/site/perl o conf prefer_installer MB o conf commit install Module::Build
Sortir encore une fois, il nous faut modifier le fichier .cpan/CPAN/MyConfig.pm en remplacant 'ask' par 'follow' dans la ligne suivante:
'prerequisites_policy' => q[follow],
Et pour finir nous relançons à nouveau le shell pour l'installation de Catalyst.
perl -MCPAN -e shell install Task::Catalyst
Catalyst dépend de nombreux modules perl, son installation est donc un peut longue. Toujours répondre 'oui' à toutes les questions qui sont posées, notamment dans le cas de modules additionnels, ainsi nous n'aurons pas à y revenir.
Pendant que nous y sommes, nous allons installer d'autres modules Catalyst qui seront utiles à certaines applications (Notamment tout ce qui est relatif aux bases de données)
Nota: HTML::FormFu est dépendant de la dernière version des
Templates Toolkit (le 2.19) or celle-ci par défaut s'installe dans
/usr/local/tt2 qu'il faudra modifier en
/home/test/tt2.
install Template install DBIx::Class install Catalyst::Model::DBIC::Schema install DBIx::Class::QueryLog install Catalyst::Model::DBIC::Schema::QueryLog
Bien qu'il ne soit pas nécessaire au fonctionnement de Catalyst, le module HTML::FormFu pose plus de problèmes lors de l'installation, il est dépendant de nombreux modules dont certains ne veulent tout simplement pas s'installer. Notamment DateTime::Format::Strptime et donc on commence l'installation:
install DateTime::Format::Strptime
et j'ai l'erreur suivante:
t/004_locale_defaults....ok 1/48Can't call method "year" on an undefined value at t/004_locale_defaults.t line 45.
Qu'a cela ne tienne je vais simplement ne pas effectuer les tests:
cd ~/.cpan/build/DateTime-Format-Strptime-1.0700* make make install
idem pour DateTime::Format::Builder, Net::DNS et Email::Valid:(
Bon on repart avec HTML::FormFu:
perl -MCPAN -e shell
Le programme 'catalyst.pl' étant situé dans notre répertoire personnel, il nous faut donc ajouter ce chemin au PATH dans le .bashrc:
export PATH=site/perl/bin/:$PATH
Et
nous voilà avec la dernière version de Catalyst sans avoir pollué notre
distribution. Tout est installé dans ~/site
Pour se lancer dans la création d'une application Catalyst rien de tel que de s'aider d'exemple déjà développé. Il existe de nombreux exemples dans le dépot de Catalyst.
Testons par exemple l'application CatalystAdvent (trucs et astuces Catalyst - année 2005 et 2006)
svn co http://dev.catalyst.perl.org/repos/Catalyst/trunk/examples/CatalystAdvent cd CatalystAdvent perl script/catalystadvent_server.pl
qui nous donne:

ou encore Angerwhale un blog un peu spécial.


