View on GitHub

IRAF Community Distribution

IRAF maintained by the community

Home | Installation | Packages | X11IRAF | PyRAF | Forum

missing xx_rvsao.e when installing rvsao on cygwin

ina wrote on Jun 18, 2009

Hello everyone,
I am facing some problems while trying to install the package rvsao.

For some time now I have been sucessfully using IRAF V2.14.1 on my Windows Vista (32bit) system with a complete installation of Cygwin.

When I now try to install rvsao (Version 2.7.6) following the instructions on http://tdc-www.harvard.edu/iraf/rvsao/rvsao.install.html,
I get the following errors at the end of the spool-file.

xc -c -w -p noao x_rvsao.x
x_rvsao.x:
   sys_runtask:
x_rvsao.f:
   sysruk:
move `bin/librv.a' to `librv.a'
xc -Nz -p noao -z x_rvsao.o librv.a -lsmw -lxtools -lcurfit -liminterp -lllsq -o xx_rvsao.e
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/bin/ld: warning: auto-importing has been activated without --enable-auto-import specified on the command line.
This should work unless it involves constant data structures referencing symbols from auto-imported DLLs.librv.a(t_sumspec.o):t_sumspec.c:(.text+0xd32): undefined reference to `_tmpwrf_'
librv.a(t_sumspec.o):t_sumspec.c:(.text+0xd57): undefined reference to `_tmpcle_'
librv.a(t_sumspec.o):t_sumspec.c:(.text+0xe1f): undefined reference to `_tmpwrf_'
librv.a(t_sumspec.o):t_sumspec.c:(.text+0xecc): undefined reference to `_tmpcle_'
librv.a(t_linespec.o):t_linespec.c:(.text+0x926): undefined reference to `_tmpopn_'
librv.a(t_linespec.o):t_linespec.c:(.text+0x10e3): undefined reference to `_tmpcle_'
librv.a(addspec.o):addspec.c:(.text+0x150b): undefined reference to `_tmpopn_'
librv.a(addspec.o):addspec.c:(.text+0x153e): undefined reference to `_tmpopn_'
Info: resolving __timezone by linking to __imp___timezone (auto-import)
collect2: ld returned 1 exit status
move `librv.a' to `bin/librv.a'
delete file x_rvsao.o
move `xx_rvsao.e' to `bin/x_rvsao.e'
$move: file `xx_rvsao.e' not found
Warning, mkpkg line 13: error moving file xx_rvsao.e
Warning, mkpkg line 9: module `install' not found or returned error


Earlier in the file there is also given

writetemp.x:
   tmp_open:
   tmp_close:
   tmp_write_iraf:
   tmp_put_image_line:
   tmp_change_pix:
   tmp_pix_lim:
Error on line 288 of writetemp.x: definition too long


All the rest is ok but without x_rvsao.e the tasks I need do not work.

What can I do to get rid of these errors and complete the installation?

The variables IRAFARCH (cygwin) and Iraf (/iraf/iraf/) are all set correctly as are the entries in the extern.pkg-file. I can load rvsao and even read the help and parameter files.

A colleague got the same errors when trying to install the package on another similar Vista/Cygwin system finding even more undefined references (about 100).

I would be very happy if anyone could help me with this problem.

Thank you,
Ina

Mike Fitzpatrick wrote on Jun 18, 2009

I put a set of binaries for v2.7.6 in the download area if you just want to use those, otherwise edit the writetemp.x file and remove the include definitions for the <fio.h> and <fset.h>. The code should them compile.

-Mike

ina wrote on Jun 18, 2009

Thank you,

especially for the very quick answer. Now it works fine. :D

Ina

Rene A. Ortega-Minakata wrote on Jun 18, 2009

fitz

I put a set of binaries for v2.7.6 in the download area if you just want to use those, otherwise edit the writetemp.x file and remove the include definitions for the <fio.h> and <fset.h>. The code should them compile.


Hi;

I've got the same problem.
I've edited writetemp.x and taken out the include definitions mentioned above but still get the same error message (with version 2.7.8, btw). Here are the last lines from the spool file:

move `bin/librv.a' to `librv.a'
xc -Nz -/static -p noao -z x_rvsao.o librv.a -lsmw -lxtools -lcurfit -liminterp -lllsq -o xx_rvsao.e
gcc: libmain.o: No such file or directory
gcc: libex.a: No such file or directory
gcc: libsys.a: No such file or directory
gcc: libvops.a: No such file or directory
move `librv.a' to `bin/librv.a'
delete file x_rvsao.o
move `xx_rvsao.e' to `bin/x_rvsao.e'
$move: file `xx_rvsao.e' not found
Warning, mkpkg line 13: error moving file xx_rvsao.e
Warning, mkpkg line 9: module `install' not found or returned error


I've tried to look for the missing libraries from the gcc error message with no luck.

I'm running Iraf v. 2.14.1 in Ubuntu 9.10 (i.e., IRAFARCH = linux) - btw, I'm on a 64-bit system...

Thank you very much in advance!

Mike Fitzpatrick wrote on Jun 18, 2009

You need the v2.15 Alpha release described on the home page in order to compile on a 64-bit system. Unless you want to upgrade IRAF, you can get the RVSAO 2.7.8 redhat binaries from the download area (http://iraf.net/ftp/iraf/extern) and install them in the rvsao$bin.linux directory and you're done.

-Mike

Rene A. Ortega-Minakata wrote on Jun 18, 2009

fitz

You need the v2.15 Alpha release described on the home page in order to compile on a 64-bit system. Unless you want to upgrade IRAF, you can get the RVSAO 2.7.8 redhat binaries from the download area (http://iraf.net/ftp/iraf/extern) and install them in the rvsao$bin.linux directory and you're done.


I wouldn't like to make a full upgrade of iraf just now... but still, even with the binaries you pointed me to (unpacked in the aproppriate directory), the mkpkg still gives same error message in the end:

Warning, mkpkg line 9: module `install' not found or returned error


Do I need to delete any other line in any file or something like that? (so that it compiles using the new file...) or is anything else missing?

Thank you very much (and happy holidays :) ).

René Ortega.

Mike Fitzpatrick wrote on Jun 18, 2009

When you install package binaries, you don't have to compile (and in fact, the package binaries won't fix any problems that prevented you from compiling in the first place). So long as the files unpacked and put a x_foo.e file in the package bin.<arch> directory you can just start using the package.

-Mike

Rene A. Ortega-Minakata wrote on Jun 18, 2009

fitz

When you install package binaries, you don't have to compile (and in fact, the package binaries won't fix any problems that prevented you from compiling in the first place).


Yes, I thought of that, but it didn't work by just putting teh x_rvsao.e flie in the bin.linux directory.

I've moved the x_rvsao.e file to the rvsao root directory and it worked.

Thanks a lot for your help! :D
René.

Mike Fitzpatrick wrote on Jun 18, 2009


Yes, I thought of that, but it didn't work by just putting teh x_rvsao.e flie in the bin.linux directory.


For a Cygwin system, the proper place to put the binary is the package 'bin.cygwin' directory. For some packages, you may need to create this directory manually.

Last post on Jun 18, 2009