Perl script issue

Moderator: crythias

Post Reply
HervE
Znuny wizard
Posts: 391
Joined: 03 Jan 2011, 17:15
Znuny Version: 3.3.8
Location: France

Perl script issue

Post by HervE »

Hello,

I cannot run any Perl script, for I always get something like this:

U:\>C:\otrs\StrawberryPerl\perl\bin\perl.exe C:/otrs/OTRS/bin/otrs.DeleteCache.pl --expired
Undefined subroutine &Encode::find_encoding called at C:/otrs/OTRS/Kernel/cpan-lib/Encode/Locale.pm line 83.
Compilation failed in require at C:\otrs\OTRS\Kernel\System\/Encode.pm line 16.
BEGIN failed--compilation aborted at C:\otrs\OTRS\Kernel\System\/Encode.pm line 16.
Compilation failed in require at C:/otrs/OTRS/Kernel/System/Encode.pm line 15.
BEGIN failed--compilation aborted at C:/otrs/OTRS/Kernel/System/Encode.pm line 15.
Compilation failed in require at C:/otrs/OTRS/bin/otrs.DeleteCache.pl line 34.
BEGIN failed--compilation aborted at C:/otrs/OTRS/bin/otrs.DeleteCache.pl line 34.

An idea of what could be wrong?

Best regards,
HervE
OTRS 3.3.8 - Windows 7 - IIS7 - SQL Server - Firefox 30
Giulio Soleni
Znuny wizard
Posts: 392
Joined: 30 Dec 2010, 14:35
Znuny Version: 6.0.x and 5.0.x
Real Name: Giulio Soleni
Company: IKS srl

Re: Perl script issue

Post by Giulio Soleni »

Hi,
did you check with /opt/otrs/bin/otrs.CheckModules.pl (or the same perl command in Windows distro) if you have all the required perl modules installed?
... expecially "perl(Encode::Locale)" I guess...
OTRS 6.0.x on CentOS 7.x with MariaDB 10.2.x database connected to an Active Directory for Agents and Customers.
ITSM and FAQ modules installed.
HervE
Znuny wizard
Posts: 391
Joined: 03 Jan 2011, 17:15
Znuny Version: 3.3.8
Location: France

Re: Perl script issue

Post by HervE »

Hello,

U:\>C:\otrs\StrawberryPerl\perl\bin\perl.exe C:/otrs/OTRS/bin/otrs.CheckModules.
pl
o Archive::Tar.....................ok (v1.90)
o Crypt::Eksblowfish::Bcrypt.......ok (v0.009)
o Crypt::SSLeay....................ok (v0.64)
o Date::Format.....................ok (v2.24)
o DBI..............................ok (v1.623)
o DBD::mysql.......................ok (v4.022)
o DBD::ODBC........................ok (v1.43)
o DBD::Oracle......................Not installed! (optional - Required to connect to a Oracle database.)
o DBD::Pg..........................ok (v2.19.3)
o Encode::HanExtra.................FAILED! Not all prerequisites for this module correctly installed.
o GD...............................ok (v2.49)
o GD::Text.......................ok (v0.86)
o GD::Graph......................ok (v1.48)
o IO::Socket::SSL..................ok (v1.84)
o JSON::XS.........................ok (v2.33)
o List::Util::XS...................ok (v1.27)
o LWP::UserAgent...................ok (v6.05)
o Mail::IMAPClient.................ok (v3.34)
o IO::Socket::SSL................ok (v1.84)
o Net::DNS.........................ok (v0.72)
o Net::LDAP........................FAILED! Not all prerequisites for this module correctly installed.
o Net::SSL.........................ok (v2.85)
o PDF::API2........................FAILED! Not all prerequisites for this module correctly installed.
o Compress::Zlib.................ok (v2.060)
o Text::CSV_XS.....................ok (v1.01)
o Time::HiRes......................ok (v1.9725)
o XML::Parser......................ok (v2.41)
o YAML::XS.........................ok (v0.39)
o Win32::Daemon....................ok (v20110117)
o Win32::Service...................ok (v0.06)

Regards,
HervE
OTRS 3.3.8 - Windows 7 - IIS7 - SQL Server - Firefox 30
Giulio Soleni
Znuny wizard
Posts: 392
Joined: 30 Dec 2010, 14:35
Znuny Version: 6.0.x and 5.0.x
Real Name: Giulio Soleni
Company: IKS srl

