Mod_perl 2.0.9 in Yosemite Apache 2.4 does not execute .pl scripts - mod-perl

I've followed the clear and excellent procedure in How to install mod_perl 2.0.9 in Apache 2.4 on OS X Yosemite? and installed mod_perl 2.0.9 in my Yosemite Apache 2.4. It compiled and installed without errors (a few warnings flew by during the compilation) and mod_perl/2.0.9dev Perl/v5.18.2 shows up in /server-status and with the apachectl command to list loaded modules.
But the perl scripts in my /Library/WebServer/CGI-Executables directory, which worked perfectly in previous versions of MacOS and Apache, do not execute. Instead, the source of the .pl file is displayed in the browser. Do I need some additional directives or other changes in /etc/spache2/httpd.conf? Are there steps I can/should take to debug this? Thanks.

I had forgotten to enable mod_cgi.so. Did that and all is well.

Related

apache2: Perl lib version (5.28.1) doesn't match executable '/usr/sbin/apache2' version (5.20.2)

I have installed Debian 10 in order to migrate a web server from one machine to this Debian 10 machine. The web server built on apache2 needs mod_perl. The module was not found on the new machine, so I installed perl5.28 (and mod_perl.so has been added). But now it seems there is a mismatch between a previous perl version (5.20) and the latest one (5.28). I use the perl binary correspondint to v5.28, #INC contains directories related to v5.28 (according to "env -i perl -V"). But when I try to start the apache2 server, I get this error: "apache2: Perl lib version (5.28.1) doesn't match executable '/usr/sbin/apache2' version (5.20.2)". Can anyone help? Thanks a ton in advance.
When you built apache with mod_perl, you used v5.20, but it seems that's not around anymore. Different versions of Perl are not guaranteed (or even attempt to be) binary compatible. Between Perl versions, you'll likely have to re-compile all XS modules, too.
You need to recompile apache with the Perl that you want to use, or install the Perl that apache wants to use. This time you may want to statically compile mod_perl into apache.
This problem isn't specific to Perl, though. Many software libraries will complain similarly when you replace the library they compiled against.

Perl PL_unitcheckav and .so compiled using Perlbrew

I need to build the same set of shared objects (the OpenSSL support) for many platform and Perl version (4x4). Install works well with Perlbrew and I can install various packages with cpan on the different version I'v created. The problem is that they all fail with a PL_unitcheckav not found in DynLoader.pm
I've found lots of similar issues, but no solutione so far. Is this a debug symbol? It only fails when I add (cpan) a package from my brew install and then try to tun it on other system. It works fine when compile "natively" using my local Perl
Just found the answer. As #ikegami said, I was compiling w/o --multi, --64int and --thread and running it on a version with all these flags compiled (version number was correct). The "multi" option was really the problem

Problems while installing WWW::Mechanize::Firefox

I am using the windows 8 operating system and I am trying to install the WWW::Mechanize::Firefox module in ActiveState Perl, from CPAN. I have successfully downloaded and installed all the dependencies and also installed the MozRepl module on Firefox. I do not have noScript running on my firefox and hence I am assuming that Javascript is enabled across all files (I am not sure how or where to check that). Here is my error message when I try to install the module.
I also constantly receive this error throughout the installation - "Subroutine-MozRepl-Load Plugins redefined at line 104."
Any help is much appreciated ! Thank you !
EDIT - These are the errors -
As Kim suggested in comments, you will need Mozrepl and Firefox.
Please refer WWW::Mechanize::Firefox::Installation page for detailed instructions on how to install this module.
If you use ActiveStates package manager, you can find some pre-packaged but untested PPMs at https://github.com/Corion/www-mechanize-firefox/downloads .
I needed to use this module on Windows, and couldn't get it running with ActivePerl. So I installed http://strawberryperl.com/ and it worked. This version of perl seems to handle installs form the cpan command line utility better than Activestate, who expect you to use their perl package manager as the default module installer (and don't supply a dmake program). Strawberry Perl also comes with a C compiler so can build modules that are a mixture of Perl and C code.
And make sure mozrepl is running before you try to install.

Can I have the newest version of perl together with olde

I have on UNIX SunOS 5.9 Generic_122300-61 sun4u sparc SUNW,Sun-Fire-V240 perl v5.6.1, but I want to install the newest version.
Can I install the newest version and have it together with oldest but on different directories?
But my questions is :
now I have perl home on /bin/perl.
The newest perl version will be on different home directory? And also cpan and modules, are they going to be installed?
Since you are on Solaris, don't mess with the Perl that comes with the operating system. It's used by the OS itself, and if you change it things can get weird.
That said, you can absolutely install other Perl versions in parallel with it. If you're compiling manually, all you need to do is to give the flag -Dprefix=/some/nice/directory to the Configure script. Once it's compiled and installed, you only need to put /some/nice/directory/bin earlier in your PATH than /usr/bin.
If you want a system-wide installation of a newer Perl, I'd suggest picking the latest version (currently 5.20.0, but 5.20.1 is at RC2 so it should be out soon) and installing it in /usr/local. If you want a newer Perl for your own personal use, I'd strongly suggest making sure you have enough of an environment that Perl can be compiled, and then install and use perlbrew (http://perlbrew.pl/).

Installing Class::Inspector Perl module

I am a windows 7 (64 bit) user. I was trying to install Class::Inspector module in Perl. However it requred Nmake15.exe. I have tried to download the exe and when I run it, there is an pop up message stating that
The program or feature Nmake15.exe cannot start or run due to incompatibility with 64-bit versions of Windows
Could anyone advice on this? Thanks. This is a pre-requisite module required by SOAP::Lite.
nmake 1.5 is very old, and getting a modern version involves installing the massive Visual Studio suite. As an alternative, you can use dmake which works just as well.
In addition, your version of ActivePerl is quite out of date. I believe more recent versions now ship with a make program and will run much better on Windows.
Finally, Strawberry Perl is in many ways a better distribution of Perl on Windows. It comes with a complete Perl module build toolchain including dmake and a C compiler. You should be able to install most modules on CPAN using its preconfigured CPAN shell.
Class::Inspector is a pure-Perl module. Therefore, you could easily install it by copying the contents of the lib/ directory into one of your #INC paths.
This does not solve your problem with installing modules in general, though. That's why you should install a 64 bit version of nmake. By installing the Windows SDK, the nmake utility will be available at "C:\Program Files (x86)\Microsoft Visual Studio...\VC\bin\amd64\nmake.exe" (microsoft.com).