Re: RESOLVE_ROUTINE essentially unusable on linux? [message #77159] |
Fri, 12 August 2011 14:33  |
Kenneth P. Bowman
Messages: 585 Registered: May 2000
|
Senior Member |
|
|
In article <MPG.28af1df5bd57f525989939@news.giganews.com>,
David Fanning <news@idlcoyote.com> wrote:
> Brian Wolven writes:
>
>> I'd prefer lowercase myself, but IDL insists on referring to them in uppercase.
>
> Well, don't confuse the way IDL refers to file (always
> UPPERCASE in error messages), and the way IDL looks
> for files (always lowercase file names). If you follow
> the rule that all IDL files should be named with lowercase
> characters, then things work normally. It is the Mac users,
> I notice, who usually get into trouble. :-)
>
Don't go blaming us for that! I never have these problems. :-)
Ken
|
|
|
|
Re: RESOLVE_ROUTINE essentially unusable on linux? [message #77165 is a reply to message #77164] |
Fri, 12 August 2011 11:58   |
David Fanning
Messages: 11724 Registered: August 2001
|
Senior Member |
|
|
Brian Wolven writes:
> I just don't like the fact that IDL always seems to be
> shouting at me. =P
Ah, well...
> The thing that was disconcerting here is that the routine
> failed to work even when the case was specified exactly -
> it is in fact the result of operations using the FILE_SEARCH
> and FILE_BASENAME routines. So IDL is fine with mixed case
> in that usage, and doesn't mind it in .COMPILE or .RUN
> statements, but suddenly gets all uppity when you try
> RESOLVE_ROUTINE. Internally inconsistent, IMO, but then
> I guess I should have known better, eh?
Those of use who have been programming for 25+ years
notice the same inconsistencies in our own programs.
I wish God has made us all Republicans so we wouldn't
be afflicted with this terrible disease. :-(
Cheers,
David
--
David Fanning, Ph.D.
Fanning Software Consulting, Inc.
Coyote's Guide to IDL Programming: http://www.idlcoyote.com/
Sepore ma de ni thui. ("Perhaps thou speakest truth.")
|
|
|
|
Re: RESOLVE_ROUTINE essentially unusable on linux? [message #77167 is a reply to message #77166] |
Fri, 12 August 2011 11:25   |
David Fanning
Messages: 11724 Registered: August 2001
|
Senior Member |
|
|
Brian Wolven writes:
> I'd prefer lowercase myself, but IDL insists on referring to them in uppercase.
Well, don't confuse the way IDL refers to file (always
UPPERCASE in error messages), and the way IDL looks
for files (always lowercase file names). If you follow
the rule that all IDL files should be named with lowercase
characters, then things work normally. It is the Mac users,
I notice, who usually get into trouble. :-)
Cheers,
David
--
David Fanning, Ph.D.
Fanning Software Consulting, Inc.
Coyote's Guide to IDL Programming: http://www.idlcoyote.com/
Sepore ma de ni thui. ("Perhaps thou speakest truth.")
|
|
|
|
|
|
|
Re: RESOLVE_ROUTINE essentially unusable on linux? [message #77188 is a reply to message #77187] |
Wed, 10 August 2011 11:38   |
Michael Galloy
Messages: 1114 Registered: April 2006
|
Senior Member |
|
|
On 8/10/11 12:36 PM, Brian Wolven wrote:
> I understand this - linux is case sensitive:
>
> IDL> .compile sis_bin_mapped_data
> % Error opening file. File: sis_bin_mapped_data
> IDL> .compile SIS_BIN_MAPPED_DATA
> % Error opening file. File: SIS_BIN_MAPPED_DATA
> IDL> .compile SIS_bin_mapped_data
> % Compiled module: SIS_BIN_MAPPED_DATA.
>
> But there seems to be no way to get it to work at all with this approach:
>
> IDL> resolve_routine,/EITHER,'sis_bin_mapped_data'
> % Attempt to call undefined procedure/function: 'SIS_BIN_MAPPED_DATA'.
> % Execution halted at: $MAIN$
> IDL> resolve_routine,/EITHER,'SIS_BIN_MAPPED_DATA'
> % Attempt to call undefined procedure/function: 'SIS_BIN_MAPPED_DATA'.
> % Execution halted at: $MAIN$
> IDL> resolve_routine,/EITHER,'SIS_bin_mapped_data'
> % Attempt to call undefined procedure/function: 'SIS_BIN_MAPPED_DATA'.
> % Execution halted at: $MAIN$
>
> SIS_bin_mapped_data.pro is in the current working directory. Seems like the only solution is to rename all files in upper case? Am I missing something?
All lowercase will work. Also, this is important for automatic routine
compilation, i.e., naming your files correctly so that IDL finds the
routines in them.
Mike
--
Michael Galloy
www.michaelgalloy.com
Modern IDL, A Guide to Learning IDL: http://modernidl.idldev.com
Research Mathematician
Tech-X Corporation
|
|
|
|