Last week I upgraded Perl to version 5.20 and that seems to have stopped Foswiki from working. Trying to execute http://<server_FQDN>/foswiki/bin/configure resulted in an error message stating "An internal server error has occurred. Please see your administrator" or something to that effect. Executing http://<server_FQDN> produces the default index page.
The following note was found in the FreeBSD's ports update file:
AFFECTS: users of lang/perl5*
AUTHOR: [hidden email]
The default Perl version has been switched to Perl 5.20. If you are using
binary packages to upgrade your system, you do not have anything to do, pkg
upgrade will do the right thing. For the other people, assuming you are
migrating from 5.18 to 5.20, do:
portupgrade -o lang/perl5.20 -f lang/perl5.18
portupgrade -f `pkg shlib -R libperl.so.5.18|tail +2`
portmaster -o lang/perl5.20 lang/perl5.18
portmaster -f `pkg shlib -R libperl.so.5.18|tail +2`
Perl has been removed from base more than ten years ago, so it was way past
time for the /usr/bin/perl symlink to be removed from the port. If for
some strange reason, you still need it, you will have to create it
In case you have not updated your system in a while, and specifically,
followed the 20141126 instructions regarding the new Perl layout, you
should follow those more extensive instructions rather than the
conservative presented here.
The above two steps for Portmaster users were executed the same day Perl was upgraded. /usr/bin/perl symlink was deleted automatically from the server.
Oh, and on that same day, I added three Perl modules (p5-CGI-4.15, p5-CGI-Cookie-XS-0.18.1, and p5-CGI-Utils-0.12_1) according to the daily email received from the Foswiki site as follows:
CGI will be removed from the Perl core distribution in the next major release. Please install it from CPAN. It is being used at /usr/local/www/foswiki/lib/Foswiki.pm, line 49.
CGI::Util will be removed from the Perl core distribution in the next major release. Please install it from CPAN. It is being used at /usr/local/lib/perl5/5.20/CGI.pm, line 29.
CGI::Cookie will be removed from the Perl core distribution in the next major release. Please install it from CPAN. It is being used at /usr/local/www/foswiki/lib/Foswiki/Plugins/TwistyPlugin.pm, line 12.
Recreating the symlink of /usr/bin/perl pointing to /usr/local/bin/perl and trying to run configure results in this error message:
Failed to load the perl module CGI qw(:any). The module could not be found.
Please ensure that:
1 CGI qw(:any) is installed,
2 that the module is available on the @INC path,
3 that the webserver user (root) has permission to read the CGI qw(:any).pm file.
The detailed error seen was:
CGI -any pragma has been REMOVED. You should audit your code for any use of none supported / incorrectly spelled tags and remove them at /usr/local/lib/perl5/site_perl/CGI.pm line 929.
BEGIN failed--compilation aborted at (eval 8) line 1.
For help, please send mail to the webmaster ([hidden email]), giving this error message and the time and date of the error.
I am at loss as to what next steps to take in order to remedy this. Do I need to install p5-CGI.pm-3.63_1,1 in place of or in addition to p5-CGI-4.15? See https://www.freebsd.org/cgi/ports.cgi?query=cgi&stype=all&sektion=all for further information on available Perl ports for the FreeBSD platform.
Also I am unsure as to what I need to do in order to comply with the directive to audit my code for an use of any unsupported or incorrectly spelled tags in the CGI.pm module at line 929.
Any advice you could provide would be greatly appreciated!
Foswiki-discuss mailing list
|Free forum by Nabble||Edit this page|