Re: [fedora-astronomy] Revised IRAF RPM
by Joseph Wang
f2c. IRAF uses memory tricks that I don't know how to port to gfortran.
Also for f2c to work, I had to use the original f2c.h. Fedora uses a
modified f2c.h
that has different bit sizes for some of the types that caused a lot
of problems.
10 years, 10 months
Re: [fedora-astronomy] Revised IRAF RPM
by Joseph Wang
FYI
---------- Forwarded message ----------
From: Joseph Wang <joequant(a)gmail.com>
Date: Sun, Jun 30, 2013 at 2:07 AM
Subject: Re: Revised IRAF RPM
To: debian-devel(a)liska.ath.cx
I'm running 64-bit. There are unfortunately a lot of places in iraf
where the bits could have
gone wrong between different distributions.
If you can find a way of running the iraf binary under valgrind that
might give a clue as to what is going wrong. Alternatively if you can
compile under debug and get a stack trace of where the error happens,
that would give us some idea of what is breaking.
10 years, 10 months
Revised IRAF RPM
by Joseph Wang
imcopy seems to work for me
vocl> imcopy dev$pix image.short
dev$pix -> image.short
vocl> imcopy dev$pix image.short
dev$pix -> image.short
vocl> imcopy dev$pix image.short
dev$pix -> image.short
vocl> logout
[joe@big-apple ~]$ ls -l image.short.fits
-rw-rw-r-- 1 joe joe 3196800 6月 29 23:11 image.short.fits
10 years, 10 months
Re: [fedora-astronomy] Revised IRAF RPM
by Ole Streicher
Hi Joseph and all,
Joseph Wang <joequant(a)gmail.com> writes:
> At https://dl.dropboxusercontent.com/u/1025783/iraf-2.16-3test.src.rpm
I used this as a base to get IRAF compiled. Although I did this under
Debian, I'd like to share the experiences here:
* Removing pkg/vocl/readline/ leaves vocl uncompilable. To fix this,
apply shared-readline.patch.
* Newer xmlrpc don't have a function xmlrpc_refcount(), which breaks
vendor/voclient/libsamp/librxpc compilation. shared-xmlrpc.patch fixes this.
* VO is not build. This is fixed with the build-vo.patch.
* I patched the build system to consequently use CC and CFLAGS.
This is done with compiler-flags.patch. This allows to propagate
the default flags set by the build system. Debian likes some
hardening flags here, and takes some warnings as errors. The fixes
for these errors are in fix_compiler_errors.patch.
* Moving the libc header files caused some dependency warnings. They
are fixed with the fix-libc-deps.patch.
So far, IRAF compiles without errors. For the setup, I have set the
$iraf variable to /usr/share/iraf/. This leads to the problem that the
executables are not found since they are searched in the same directory.
The patch fhs.patch fixes this, together with the compliance to
freedesktop.org that I already mentioned.
So far, I can start cl, ecl, and vocl and do some of the tests in the
"Preliminary Test Procedure for IRAF" from 1997. Due to the lack of
xgterm, I couldn' test the graphical output (ds9 works, however).
What doesn't work is imcopy. Repeatedly running "imcopy dev$pix
image.short" results in
ecl> imcopy dev$pix image.short
dev$pix -> image.short
ERROR: No write permission on file (String_File)
ecl> imcopy dev$pix image.short
dev$pix -> image.short
ERROR: FXF: EOF encountered while reading FITS file (image.short)
A file "image.short.fits" is created, however it is an invalid fits file.
Can you check whether this works on Fedora, or with a binary
installation of IRAF?
Best regards
Ole
P.S. My git Repository can be found at
<http://anonscm.debian.org/gitweb/?p=debian-science/packages/iraf.git>
The Patches are in the subdir debian/patches/.
10 years, 10 months
Build iraf RPM on fedora
by Joseph Wang
I got Hello world on fedora 18.
The main roadblock was that f2c.h on fedora has had the fortran types
changed a bit.
10 years, 10 months
Script to clean up stock iraf
by Joseph Wang
Here is a script that removes the extra files in iraf.
The one library that we can probably move to an external library is xmlrpc-c
10 years, 10 months
IRAF/Gfortran
by Joseph Wang
gfortran supports f77, but I'm not sure that this is good f77.
The piece of code is
logical Memb(1)
integer*2 Memc(1)
integer*2 Mems(1)
integer Memi(1)
integer Meml(1)
real Memr(1)
double precision Memd(1)
complex Memx(1)
equivalence (Memb, Memc, Mems, Memi, Meml, Memr, Memd, Memx)
common /Mem/ Memd
Memi are then used to reference the memory location as pointers. The
trouble is that f90 sees this as real arrays.
If you have some ideas on how to make this work in gfortran let me know.
10 years, 10 months