Re: IDL_PATH [message #70297 is a reply to message #68647] |
Wed, 31 March 2010 09:03  |
Michael Galloy
Messages: 1114 Registered: April 2006
|
Senior Member |
|
|
On 3/31/10 3:11 AM, bing999 wrote:
> I am having trouble with my IDL_PATH defined in my .bashrc.
>
> Here is how it is defined:
>
> IDL_PATH="+${my_path}/idl/:+/home/jim/lib/IDL/:<IDL_DEFAULT >+/home/bob/
> routines/:"
>
> export IDL_PATH
>
> Then it points to 3 directories ( my IDL, jim's IDL and bob
> routines'). Note that "my path" is correctly defined before because
> wherever i am, i can call routines stored here.
> The thing is that when i add a new routine in ${my_path}/idl/ and i
> want to call it from another directory, i get the message: "Attempt to
> call undefined procedure/function" whereas it is well located in
> {my_path}/idl/....
>
> Does anyone know what goes wrong?
> Thanks.
I see a couple things. First, you are missing a ":" after
"<IDL_DEFAULT>", but that shouldn't affect finding routines in $my_path/idl.
Check out the help for PATH_CACHE. IDL builds a cache of the .pro files
in the directories in the !path. If you slip a new file in later, you
have to manually compile it with something like:
IDL> .compile my_path/idl/my_routine
or rebuild the cache with:
IDL> path_cache, /rebuild
I usually just restart IDL.
Mike
--
www.michaelgalloy.com
Research Mathematician
Tech-X Corporation
|
|
|