Portál AbcLinuxu, 7. května 2025 14:37
$ tar -xf gettext-1.05.tar.gz $ cd gettext-1.05 $ perl Makefile.PL PREFIX=.. && make && make test && make installVšechno proběhlo v pořádku, v adresáři se objevily adredáře
lib
a share
.
$ cd .. $ ls a.out cst-help.txt cst.pot gettext-1.05 lib sablona.pot test.c cst-help-en.txt cst.pl gettext.pm gettext-1.05.tar.gz locale share zalProgram (cst.pl) je:
#!/usr/bin/env perl use strict; use POSIX; setlocale(LC_ALL, ""); use FindBin; use lib $FindBin::RealBin.'/lib/perl5/site_perl'; use Locale::gettext; my $g = Locale::gettext->domain_raw('cst'); # domain_raw na automatické přizpůsobení kódování $g->dir('kek');(zbytek jsem odmazal, chyba je někde už tady na začátku) Po spuštění programu se vypíše tohle:
$ perl -w cst.pl Constant subroutine main::LC_CTYPE redefined at /usr/lib/perl5/5.10.0/Exporter.pm line 66. at cst.pl line 10 Prototype mismatch: sub main::LC_CTYPE () vs none at /usr/lib/perl5/5.10.0/Exporter.pm line 66. at cst.pl line 10 Constant subroutine main::LC_NUMERIC redefined at /usr/lib/perl5/5.10.0/Exporter.pm line 66. at cst.pl line 10 Prototype mismatch: sub main::LC_NUMERIC () vs none at /usr/lib/perl5/5.10.0/Exporter.pm line 66. at cst.pl line 10 Constant subroutine main::LC_TIME redefined at /usr/lib/perl5/5.10.0/Exporter.pm line 66. at cst.pl line 10 Prototype mismatch: sub main::LC_TIME () vs none at /usr/lib/perl5/5.10.0/Exporter.pm line 66. at cst.pl line 10 Constant subroutine main::LC_COLLATE redefined at /usr/lib/perl5/5.10.0/Exporter.pm line 66. at cst.pl line 10 Prototype mismatch: sub main::LC_COLLATE () vs none at /usr/lib/perl5/5.10.0/Exporter.pm line 66. at cst.pl line 10 Constant subroutine main::LC_MONETARY redefined at /usr/lib/perl5/5.10.0/Exporter.pm line 66. at cst.pl line 10 Prototype mismatch: sub main::LC_MONETARY () vs none at /usr/lib/perl5/5.10.0/Exporter.pm line 66. at cst.pl line 10 Constant subroutine main::LC_MESSAGES redefined at /usr/lib/perl5/5.10.0/Exporter.pm line 66. at cst.pl line 10 Prototype mismatch: sub main::LC_MESSAGES () vs none at /usr/lib/perl5/5.10.0/Exporter.pm line 66. at cst.pl line 10 Constant subroutine main::LC_ALL redefined at /usr/lib/perl5/5.10.0/Exporter.pm line 66. at cst.pl line 10 Prototype mismatch: sub main::LC_ALL () vs none at /usr/lib/perl5/5.10.0/Exporter.pm line 66. at cst.pl line 10Na řádku 10 je
use Locale::gettext
. Nevím, proč se to vypisuje a funkce modulu nefungují, něco je špatně, ale netuším co. Poradíte mi prosím, čím to je a jak to spravit? Dík.
Proč to řeším: Potřebuju prostě přibalit modul Locale::gettext k programu, aby běžel i tam, kde není nainstalovaný. Takže se nainstaluje do adresáře s programem jen pro něj, na to nejsou potřeba práva roota.
Řešení dotazu:
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.