Posted: Sun Oct 25, 2009 8:06 pm Post subject: Cygwin CL fatal error.
Aloha folks!
I've recently installed IRAf on Cygwin following the instructions laid out by IAC (used by others on the forums) and I have encountered an error upon starting IRAF.
Xgterm and DS9 start fine but upon issuing the ecl command I get the error:
ERROR: syntax error
called as: `cl ()'
called as: `cl ()'
Error while reading login.cl file - may need to rebuild with mkiraf
Fatal startup error. CL dies.
I have backtracked through the forums and checked over the extern.pkg file to see if there was a misplaced / but no joy.
I followed the installation instructions to the letter and I'm stuck at this error. Everythings else seems to work fine.
The error can only be in your login.cl or loginuser.cl file, or the system $hlib/extern.pkg file. You can do a new MKIRAF to recreate your login.cl file, and temporarily move your loginuser.cl file so it won't be read to rule them out. For the extern.pkg file, a space after a '\' or something similar could cause an error. Some editors fail to put a newline on the last line of the file which also causes a parser problem but if you can't spot it feel free to post the file, or else comment out every line to verify that is the file with the problem and then gradually uncomment lines until you find the problem.
Lastly, you should just need to type 'cl' to start, the ECL is the default.
Ok.. I have two extern files. One is extern (pkg file) and the other is extern.pkg
This is what they look like:
# External (non core-system) packages. To install a new package, add the
# two statements to define the package root directory and package task,
# then add the package helpdb to the `helpdb' list.
I hashed out all the lines of code and I still got the error
I am new to IRAf so when I opened up my login.cl file I didn't really know what I was looking for as far as an error goes.
Anyway here is my login.cl file contents
# LOGIN.CL -- User login file for the IRAF command language.
# Identify login.cl version (checked in images.cl).
if (defpar ("logver"))
logver = "IRAF V2.14.1 September 2008"
set home = "/cygdrive/c/christopher/iraf/"
set imdir = "/cygdrive/c/christopher/iraf/Christopher/"
set uparm = "home$uparm/"
set userid = "Christopher"
# Set the terminal type. We assume the user has defined this correctly
# when issuing the MKIRAF and no longer key off the unix TERM to set a
# default.
if (access (".hushiraf") == no)
print "setting terminal type to xgterm..."
stty xgterm
# XIMTOOL/DISPLAY stuff. Set node to the name of your workstation to
# enable remote image display. The trailing "!" is required.
#set node = "my_workstation!"
# CL parameters you mighth want to change.
#ehinit = "nostandout eol noverify"
#epinit = "standout showall"
showtype = yes
# Load the default CL package. Doing so here allows us to override package
# paths and load personalized packages from our loginuser.cl.
clpackage
# Default USER package; extend or modify as you wish. Note that this can
# be used to call FORTRAN programs from IRAF.
if (access ("home$loginuser.cl"))
cl < "home$loginuser.cl"
;
keep
prcache directory
cache directory page type help
# Print the message of the day.
if (access (".hushiraf"))
menus = no
else {
clear; type hlib$motd
}
# Delete any old MTIO lock (magtape position) files.
if (deftask ("mtclean"))
mtclean
else
delete uparm$mt?.lok,uparm$*.wcs verify-
# List any packages you want loaded at login time, ONE PER LINE.
images # general image operators
plot # graphics tasks
dataio # data conversions, import export
lists # list processing
# The if(deftask...) is needed for V2.9 compatibility.
if (deftask ("proto"))
proto # prototype or ad hoc tasks
I don't know what you mean by the first 'extern' file .... Anyway, try putting the line
d_trace
as the first line in the login.cl file. It should give you a clue where the error is, if not post the last 20-30 lines of output. The files you posted look normal.
hmm.. okay I've placed d_trace at the top of the login.cl file and I'm not getting any extra output in the xgterm window, just the usual error message about the CL dies.
Should d_trace work on it's own within the xgterm window? If I type d_trace it says 'command not found'
The last message would be a problem in Cygwin or the X11 install, not iraf. You can start IRAF from the cygwin terminal window just to verify that it works but can't use if for graphics. Otherwise, try using the 'xterm' that comes standard so you're not confusing possible problems with the xgterm.
The 'syntax error' looks like it's coming from the CL, the only file read before your login.cl is the $iraf/unix/hlib/clpackage.cl which you should never need to touch, but verify that it is there. This is also the file that loads the extern.pkg file so an error in extern.pkg would cause the error before your login.cl gets read.
Lastly, if you've updated to Windows note that none of this has been tested on that platform yet. Otherwise, could you post a reference to the "instructions laid out by IAC" in case there is some non-standard recommendation in there.
I also verified that the clpackage file was present and it is.
The code used in the extern.pkg file is located at the bottom of the IAC instructions. There may be an error in the formating but I am not experienced enough to spot it, sorry.
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum