Joined: 10 Feb 2006 Posts: 135 Location: Flagstaff
Posted: Mon Jun 11, 2012 2:25 pm Post subject: problem with running external packages on V2.16
I did a clean install of V2.16 on my MacBook Pro yesterday, the 64-bit version (i.e., binaries going into bin.macintel). I then did a ./configure and a make stsdas to lead on the stsdas package. All appeared normal. I can load packages (i.e., stsdas, hst_calib, sits) but when I go to execute a command like "x1d" I get the following error message:
And, indeed, there is no /iraf/iraf/extern/stsdas/bin.macintel directory, only a /iraf/iraf/extern/stsdas/bin.macosx directory (which does contain cs6.e)
The problem is that the X1D task explicitly builds a path to the cs6.e binary (presumably this is done elsewhere as well) using the 'stsdasbin$' logical path (which in turn uses the 'arch' variable, which is macintel for 64-bit systems), this is then executed as a shell escape. In contrast, tasks declared using the normal 'task' mechanism go through a sort of search path in the CL that looks first in the current architecture binary directory, and then in an 'alternate' binary directory (e.g. 'macosx' if 'macintel' isn't found). This allows packages like STSDAS that can't run 64-bit to still be used (Note that pyraf does not implement this path mechanism).
To fix this particular problem, you'll need to make the stsdas$bin.macintel directory a symlink pointing to stsdas$bin.macosx so the binary will be found either way, e.g.
Joined: 10 Feb 2006 Posts: 135 Location: Flagstaff
Posted: Mon Jun 11, 2012 5:32 pm Post subject:
Okay, thanks! I should have thought of that fix myself; I just assumed there was some fundamental configuration issue wrong. This problem must surprise a lot of users...
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