Re: Save file creation rules of the road [message #69966 is a reply to message #69825] |
Fri, 19 February 2010 21:12  |
Robert Moss, PhD
Messages: 29 Registered: November 2006
|
Junior Member |
|
|
On Feb 18, 8:23 am, David Fanning <n...@dfanning.com> wrote:
> Rob writes:
>> I'm trying to create a distributable IDL save file via IDLDE > Project
>>> "Build Project". A save file was created without error -- some
>> initial complaints were issued, then automatically resolved. I then
>> restored this save file in a new IDL cli session. All expected
>> functions and procedures were listed, via "restore, /verbose" and
>> "help"; see below. However, an attempt to run one of the restored
>> procedures yielded the annoying "Variable is undefined:
>> SPIDR_ASCII_GET_META.... EXCEPTION..." I've experienced this before
>> and the hack I employed wasn't pretty. It involved compiling
>> (via .compile) all functions and procedures I thought I needed and
>> creating a save file somewhat manually, then a sacrificial lamb and a
>> kabuki dance. Thus, I suppose I've never really learned how to create
>> a proper save file with just the functionality I need. Can someone
>> point me in the right direction?
>
> I had something like this happen to me just the other day,
> too. In my case, I had two functions and the second was being
> called inside the first to provide a parameter for the first.
> Both the functions were named correctly in their respective
> files, and both resided in the coyote directory, which is
> ALWAYS on my IDL path.
>
> But every time I would run this program after starting up
> IDL, it would barf on the same line. Said it couldn't find
> that second embedded function! I don't think I had ever
> seen this happen before in IDL.
>
> In any case, I inserted a STRICTARR compile option into
> that program module, and the problem went away. I wonder
> if something changed in the way IDL resolves functions?
>
> Cheers,
>
> David
>
> --
> David Fanning, Ph.D.
> Fanning Software Consulting, Inc.
> Coyote's Guide to IDL Programming:http://www.dfanning.com/
> Sepore ma de ni thui. ("Perhaps thou speakest truth.")
It might be a compile order issue. I use COMPILE_OPT IDL2 in nearly
everything (which includes STRICTARR as David mentioned), so it is
rarely a problem for me, but if this is not for you try compiling the
second embedded function before the first when creating your save
file. That will usually fix it.
r
|
|
|