ExifTool Forum

ExifTool => Newbies => Topic started by: symbiostock on May 18, 2014, 04:18:28 PM

Title: Can't locate Image/ExifTool.pm in @INC (@INC contains: /bin/lib /usr/local/...
Post by: symbiostock on May 18, 2014, 04:18:28 PM
First off - great work on Exiftool. Its certainly the best meta-data program of it's type.

I've been trying to get an exiftool install to work on my server, but I cannot find a decent method to fix this error:

array(2) {
  [0]=>
  string(230) "Can't locate Image/ExifTool.pm in @INC (@INC contains: /bin/lib /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /bin/exiftool line 33."
  [1]=>
  string(59) "BEGIN failed--compilation aborted at /bin/exiftool line 33."
}


I'm creating a distributable photo-selling tool (an advanced version of symbiostock) and I was hoping to find a good blanket solution for installing exiftool for the less experienced webmasters.

I found that simply installing the exiftool folder and calling the program directly from that, things work great. But the install method I used (make) does not seem to work and gives the above error.

I suppose my first question would be is it sufficient just to call the program from the unzipped folder? Or is an install completely necessary?
Title: Re: Can't locate Image/ExifTool.pm in @INC (@INC contains: /bin/lib /usr/local/...
Post by: symbiostock on May 18, 2014, 04:19:34 PM
I've also got a stack-overflow question opened here:

http://stackoverflow.com/questions/23662982/cannot-run-shell-command-through-php-exec-but-can-as-user-on-shell

Although I'm looking for a solution that doesn't involve re-wiring the universe. I'm looking for an easy solution for future webmasters using the distributable package.
Title: Re: Can't locate Image/ExifTool.pm in @INC (@INC contains: /bin/lib /usr/local/.
Post by: Phil Harvey on May 18, 2014, 07:04:37 PM
I am surprised that the standard "make install" didn't work for you.  It uses the standard Perl installation technique, so if this doesn't work then probably all other Perl modules will have the same problem on your system.  I suspect something is configured oddly on your system.  But luckily you don't need to install ExifTool to use it.  Just unpack it and place the "lib" directory in the same directory as the "exiftool" script.

- Phil
Title: Re: Can't locate Image/ExifTool.pm in @INC (@INC contains: /bin/lib /usr/local/...
Post by: symbiostock on May 18, 2014, 08:46:46 PM
Its definitely the environment. Wonderful program though - very high value. Thank you for the great work.
Title: Re: Can't locate Image/ExifTool.pm in @INC (@INC contains: /bin/lib /usr/local/...
Post by: chuckkahn on August 04, 2014, 09:43:10 PM
Just installed OS 10.10 Yosemite beta and got similar message running exiftool and after re-installing exiftool pkg for os x:

MacBook-Air:~ chuckkahn$ exiftool
Can't locate Image/ExifTool.pm in @INC (you may need to install the Image::ExifTool module) (@INC contains: /usr/local/bin/lib /Library/Perl/5.18/darwin-thread-multi-2level /Library/Perl/5.18 /Network/Library/Perl/5.18/darwin-thread-multi-2level /Network/Library/Perl/5.18 /Library/Perl/Updates/5.18.2 /System/Library/Perl/5.18/darwin-thread-multi-2level /System/Library/Perl/5.18 /System/Library/Perl/Extras/5.18/darwin-thread-multi-2level /System/Library/Perl/Extras/5.18 .) at /usr/local/bin/exiftool line 33.
BEGIN failed--compilation aborted at /usr/local/bin/exiftool line 33.
Title: Re: Can't locate Image/ExifTool.pm in @INC (@INC contains: /bin/lib /usr/local/...
Post by: Hayo Baan on August 05, 2014, 02:41:17 AM
Each time you install a new OS, certain files are overwritten. A sudo make install usually does the trick. If that doesn't work, however, it may also be a bug in the 10.10 beta; I see it has /usr/local/bin/lib in the @INC path, where it should be /usr/local/lib. You can solve this by adding that to the PERL5LIB environment variable.

Hope this helps,
Hayo
Title: Re: Can't locate Image/ExifTool.pm in @INC (@INC contains: /bin/lib /usr/local/...
Post by: chuckkahn on August 08, 2014, 09:57:08 AM
Ran some system updates and got:

exiftool
defined(%hash) is deprecated at /usr/bin/lib/Image/ExifTool.pm line 1259.
(Maybe you should just omit the defined()?)
defined(%hash) is deprecated at /usr/bin/lib/Image/ExifTool.pm line 3196.
(Maybe you should just omit the defined()?)
defined(%hash) is deprecated at /usr/bin/lib/Image/ExifTool.pm line 3204.
(Maybe you should just omit the defined()?)
defined(%hash) is deprecated at /usr/bin/lib/Image/ExifTool.pm line 3238.
(Maybe you should just omit the defined()?)

Title: Re: Can't locate Image/ExifTool.pm in @INC (@INC contains: /bin/lib /usr/local/...
Post by: chuckkahn on August 08, 2014, 09:59:41 AM
Reinstalled ExifTool-8.98 again and it seems to be working.