[rt-users] can't locate XXX

Mike Johnson mike.johnson at nosm.ca
Wed Apr 20 14:50:41 EDT 2011


Ok bare with the long email!

Yes, I have a literal ... It's quite amazing how far you can get with an RT
setup based on wiki pages and rt-users listserv history without actually
knowing ANY Perl what so ever :D I have ExternalAuth and RT-FM setup as
other plugins... and all I did with those was follow step by step on the
wiki pages/READMEs.  For both, I copied and pasted the "Set" line for the
RT_SiteConfig.pm directly from there.  So being 100% honest, I never thought
of what it is or how it's works, just that the README or wiki told me it was
required.

Once Ruslan pointed to that line being a potential problem, I realized
RTFM wasn't ACTUALLY working... only the RTFM data was there, the
functionality wasn't working. I attempted to search for more information on
what that line is actually doing, but all I found was the wiki page
mentioned in the previous email. Which on that page specifically states you
can't have 2 @Plugin sets... that's why RTFM wasn't working...

Now with that knowledge, I understand my config line should read

Set(@Plugins,qw(
          RT::Authen::ExternalAuth
          RT:Extension::ExtractCustomFieldValues
));


The original information from Ruslan makes more sense now. I have corrected
that, and the new error is back to the Can't locate the .pm in @INC.

So now, what I believe that error is telling me is

 ...RT:Extension::ExtractCustomFieldValues

is an abstractual definition of where the ExtractCustomFieldValues.pm is
located within one of the paths of the @INC variable.

Taking the working ExternalAuth plugin string, which is
'RT::Authen::ExternalAuth', I understand that  RT::Authen equates to
RT/Authen and ExternalAuth is the .pm

That means, as long as @INC has the path before RT/Authen/ExternalAuth.pm
we're good!

What I don't understand now is how @INC gets
/opt/rt3/local/plugins/RT-Authen-ExternalAuth/lib

I could do a hack, and get it to work with the knowledge I have built now,
but I'm looking for the RIGHT way to do it.

How do I tell get /opt/rt3/local/plugins/ExtractCustomFieldValues in @INC?

And providing I can do the above, the way the tgz file untar's, the .pm file
is in that directory, so my Set @Plugins line would look like

Set(@Plugins,qw(CustomFieldValues RT:Authen:ExternalAuth));


Sorry for the long email, but I wanted to ensure my assumptions are correct
all the way through the troubleshooting logic I've used.


Thanks!
Mike.

On Wed, Apr 20, 2011 at 11:38 AM, Kevin Falcone
<falcone at bestpractical.com>wrote:

> On Wed, Apr 20, 2011 at 08:45:44AM -0400, Mike Johnson wrote:
> > The Set(@Plugins line was the problem... I had a spelling mistake.
> >
> > Now I'm seeing a different error
> >
> > [Wed Apr 20 08:20:25 2011] [error] Can't call method "require" without a
> > package or object reference at /opt/rt3/bin/../lib/RT.pm line
> > 670.\nCompilation failed in require at (eval 2) line 1.\n
> > [Wed Apr 20 08:20:25 2011] [error] Can't load Perl file: /opt/rt3/bin/
> > webmux.pl for server myserver.mydomain.com:0, exiting...
>
> This implies you have some junk in your @Plugins, what else are you
> loading?
>
> > Set(@Plugins,qw(... RT::Extension::ExtractCustomFieldValues));
>
> Do you have a literal ... in there?
>
> Also, normally I recommend the README in an extension over something
> in the wiki which may be unfortunately out of date (since engineers
> tend to update the closest docs)
>
> When installing, did you run all the steps?  Install and initdb (but
> only once).
>
> -kevin
>
> > By looking at the code in RT.pm, and my very limited Perl knowledge... it
> > seems when it's reading through trying to find all the Plugins defined in
> > the RT_SiteConfig.pm it hiccups on the newly corrected Set(@Plugins...);
> > line for ExtractCustomFieldValues.
> >
> > My Set line is as follows:
> >
> > Set(@Plugins,qw(... RT::Extension::ExtractCustomFieldValues));
> >
> > As indicated on the wiki page for ExtractCustomFieldValues.
> >
> > I'm trying to figure out exactly what the Set(@Plugins line means(till
> now,
> > I've simply used what was posted on the wiki, without understanding what
> > each piece of the config line actually means...) but I'm having a hard
> time
> > googling/searching wiki or rt-users for that information.
> >
> > This page http://requesttracker.wikia.com/wiki/SiteConfig tells you a
> little
> > bit of the Plugins line, but doesn't define what it means.  I'm assuming
> I'd
> > inherently know this if I knew more about Perl itself...
> >
> >
> >
> > On Wed, Apr 20, 2011 at 1:17 AM, Ruslan Zakirov <ruz at bestpractical.com
> >wrote:
> >
> > > On Tue, Apr 19, 2011 at 9:29 PM, Mike Johnson <mike.johnson at nosm.ca>
> > > wrote:
> > > > When the apache error_log shows an error stating it can't locate a
> given
> > > .pm
> > > > file in @INC what are my steps to resolve this?
> > > >
> > > > Specifically, when I insert the line
> > > >
> > > > Set(@Plugins,qw(... RT::Extension::ExtractCustomFieldValues));
> > > >
> > > > into my site config, apache won't start up and complains it cannot
> find
> > > the
> > > > ExtractCustomFieldValues.pm
> > > >
> > > > I searched the lists, and some have said the path to the pm is not in
> the
> > > > @INC environment variable and to move the .pm to a place that is.  In
> the
> > > > error it lists the @INC variable, and /opt/rt3/local/lib or
> /opt/rt3/lib
> > > > exist in it
> > >
> > > In 3.8 @INC should be
> > >
> > > rt3/local/lib
> > > rt3/local/plugins/X/lib
> > > rt3/local/plugins/Y/lib
> > > rt3/local/plugins/Z/lib
> > > rt3/lib
> > >
> > > If you have set @Plugins to (X Y Z) in the config, but ...
> > >
> > > * ..., but only some plugins' paths are in the @INC - check config for
> > > double Set(@Plugins, ...)
> > > * ..., but only some plugins' paths are in the @INC - check above and
> > > check permissions on dirs
> > > * ..., but none of rt3/local/plugins/.../lib is in the @INC - check
> > > above, may be you have earlier 3.8.x release with a bug, upgrade to
> > > the latest
> > >
> > > > , so I attempted to move the .pm in question to one of those
> > > > areas with no luck...
> > > > Strikes me as odd that I'd have to move this considering I've
> installed 2
> > > > other extensions prior to this one that fired up with out any
> issues...
> > >
> > > 100% there is no need in moving files around. Pretty good chances to
> > > break things further or complicate future upgrades.
> > >
> > > > Anyone give me a few steps to troubleshoot or try out?
> > > >
> > > > Thanks!
> > > > Mike.
> > >
> > > --
> > > Best regards, Ruslan.
> > >
> >
> >
> >
> > --
> > Mike Johnson
> > Datatel Programmer/Analyst
> > Northern Ontario School of Medicine
> > 955 Oliver Road
> > Thunder Bay, ON   P7B 5E1
> > Phone: (807) 766-7331
> > Email: mike.johnson at nosm.ca
>
>


-- 
Mike Johnson
Datatel Programmer/Analyst
Northern Ontario School of Medicine
955 Oliver Road
Thunder Bay, ON   P7B 5E1
Phone: (807) 766-7331
Email: mike.johnson at nosm.ca
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.bestpractical.com/pipermail/rt-users/attachments/20110420/814f996e/attachment.htm>


More information about the rt-users mailing list