Re: Perl script issue

Post by Giulio Soleni »

Hi there,

Encode::HanExtra should be useful to display an manage Chinese kanji chars only as far as I know... I suggest you to install the other two FAILED dependencies whereas Net::LDAP is required if you want to interface OTRS with LDAP or ActiveDirectory users and PDF::API2 is required if you want to print reports in PDF format. However both of them should not be responsible of the issue you have faced.

I still am inquiring about Encode::Locale module: even if otrs.CheckModules.pl does not report it as required, are you sure you have it installed on your system? (you might check for it using ppm ActivePerl)

Also if you have installed the OTRS Support module (strongly suggested) you might check in the Admin console (Admin > Support Assessment) if there is something missing on bundled perl modules also.

kr

Edit: I see now you are using Strawberry perl and not ActiveState perl ... I do not know how pm modules may be installed in Strawberry but I think there should be a way as it is ppm for ActiveState perl.
Also... take a look on this thread viewtopic.php?t=23346&p=92228 ... maybe you find some useful info
OTRS 6.0.x on CentOS 7.x with MariaDB 10.2.x database connected to an Active Directory for Agents and Customers.
ITSM and FAQ modules installed.
HervE
Znuny wizard
Posts: 391
Joined: 03 Jan 2011, 17:15
Znuny Version: 3.3.8
Location: France

Re: Perl script issue

Post by HervE »

Hello,

Thanks for your answer.
Giulio Soleni wrote:I still am inquiring about Encode::Locale module: even if otrs.CheckModules.pl does not report it as required, are you sure you have it installed on your system? (you might check for it using ppm ActivePerl)
PPM Encode Locale.png
Giulio Soleni wrote:Also if you have installed the OTRS Support module (strongly suggested) you might check in the Admin console (Admin > Support Assessment) if there is something missing on bundled perl modules also.
I don't think I have it installed. How to do?
Giulio Soleni wrote:I see now you are using Strawberry perl and not ActiveState perl ... I do not know how pm modules may be installed in Strawberry but I think there should be a way as it is ppm for ActiveState perl.
Actually I have both.
Strawberry Perl comes native with OTRS Windows installer and is used by default.
And it worked fine... as long as I used Apache!
But when I started to use IIS instead, I couldn't make Strawberry Perl work for some reason. That's why I installed ActiveState Perl.
At the moment I am using Apache, therefore Strawberry Perl I guess.

If I check modules with ActiveState Perl it's worse:
U:\>C:\perl\bin\perl.exe C:/otrs/OTRS/bin/otrs.CheckModules.pl
Set up gcc environment - gcc.exe (gcc-4.6.3 release with patches [build 20121012 by perlmingw.sf.net]) 4.6.3
o Archive::Tar.....................ok (v1.90)
o Crypt::Eksblowfish::Bcrypt.......Not installed! (optional - For strong password hashing.)
o Crypt::SSLeay....................Not installed! (optional - Required for Generic Interface SOAP SSL connections.)
o Date::Format.....................Not installed! (required - Please install this module - )
o DBI..............................ok (v1.623)
o DBD::mysql.......................ok (v4.022)
o DBD::ODBC........................ok (v1.50)
CheckModules - OCI.dll missing (ActivePerl).png
o DBD::Oracle......................FAILED! Not all prerequisites for this module correctly installed.
o DBD::Pg..........................ok (v2.19.3)
o Encode::HanExtra.................Not installed! (optional - Required to handle mails with several Chinese character sets.)
o GD...............................ok (v2.46)
o GD::Text.......................ok (v0.86)
o GD::Graph......................ok (v1.44)
o IO::Socket::SSL..................ok (v1.84)
o JSON::XS.........................ok (v2.34)
o List::Util::XS...................ok (v1.27)
o LWP::UserAgent...................ok (v6.05)
o Mail::IMAPClient.................ok (v3.35)
o IO::Socket::SSL................ok (v1.84)
o Net::DNS.........................ok (v0.79)
o Net::LDAP........................Not installed! (optional - Required for directory authentication.)
o Net::SSL.........................Not installed! (optional - Required for Generic Interface SOAP SSL connections.)
o PDF::API2........................FAILED! Not all prerequisites for this module correctly installed.
o Compress::Zlib.................ok (v2.060)
o Text::CSV_XS.....................ok (v0.95)
o Time::HiRes......................ok (v1.9725)
o XML::Parser......................ok (v2.41)
o YAML::XS.........................ok (v0.39)
o Win32::Daemon....................ok (v20110117)
o Win32::Service...................ok (v0.06)

