View on GitHub

IRAF Community Distribution

IRAF maintained by the community

Home | Installation | Packages | X11IRAF | PyRAF | Forum

IRAF 2.16.1: “make latest” problem

rjvo wrote on Nov 15, 2013


When I try

make latest


I get lot of errors:

Updating IRAF v2.16 to latest release.

Fri Nov 15 12:04:32 CET 2013

(util/self_update)
Updating utility scripts ....Done
(util/iraf_update -all 2>&1 | egrep -v "unexpected end of file")
/opt/iraf//unix/hlib/setup.sh: line 10: /iraf/iraf//unix/hlib/irafarch.sh: No such file or directory
/opt/iraf//unix/hlib/setup.sh: line 12: /iraf/iraf//unix/hlib/irafuser.sh: No such file or directory
util/iraf_update: line 79: /iraf/iraf//unix/hlib/irafuser.sh: No such file or directory
util/iraf_update: line 83: /iraf/iraf//util/pkgrepo: No such file or directory
util/iraf_update: line 87: /iraf/iraf//unix/hlib/irafarch.sh: No such file or directory
Updating IRAF system  ....
util/iraf_latest: line 24: /iraf/iraf//unix/hlib/setup.sh: No such file or directory
$iraf is /iraf/iraf/
util/iraf_latest: line 36: /iraf/iraf//util/pkgrepo: No such file or directory
util/iraf_latest: line 40: /iraf/iraf//unix/hlib/irafarch.sh: No such file or directory
Updating binaries:   linux
util/iraf_latest: line 75: /iraf/iraf//util/pkgrepo: No such file or directory
Downloading: patch-src.tar.gzutil/iraf_latest: line 78: /iraf/iraf//util/fget: No such file or directory

Error: file /patch-src.tar.gz not found, quitting

Fri Nov 15 12:04:34 CET 2013
 


I think something does not work well.

Mike Fitzpatrick wrote on Nov 15, 2013



The update script doesn't appear to be re-editing the default iraf path with the local iraf path once it updates the utility scripts, at least in the case of the setup scripts. Try explicityly setting a $iraf before the 'make latest' to avoid using the default iraf path, e.g.

setenv iraf /opt/iraf/ (for C-shell)

export iraf=/opt/iraf/

Note the trailing '/' is required.

rjvo wrote on Nov 15, 2013


This does not work. The script is not able to recognize the actual iraf path.

Mike Fitzpatrick wrote on Nov 15, 2013



I'm working on a fix. Unfortunately I'm also travelling at the moment. Are you trying to update a v2.16 to v2.16.1 or get the latest v2.16.1? Manually you should be able to do this as

% cd $iraf

% make self_update

% ./install

but I'll admit I haven't tried it.

rjvo wrote on Nov 15, 2013


No progress.


Mike Fitzpatrick wrote on Nov 15, 2013


Since your first 'make latest' overwrote the utility scripts, the setup.sh probably now contains the /iraf/iraf path. If you run the install script again it should change the path back.

I've deployed a fixed script, however there still seems to be some funny interaction in how the Bash shell handles the script overwriting itself. I'd also suggest you edit your .bashrc* and .profile files to remove the iraf setup at the end before doing any of this. That might allow the shell to not reset the $iraf during the update.

rjvo wrote on Nov 15, 2013


No, the $iraf is correct. The "make latest" did never happen (look at my 1st post). The problem is the "make latest" does not work at all.

rjvo wrote on Nov 16, 2013


I downloaded today the binaries and installed successfully. Then (as a check) I did "make latest" and the system started to download the binaries and did the upgrade. Congratulations. Anyway, I tried to install some externals and (after "cd extern") the "./configure" brings the errors:

/opt/iraf/extern$ ./configure 
Initializing repository data ....
/opt/iraf//unix/hlib/setup.sh: line 10: /iraf/iraf//unix/hlib/irafarch.sh: No such file or directory
/opt/iraf//unix/hlib/setup.sh: line 12: /iraf/iraf//unix/hlib/irafuser.sh: No such file or directory
/opt/iraf/extern/../unix/hlib/irafarch.sh: line 45: /iraf/iraf//unix/hlib/util.sh: No such file or directory
/opt/iraf/extern/../unix/hlib/irafarch.sh: line 236: ECHO: command not found
/opt/iraf/extern/../util/pkgget: line 29: /iraf/iraf//unix/hlib/setup.sh: No such file or directory
/opt/iraf/extern/../util/pkgget: line 34: /iraf/iraf//unix/hlib/util.sh: No such file or directory
/opt/iraf/extern/../util/pkgget: line 29: /iraf/iraf//unix/hlib/setup.sh: No such file or directory
/opt/iraf/extern/../util/pkgget: line 34: /iraf/iraf//unix/hlib/util.sh: No such file or directory
Creating system makefile ....
Setup Complete.
 


Nicola Caon wrote on Mar 17, 2014


I'm trying to install IRAF 2.16.1 and am experiencing the same problem reported by the OP. This happens to me when installing the external packages (I did not run the general install script though, as we have a multi-version installation here and we create symlinks, change paths etc. by hand to be safe).

I think the problem originates from the file setup.sh, in particular the lines shown below.


# Allow a previously defined $iraf to be used.
if [ -n $iraf ]; then
    export iraf=/iraf/iraf/
fi
 


Since "-n" means true if the length of the string is non-zero, the test will overwrite any previous definition of iraf. Shouldn't the test be negated, that is:


# Allow a previously defined $iraf to be used.
if [ ! -n $iraf ]; then
    export iraf=/iraf/iraf/
fi
 


I'll try to do this small change in the script and check whether installing external packages works out.

Thanks

Nicola


Last post on Mar 17, 2014