Trying to upgrade ZM from 1.28.1 to 1.29. It installed with no errors but when I try to upgrade the database I get this error. This is on a Slackware box running Current-64.
Can't locate ZoneMinder/Base.pm in @INC (you may need to install the ZoneMinder::Base module) (@INC contains: /usr/local/lib/perl5/site_perl/5.22.1/x86_64-linux /usr/local/lib/perl5/site_perl/5.22.1 /usr/local/lib/perl5/5.22.1/x86_64-linux /usr/local/lib/perl5/5.22.1 .) at /usr/local/bin/zmupdate.pl line 70.
BEGIN failed--compilation aborted at /usr/local/bin/zmupdate.pl line 70.
Not sure where to get ZoneMinder::Base module from. I'm assuming that's a perl module.
ZoneMinder installs its Perl modules into what the system has defined as the Perl vendor folders.
Inspect the build output. Where did the installation place the file ZoneMinder/Base.pm?
Alternatively, search your filesystem for it.
What you will find is that it is likely in a location that is not in your Perl search path. Look at Perl's @INC search path. It doesn't look right. It is only looking under the /usr/local prefix. It should also be looking under the /usr prefix too.
Did you attempt to build and install Perl from source along with ZoneMinder? That would explain the Perl search path problem. ZoneMinder is intended to work with the Perl package that ships with your distro. The version of Perl that ships with your distro should have the correct search path.
So you have a choice. You can either fix Perl's search path, or tell Perl where the ZoneMinder modules are at by using the ZM_PERL_SEARCH_PATH cmake parameter. I would recommend the former rather than the latter because you will likely run into the same problem with other perl modules should you ever install any.
In any case if you need additional support, please show us all the steps you used to build zoneminder and provide the entire build output (paste it into a Gist).