[ic] IC problem

interchange-users@interchange.redhat.com interchange-users@interchange.redhat.com
Mon May 6 17:15:01 2002


On Mon, May 06, 2002 at 04:43:02PM -0300, Scott MacDonald wrote:
> 
> I have built a set of perl modules to be be used by my custom user
> tags in Interchange. The set of modules is nested about three deep:
> 
>   
>   MyDir::MySubdirA::MyModuleA1
>   MyDir::MySubdirA::MyModuleA2	
>   MyDir::MySubdirB::MyModuleB1	
>   
> 
> These are in a directory structure under /usr/local/interchange like
> so:
> 
>   /usr/local/interchange/lib/MyDir/MySubdirA/MyModuleA1.pm
>   /usr/local/interchange/lib/MyDir/MySubdirA/MyModuleA2.pm
>   /usr/local/interchange/lib/MyDir/MySubdirB/MyModuleB1.pm
> 
> I am trying to add some lines to my catalog.cfg as follows:
> 
>   Require module MyDir::MySubdirA::MyModuleA1
>   Require module MyDir::MySubdirA::MyModuleA2
>   Require module MyDir::MySubdirB::MyModuleB1
> 
> These modules have all been tested on their own in separate code
> outside Interchange.
> 
> The problem is that when I run the interchange restart script it gives
> an error message indicating it cannot find my modules (fails on the
> first one required).


Look up @INC in perl docs.

> 
> If I have a module which does not try to "use" any other of my own
> modules (i.e. inside the /usr/local/interchange/lib/MyDir/
> hierarchy) the restart will be successful.
> 
> To illustrate my problem I copied LWP::Authen::Digest.pm into
> /usr/local/interchange/lib/MyDir/MySubdirA/ and was able to use
> this line to include it:
> 
>        Require module MyDir::MySubdirA::Digest
> 
> This worked. So it must be something to do with my custom modules and
> their interdependecies, rather than with my directory structure.
> 
> Also, if I removed the MyDir from the path and "shifted" all my
> modules up 1 directory level like so:
> 
> 
>   /usr/local/interchange/lib/MySubdirA/MyModuleA1.pm
>   /usr/local/interchange/lib/MySubdirA/MyModuleA2.pm
>   /usr/local/interchange/lib/MySubdirB/MyModuleB1.pm
> 
> it all seems to work fine. I don't like this solution because I would
> like to be able to keep all of my custom code under the same, single
> directory with my modules all under it (like LWP, for example).
> 
> 
> The restart error I get is:
> 
>    - - - [06/May/2002:16:03:44 -0300] - - StoreName config error: Required
> 	 Perl module MyDir::MySubdirA::MyModuleA1 not present. Aborting catalog.
>    
>    > In line 10 of the configuration file 'catalog.cfg':
>    > Require module MyDir::MySubdirA::MyModuleA1
> 
> Despite the error above I am sure the file is there and can be found
> as long as I don't try to "use" any of my other custom modules from
> within MyModuleA1.
> 
> How can I "Require" my own modules in catalog.cfg if those modules
> reference other modules I made which exist under the
> /usr/local/interchange/lib/MyDir/ hierarchy?
> 
> 
> Thanks,
> 
> Scott
> 
> 
> _______________________________________________
> interchange-users mailing list
> interchange-users@interchange.redhat.com
> http://interchange.redhat.com/mailman/listinfo/interchange-users

-- 

Christopher F. Miller, Publisher                               cfm@maine.com
MaineStreet Communications, Inc           208 Portland Road, Gray, ME  04039
1.207.657.5078                                         http://www.maine.com/
Content/site management, online commerce, internet integration, Debian linux