Moreover, I've got a pop-up window in-between (see above).

What would you suggest?

Best regards,
HervE
You do not have the required permissions to view the files attached to this post.
OTRS 3.3.8 - Windows 7 - IIS7 - SQL Server - Firefox 30
Giulio Soleni
Znuny wizard
Posts: 392
Joined: 30 Dec 2010, 14:35
Znuny Version: 6.0.x and 5.0.x
Real Name: Giulio Soleni
Company: IKS srl

Re: Perl script issue

Post by Giulio Soleni »

HervE wrote:I don't think I have it installed. How to do?
Download the last version of Support from the official OTRS repo:
http://ftp.otrs.org/pub/otrs/packages/Support-1.5.4.opm

Then install it using otrs.PackageManager.pl script (if it works on your environment :) )
In Linux the command to trigger would be:
/opt/otrs/bin/otrs.PackageManager.pl -a install -p /<path where you downloaded the opm>/Support-1.5.4.opm
guess in windows is more or less the same...

As for the perl used ... I think you should actually check what release between ActiveState and Strawberry your OTRS system is actually using. As long as you will be able to see the perl modules status on the web console through the Support module I think that you should also see what release you are actually using.

I am looking for the popup error but still found nothing really useful about.
OTRS 6.0.x on CentOS 7.x with MariaDB 10.2.x database connected to an Active Directory for Agents and Customers.
ITSM and FAQ modules installed.
HervE
Znuny wizard
Posts: 391
Joined: 03 Jan 2011, 17:15
Znuny Version: 3.3.8
Location: France

Re: Perl script issue

Post by HervE »

Hello,

I installed Support module (with Package Manager).

Now I can see "Support Assessment" menu. It looks very much like "Service Center" menu :wink:

It confirms the following about Perl:
Check Perl version.
Perl 5.16.3 (StrawberryPerl) (MSWin32) is used.

Check Perl Modules installed.
All Perl modules needed are currently installed.
o Archive::Tar.....................ok (v1.34)
o Crypt::Eksblowfish::Bcrypt.......Not installed! (optional - For strong password hashing.)
o Crypt::SSLeay....................Not installed! (optional - Required for Generic Interface SOAP SSL connections.)
o Date::Format.....................Not installed! (required - Please install this module - )
o DBI..............................ok (v1.623)
o DBD::mysql.......................ok (v4.022)
o DBD::ODBC........................ok (v1.50)
o DBD::Oracle......................FAILED! Not all prerequisites for this module correctly installed.
o DBD::Pg..........................ok (v2.19.3)
o Encode::HanExtra.................Not installed! (optional - Required to handle mails with several Chinese character sets.)
o GD...............................ok (v2.46)
o GD::Text.......................ok (v0.86)
o GD::Graph......................ok (v1.44)
o IO::Socket::SSL..................ok (v1.84)
o JSON::XS.........................ok (v2.34)
o List::Util::XS...................ok (v1.27)
o LWP::UserAgent...................ok (v6.05)
o Mail::IMAPClient.................ok (v3.35)
o IO::Socket::SSL................ok (v1.84)
o Net::DNS.........................ok (v0.79)
o Net::LDAP........................Not installed! (optional - Required for directory authentication.)
o Net::SSL.........................Not installed! (optional - Required for Generic Interface SOAP SSL connections.)
o PDF::API2........................ok (v2.023)
o Compress::Zlib.................ok (v2.060)
o Text::CSV_XS.....................ok (v0.95)
o Time::HiRes......................ok (v1.9725)
o XML::Parser......................ok (v2.41)
o YAML::XS.........................ok (v0.39)
o Win32::Daemon....................ok (v20110117)
o Win32::Service...................ok (v0.06)
Bundled modules:
o Algorithm::Diff..................ok (v1.1902)
o Authen::SASL.....................ok (v2.16)
o CGI..............................ok (v3.63)
o CSS::Minifier....................ok (v0.01)
o Class::Inspector.................ok (v1.28)
o Crypt::PasswdMD5.................ok (v1.3)
o Date::Pcalc......................ok (v1.2)
o Email::Valid.....................ok (v0.190)
o Encode::Locale...................ok (v1.03)
o IO::Interactive..................ok (v0.0.6)
o JSON.............................ok (v2.59)
o JSON::PP.........................ok (v2.27202)
o JavaScript::Minifier.............ok (v1.05)
o LWP..............................ok (v6.05)
o Linux::Distribution..............ok (v0.21)
o Locale::Codes....................ok (v3.26)
o MIME::Tools......................ok (v5.504)
o Mail::Address....................ok (v2.12)
o Mail::Internet...................ok (v2.12)
o Module::Refresh..................ok (v0.17)
o Mozilla::CA......................ok (v20130114)
o Net::HTTP........................ok (v6.06)
o Net::IMAP::Simple................ok (v1.2201)
o Net::SSLGlue.....................ok (v1.04)
o Proc::Daemon.....................ok (v0.14)
o SOAP::Lite.......................ok (v1.06)
o Sys::Hostname::Long..............ok (v1.4)
o Text::CSV........................ok (v1.32)
o Text::Diff.......................ok (v1.41)
o URI..............................ok (v1.60)
o YAML.............................ok (v0.84)
o parent...........................ok (v0.227)

