andygrundman / Image-Scale

Image::Scale - Fast, high-quality fixed-point image resizing
24 stars 20 forks source link

Image::Scale 0.11 prevents LMS build on Freebsd #7

Closed StuartRob closed 8 years ago

StuartRob commented 8 years ago

Hi, I've successfully built LMS in a Freebsd jail often. However since the move from Image::Scale 0.8 to 0.11 the build fails with:

Image::Scale object version 0.11 does not match bootstrap parameter 0.08 at /usr/local/lib/perl5/5.20/mach/DynaLoader.pm line 216. Compilation failed in require at (eval 92) line 1.

I don't know what to do about this. Can you suggest how to troubleshoot?

At present rollback to the commit before the change to 0.11 allows the build to finish and LMS to start successfully but this is a temporary fix.

andygrundman commented 8 years ago

Hi,

This usually means you just need to reinstall the module. It sounds like you've got the binary Scale.so half of the module at version 0.11, but the Scale.pm file is still 0.08.

StuartRob commented 8 years ago

Thanks for answering. I don't know how to reinstall the module.

I have been combining building slimserver-vendor from git with files from a nightly build. I think this is necessary in order to combine architecture specific binaries and the most recent modules but that these two are now out of step.

When I build from slimserver-vendor I get Scale.so 0.11 but Scale.pm 0.08 is in the nightly. @mherger has answered the same question on the forum.

Other than using an earlier version which builds I don't know what I can do to get the .so and .pm in step. Can Scale.pm be patched?

I only use this multi-step process because in the past it has resulted in a working LMS on Freebsd. Any suggestions of a more efficient means of getting LMS on Freebsd are appreciated.

andygrundman commented 8 years ago

Yeah Michael is right. If you are building a Scale.so that is version 0.11, you will also need to copy the version 0.11 Scale.pm file and overwrite the one in the LMS CPAN directory. This should be safe, since the API on the module hasn't changed.

StuartRob commented 8 years ago

Just to close this discussion, I built a new set of binaries from slimserver-vendor and copied both the new binaries and the newly built Scale.pm file into a nightly of the unix NoCPAN LMS and then started it.

Everything worked and the scanner is currently scanning my media files. It discovered 43,000 files in less than one minute and has scanned them all in 25 minutes.

mherger commented 8 years ago

@andygrundman FYI: I've started to update modules on some platforms only. Sounds wrong, but I can no longer build them for every platform & OS & Perl combination. That's the reason why the 7.9 branch in slimserver-vendor comes with an updated Image::Scale, but LMS' CPAN still has 0.08 in the main folder. There's the updated version in the platform sub-folders which come with the updated binary.

StuartRob commented 8 years ago

@mherger how can a user like me know which modules have been updated easily? If I know what has been updated I can figure out which modules to copy across from my own building of slimserver-vendor. Alternatively I may try copying across more of my build into a noCPAN nightly and see what happens.

mherger commented 8 years ago

@StuartRob - let's continue this discussion in the forums. This is not related to Andy's module any more. I only wanted to explain to him where the version confusion came from.