Re: Continuing Linux Education [message #47299] |
Sat, 04 February 2006 13:56  |
David Fanning
Messages: 11724 Registered: August 2001
|
Senior Member |
|
|
Peter Albert writes:
> Then you add the IDL path to $PATH as
>
> setenv PATH $PATH:/usr/local/rsi/idl/idl_6.2/bin
>
> or similar.
OK, I added the IDL bin directory to my PATH in the /etc/profile
file. Now Emacs can start IDL.
On to the next thing... :-)
Thanks,
David
--
David Fanning, Ph.D.
Fanning Software Consulting, Inc.
Coyote's Guide to IDL Programming: http://www.dfanning.com/
|
|
|
Re: Continuing Linux Education [message #47301 is a reply to message #47299] |
Sat, 04 February 2006 11:57   |
peter.albert@gmx.de
Messages: 108 Registered: July 2005
|
Senior Member |
|
|
Hi David,
I had the same problem with IDL not being found in Emacs/IDLWAVE,
although calling idl from the shell worked just fine. This was because
idl was set as an alias somewhere, pointing to the correct executable,
while its path was not in the !PATH environment variable. IDLWAVE
doesn't know about the alias and hence can't execute IDL.
You can check this with just calling
$ alias | grep -i idl
If IDL pops up, it is set as an alias. You can either look for where
this is done and comment the appropriate line out, or you add a line
like
unalias idl
in your bashrc. Then you add the IDL path to $PATH as
setenv PATH $PATH:/usr/local/rsi/idl/idl_6.2/bin
or similar.
If I remember correctly, an alternative way is to explicitely tell
IDLWAVE where IDL is located. I can't remember where in the vast desert
of Emacs configuration I once stumbled over the appropriate entry, but
I know it's there.
Cheers,
Peter
|
|
|
|
Re: Continuing Linux Education [message #47377 is a reply to message #47301] |
Mon, 06 February 2006 09:16  |
JD Smith
Messages: 850 Registered: December 1999
|
Senior Member |
|
|
:On Sat, 04 Feb 2006 11:57:10 -0800, Peter Albert wrote:
> Hi David,
>
> I had the same problem with IDL not being found in Emacs/IDLWAVE, although
> calling idl from the shell worked just fine. This was because idl was set
> as an alias somewhere, pointing to the correct executable, while its path
> was not in the !PATH environment variable. IDLWAVE doesn't know about the
> alias and hence can't execute IDL.
>
> You can check this with just calling
>
> $ alias | grep -i idl
>
> If IDL pops up, it is set as an alias. You can either look for where this
> is done and comment the appropriate line out, or you add a line like
>
> unalias idl
>
> in your bashrc. Then you add the IDL path to $PATH as
>
> setenv PATH $PATH:/usr/local/rsi/idl/idl_6.2/bin
>
> or similar.
>
> If I remember correctly, an alternative way is to explicitely tell IDLWAVE
> where IDL is located. I can't remember where in the vast desert of Emacs
> configuration I once stumbled over the appropriate entry, but I know it's
> there.
This is a common issue, which it sounds like you've solved in the
correct way. Emacs doesn't know about aliases, it just looks for the
command "idl" on the search path. You can either:
1) make sure there is such a command (in /usr/local/bin/ or where
ever; if you say "yes" at the end of the IDL install it will build
links there for you), or
2) explicitly configure idlwave-shell-explicit-file-name: click
IDLWAVE->Customize->Browse Full IDLWAVE group, browse to IDLWAVE
external programs, and click "Idlwave Shell Explicit Filename") to set
the full path to your idl runnable (e.g.
"/usr/local/rsi/idl/bin/idl").
As far as the tutorial, the IDLWAVE which is bundled with Emacs is
ancient: 4.7 or something. Almost 4 years old (which is about how old
the current Emacs is, sadly). It probably even pre-dates the
turorial, and is missing many features. You should upgrade your
IDLWAVE; see idlwave.org. My recommendation is to wait for the
IDLWAVE 6.0 announcement which will be going out soon, and upgrade
then. Then the HTML help RSI supplies with your IDL 6.2 will work
"out of the box", and you won't need to do anything more to configure
your context help. By the way, Emacs 22, when it ships, should have a
nice modern version of IDLWAVE, so the need to upgrade will be much
reduced.
JD
|
|
|