I get these warning messages when I start my program:
Name "AAT::Translation::I18N::en_us::Lexicon" used only once: possible typo at /usr/share/perl/5.12/Locale/Maketext.pm line 404.
Name "Win32::Locale::Lexicon" used only once: possible typo at /usr/share/perl/5.12/I18N/LangTags/Detect.pm line 140.
My program uses a module with Locale::Maketext::Simple:
use Locale::Maketext::Simple(
Path => '/usr/share/aat/Translations/'
);
This directory contains my *.po files (en.po, fr.po ...)
I didn't get any warnings before using Perl 5.12/Locale::Maketext::Simple 0.21...
Any ideas how can I fix that ?
Edit 1: The full code
package AAT::Translation;
use strict;
use warnings;
use Readonly;
use AAT::Utils qw( NULL );
my %AAT_Translation = ();
use Locale::Maketext::Simple(
Path => '/usr/share/aat/Translations/'
);
sub Init
{
my $lang = shift;
loc_lang($lang);
$AAT_Translation{$lang}{'_USER'} = loc("_USER");
return (1);
}
sub Get
{
my ($lang, $str) = @_;
return (undef) if (NULL($str));
Init($lang) if (!defined $AAT_Translation{$lang}{'_USER'});
$AAT_Translation{$lang}{$str} = (loc($str) || $str)
if (!defined $AAT_Translation{$lang}{$str});
return ($AAT_Translation{$lang}{$str});
}
Edit 2: Of course, if I create a link en_us.po -> en.po, I don't get "AAT::Translation::I18N::en_us::Lexicon" error messages anymore, only the "Win32::Locale::Lexicon" error messages, but that's not an option...