Could it be that the Perl modules (that I can see installed from PPM) are somehow "linked to" my ActiveState instance, and not to my Strawberry instance? (I don't know how Perl "works" with the installed Perl modules.)

Regards,
HervE
OTRS 3.3.8 - Windows 7 - IIS7 - SQL Server - Firefox 30
Giulio Soleni
Znuny wizard
Posts: 392
Joined: 30 Dec 2010, 14:35
Znuny Version: 6.0.x and 5.0.x
Real Name: Giulio Soleni
Company: IKS srl

Re: Perl script issue

Post by Giulio Soleni »

HervE wrote: Could it be that the Perl modules (that I can see installed from PPM) are somehow "linked to" my ActiveState instance, and not to my Strawberry instance? (I don't know how Perl "works" with the installed Perl modules.)
Strawberry and ActiveState perl should not conflict but I wouldn't swear to it, expecially because your ActiveState has been installed under "C:\perl\" which sounds like a really generic and default perl folder...
However, back to your 1st reported issue... googling I found that there could be some issues just related to Encode module and possible conflicts in Windows between ActiveState and Strawberry perl:
https://rt.cpan.org/Public/Bug/Display.html?id=91414

If I could I'd try to uninstall ActiveState perl from your system.
I am not sure I understood but you installed it along with IIS that you are using no more...
OTRS 6.0.x on CentOS 7.x with MariaDB 10.2.x database connected to an Active Directory for Agents and Customers.
ITSM and FAQ modules installed.
HervE
Znuny wizard
Posts: 391
Joined: 03 Jan 2011, 17:15
Znuny Version: 3.3.8
Location: France

Re: Perl script issue

Post by HervE »

Thank you for your help.

I've uninstalled ActiveState Perl, and rebooted, but still the same.

What is strange is, GenericAgent script seems to work when launched by Cron, but fails when I launch it manually from Windows Command window - like any other Perl script indeed.

Regards,
HervE
OTRS 3.3.8 - Windows 7 - IIS7 - SQL Server - Firefox 30
crythias
Moderator
Posts: 10169
Joined: 04 May 2010, 18:38
Znuny Version: 5.0.x
Location: SouthWest Florida, USA
Contact:

Re: Perl script issue

Post by crythias »

per the first post, try the argument with \ instead of /
OTRS 6.0.x (private/testing/public) on Linux with MySQL database.
Please edit your signature to include your OTRS version, Operating System, and database type.
Click Subscribe Topic below to get notifications. Consider amending your topic title to include [SOLVED] if it is so.
Need help? Before you ask
HervE
Znuny wizard
Posts: 391
Joined: 03 Jan 2011, 17:15
Znuny Version: 3.3.8
Location: France

Re: Perl script issue

Post by HervE »

Good idea... but:

U:\>C:\otrs\StrawberryPerl\perl\bin\perl.exe C:\otrs\OTRS\bin\otrs.DeleteCache.pl --expired
Undefined subroutine &Encode::find_encoding called at C:/otrs/OTRS/Kernel/cpan-lib/Encode/Locale.pm line 83.
Compilation failed in require at C:\otrs\OTRS\Kernel\System\/Encode.pm line 16.
BEGIN failed--compilation aborted at C:\otrs\OTRS\Kernel\System\/Encode.pm line 16.
Compilation failed in require at C:/otrs/OTRS/Kernel/System/Encode.pm line 15.
BEGIN failed--compilation aborted at C:/otrs/OTRS/Kernel/System/Encode.pm line 15.
Compilation failed in require at C:\otrs\OTRS\bin\otrs.DeleteCache.pl line 34.
BEGIN failed--compilation aborted at C:\otrs\OTRS\bin\otrs.DeleteCache.pl line 34.

Regards,
HervE
OTRS 3.3.8 - Windows 7 - IIS7 - SQL Server - Firefox 30
crythias
Moderator
Posts: 10169
Joined: 04 May 2010, 18:38
Znuny Version: 5.0.x
Location: SouthWest Florida, USA
Contact:

Re: Perl script issue

Post by crythias »

try (?) ppm install Encode
OTRS 6.0.x (private/testing/public) on Linux with MySQL database.
Please edit your signature to include your OTRS version, Operating System, and database type.
Click Subscribe Topic below to get notifications. Consider amending your topic title to include [SOLVED] if it is so.
Need help? Before you ask
HervE
Znuny wizard
Posts: 391
Joined: 03 Jan 2011, 17:15
Znuny Version: 3.3.8
Location: France

Re: Perl script issue

Post by HervE »

Hmm...

U:\>ppm install Encode
Undefined subroutine &Encode::find_encoding called at C:/otrs/StrawberryPerl/perl/vendor/lib/Encode/Locale.pm line 83.
Compilation failed in require at C:\otrs\OTRS\Kernel\System\/Encode.pm line 16.
BEGIN failed--compilation aborted at C:\otrs\OTRS\Kernel\System\/Encode.pm line 16.
Compilation failed in require at C:/otrs/StrawberryPerl/perl/vendor/lib/LWP/UserAgent.pm line 999.
Compilation failed in require at C:/otrs/StrawberryPerl/perl/vendor/lib/PPM.pm line 15.
BEGIN failed--compilation aborted at C:/otrs/StrawberryPerl/perl/vendor/lib/PPM.pm line 15.
Compilation failed in require at C:\otrs\StrawberryPerl\perl\bin/ppm.bat line 35.
BEGIN failed--compilation aborted at C:\otrs\StrawberryPerl\perl\bin/ppm.bat line 35.

Regards,
HervE
OTRS 3.3.8 - Windows 7 - IIS7 - SQL Server - Firefox 30
crythias
Moderator
Posts: 10169
Joined: 04 May 2010, 18:38
Znuny Version: 5.0.x
Location: SouthWest Florida, USA
Contact:

Re: Perl script issue

Post by crythias »

any chance the path isn't C:?
OTRS 6.0.x (private/testing/public) on Linux with MySQL database.
Please edit your signature to include your OTRS version, Operating System, and database type.
Click Subscribe Topic below to get notifications. Consider amending your topic title to include [SOLVED] if it is so.
Need help? Before you ask
HervE
Znuny wizard
Posts: 391
Joined: 03 Jan 2011, 17:15
Znuny Version: 3.3.8
Location: France

Re: Perl script issue

Post by HervE »

I don't think so.

U:\>C:\otrs\StrawberryPerl\perl\bin\ppm install Encode
Undefined subroutine &Encode::find_encoding called at C:/otrs/StrawberryPerl/perl/vendor/lib/Encode/Locale.pm line 83.
Compilation failed in require at C:\otrs\OTRS\Kernel\System\/Encode.pm line 16.
BEGIN failed--compilation aborted at C:\otrs\OTRS\Kernel\System\/Encode.pm line 16.
Compilation failed in require at C:/otrs/StrawberryPerl/perl/vendor/lib/LWP/UserAgent.pm line 999.
Compilation failed in require at C:/otrs/StrawberryPerl/perl/vendor/lib/PPM.pm line 15.
BEGIN failed--compilation aborted at C:/otrs/StrawberryPerl/perl/vendor/lib/PPM.pm line 15.
Compilation failed in require at C:\otrs\StrawberryPerl\perl\bin\ppm.bat line 35.
BEGIN failed--compilation aborted at C:\otrs\StrawberryPerl\perl\bin\ppm.bat line 35.

Regards,
HervE
OTRS 3.3.8 - Windows 7 - IIS7 - SQL Server - Firefox 30
Post Reply