View on GitHub

IRAF Community Distribution

IRAF maintained by the community

Home | Installation | Packages | X11IRAF | PyRAF | Forum

IRAF 2.15 extern make update

Robert Janusz wrote on Feb 21, 2011

I successfully installed some extern packages. Today in "extern" folder I did:
make update
and I got a list with no package installed.

Mike Fitzpatrick wrote on Feb 21, 2011

Two questions: Which packages did you install? In the $iraf/extern directory, you should have a file called ".installed" that looks something like


1298296366 fitsutil
1298296419 mscred


Does this exist, and if so, what is in it?

Mike Fitzpatrick wrote on Feb 21, 2011

I see what's happening now: A "make update" is working correctly, however there is no output when a package is deemed current. If you check the output closely, I think you'll see that the packages you installed simply aren't listed.

In any case, do a "make self_update" to pick up a change to the script so that a 'make update' will print out the current packages as well.

Robert Janusz wrote on Feb 21, 2011

I did
make self_update
the file ".installed" is now
1298285386   fitsutil
1298285632   mscred
1298289309   stsdas
1298285988   tables
and the folders "fitsutil" ... "tables" are empty. Noting of it works, of course. So I do
make mscred
with new setup and the output is
Setting architecture: 'linux' .... 
Adding dependency 'fitsutil' ....
Installing package 'fitsutil' ....  [OK]
Installing package 'mscred' ....  [OK]

In the folder "fitsutil" there are files (the link "bin" points to "bin.generic") and in the folder "mscred" there are files as well (the link "bin" points to non existing "bin.macintel"). The ".installed" is
1298318515   fitsutil
1298318693   mscred
Now I do
make update
and there is a list with all "is not installed" and the folders "fitsutil" and "mscred" are empty.

Robert Janusz wrote on Feb 21, 2011

IRAF 2.15.1a
Back to the "extern" packages. There is no "bin.linux" link to "bin.redhat" in "stsdas" and "tables". Because the "bin" link in both cases point to "bin.generic" we have many unresolved "lib*" links; there is also unresolved link "tables_v313".
Now in "/iraf/iraf/" I do "make check" and I can see the installed packages "is current" message. "make update" gives for all packages: "is not installed" and there is no data in the folders "fitsutil, mscred, stsdas, tables" - all contents removed.

Mike Fitzpatrick wrote on Feb 21, 2011

here is no "bin.linux" link to "bin.redhat" in "stsdas" and "tables". Because the "bin" link in both cases point to "bin.generic" we have many unresolved "lib*" links; there is also unresolved link "tables_v313".


Links from bin.redhat --> bin.linux are not necessary for the system to work, the CL will search alternate bin directories if the current architecture isn't installed. The lib links like I said are resolved when the package is configured for a particular arch, the 'tables_v313' link is a mistake that can be removed.

Now in "/iraf/iraf/" I do "make check" and I can see the installed packages "is current" message. "make update" gives for all packages: "is not installed" and there is no data in the folders "fitsutil, mscred, stsdas, tables" - all contents removed.


I think you mean /iraf/iraf/extern, but it may just be that the packages were never installed properly the first time. The check is done by matching the timestamp in a .installed file with one in the package manifest, it doesn't actually check for package files. Directories will be created when you first do a "configure" but will be empty (the names are meant to tell you what packages are available for your system). At any time, doing a "make mscred" will force the installation of the package even if the files are thought to be current.

Try forcing each package you want with a e.g. "make mscred", then let me know if 'make update' still has problems. I don't think there's anything that automatically removes a package (other than a specific 'make clean_mscred' command for instance.).

Robert Janusz wrote on Feb 21, 2011

I do
/iraf/iraf/extern$ make update
and I get
Initializing repository data ....
Creating system makefile ....
Setup Complete.
...
Updating repository data ....
Package adccdrom     is not installed ....
...
Package xdwred       is not installed ....
and all subfolders with installed extern packages are emty --- all contents deleted. :(

Mike Fitzpatrick wrote on Feb 21, 2011

I think I've found the sequence of commands to reproduce this and have it fixed. Try the following sequence of commands:


cd $iraf/extern
make self_update
../util/pkgupdate -config
./configure -noclean


Subsequent 'make update' command should no long delete the existing packages.

Robert Janusz wrote on Feb 21, 2011

OK. After having done the operations above I did "make update" and I got all packages "is not installed" and all is deleted. So I do "make mscred" and did again "make update". It did not delete the packages.

In "fitsutil/lib" there are two links unresolved, because "bin -> bin.generic", it should point to "bin.linux" so the link is OK.

Last post on Feb 21, 2011