User Tools

Site Tools


skycat

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
skycat [2008/09/01 12:39] – created pkubanekskycat [Unknown date] (current) – external edit (Unknown date) 127.0.0.1
Line 1: Line 1:
 +====== Introduction ======
 +
 +This document is ment as a simple howto for installing [[http://archive.eso.org/cms/tools-documentation/skycat|ESO SkyCat Tool]] on Debian and Ubuntu systems. It surely is not comprehensive nor authoritative, it's rather the simple description of "how we did it". But it still may come in handy ;-).
 +
 +The original version from Petr Kubanek was only for Ubuntu 08.10, now it's extended to Debian 4.0 Etch, Debian 5.0 Lenny and Ubuntu 09.04.
 +
 ====== Downloads ====== ====== Downloads ======
  
-From [[http://archive.eso.org/cms/tools-documentation/eso-skycat-download|Skycat download]] get skycat sources. As TclTk sources are included in Debian, you don'neet them!+From [[http://archive.eso.org/cms/tools-documentation/eso-skycat-download|Skycat download]] get skycat sources. As TclTk sources are included in Debian, you don'need them!
  
 Then install required libraries: Then install required libraries:
  
 +  * Ubuntu <= 08.10:
 <code bash> <code bash>
 user@host:~$ wget http://archive.eso.org/cms/tools-documentation/skycat-download/skycat-3.0.2.src.tar.gz user@host:~$ wget http://archive.eso.org/cms/tools-documentation/skycat-download/skycat-3.0.2.src.tar.gz
 user@host:~$ sudo apt-get install tcl8.4-dev tk8.4-dev blt-dev itcl3.1-dev itk3.1-dev tclx8.4 user@host:~$ sudo apt-get install tcl8.4-dev tk8.4-dev blt-dev itcl3.1-dev itk3.1-dev tclx8.4
 +</code>
 +
 +  * Ubuntu 09.04:
 +<code bash>
 +user@host:~$ wget http://archive.eso.org/cms/tools-documentation/skycat-download/skycat-3.0.2.src.tar.gz
 +user@host:~$ sudo apt-get install tcl8.5-dev tk8.5-dev blt-dev itcl3-dev itk3-dev
 +</code>
 +  * Debian:
 +<code bash>
 +user@host:~$ wget http://archive.eso.org/cms/tools-documentation/skycat-download/skycat-3.0.2.src.tar.gz
 +user@host:~$ sudo apt-get install tcl8.4-dev tk8.4-dev blt-dev itcl3-dev itk3-dev tclx8.4 iwidgets4 x11proto-xext-dev libxext-dev
 </code> </code>
  
 ====== Patching ====== ====== Patching ======
  
 +  * Ubuntu & Debian:
 +If you installed tcl8.4:
 <code bash> <code bash>
-user@host:~$ cd skycat-<version>/+user@host:~$ tar -xzf skycat-3.0.2.src.tar.gz 
 +user@host:~$ cd skycat-3.0.2/
 user@host:~$ ./configure --with-tcl=/usr/lib/tcl8.4/ --with-tk=/usr/lib/tk8.4/ --with-tkinclude=/usr/include/tcl8.4/  --with-blt=/usr/lib user@host:~$ ./configure --with-tcl=/usr/lib/tcl8.4/ --with-tk=/usr/lib/tk8.4/ --with-tkinclude=/usr/include/tcl8.4/  --with-blt=/usr/lib
 +</code>
 +
 +If you installed tcl8.5:
 +<code bash>
 +user@host:~$ tar -xzf skycat-3.0.2.src.tar.gz
 +user@host:~$ cd skycat-3.0.2/
 +user@host:~$ ./configure --with-tcl=/usr/lib/tcl8.5/ --with-tk=/usr/lib/tk8.5/ --with-tkinclude=/usr/include/tcl8.5/  --with-blt=/usr/lib
 </code> </code>
  
Line 27: Line 55:
  
 <code> <code>
-    BLT_LIBNAME=libBLT.2.4${SHLIB_SUFFIX}.8.4+    BLT_LIBNAME=libBLT${SHLIB_SUFFIX}
     BLT_LIBFLAG=-lBLT     BLT_LIBFLAG=-lBLT
 </code> </code>
  
-in case you have ///usr/lib/libBLT.2.4.so.8.4//If you have some different versionplease use it.+Also if you installed tcl8.5, change 8.4 to 8.5 in //skycat/skycat.in//: 
 + 
 +<code bash> 
 +exec wish8.5 $SKYCAT_BASE/lib/skycat@PACKAGE_VERSION@/main.tcl ${1+"$@"} | tee -a $HOME/.skycat/log 2>&
 +</code> 
 + 
 +  * Seems as case only for Ubuntu and Debian 5.0 Lenny 
 + 
 +You need to edit //cat/generic/AstroQuery.h// and put //#include <string.h>// to it, right after //#include <cstdio>// 
 + 
 +<code c++> 
 +#include <cstdio> 
 +#include <string.h> 
 +#include "WorldOrImageCoords.h" 
 +</code> 
 + 
 +Also edit //astrotcl/generic/ImageIO.h//, around line 307 should abs((float)bitpix_).. instead of abs( bitpix_): 
 + 
 +<code c++> 
 +    // reverse the effect of bzero and bscale 
 +    double unScaleValue(double d) const {return (d-bzero_)/bscale_;
 + 
 +    // return the size in bytes of a raw image pixel  
 +    int pixelSize() const {return abs((float) bitpix_)/8;} 
 + 
 +    // member access 
 +</code> 
 + 
 +and in //rtd/generic/RtdImage.C// around line 915 add define for MODULE_SCOPE, so 
 + 
 +<code c++> 
 +// Fix for Tk clipping coordinates to short range: See CanvasWindowCoordsNoClip() below. 
 +#ifdef HAVE_TKCANVAS_H 
 +#include "tkCanvas.h" 
 +#else 
 +// The structure we need hasn't changed for a long time, so just include a local copy. 
 +#include "tkCanvas.h-tk8.4.11" 
 +#define HAVE_TKCANVAS_H  
 +#endif 
 +</code> 
 + 
 +becomes 
 + 
 +<code c++> 
 +#ifndef MODULE_SCOPE 
 +#define MODULE_SCOPE extern 
 +#endif 
 + 
 +// Fix for Tk clipping coordinates to short range: See CanvasWindowCoordsNoClip() below. 
 +#ifdef HAVE_TKCANVAS_H 
 +#include "tkCanvas.h" 
 +#else 
 +// The structure we need hasn't changed for a long timeso just include a local copy. 
 +#include "tkCanvas.h-tk8.4.11" 
 +#define HAVE_TKCANVAS_H 
 +</code> 
 + 
 +  * Debian (seems to be not a problem in ubuntu?): 
 +There is one more problem in these files: 
 +  ./cat/configure 
 +  ./rtd/configure 
 +  ./tclutil/configure 
 +  ./skycat/configure 
 +  ./astrotcl/configure 
 + 
 +It is the redundant single quote mark (') in the end of the line: 
 +  system=MP-RAS-`awk '{print }' /etc/.relid'
 + 
 +You can use this simple pipeline to repair it all: 
 +<code bash> 
 +for i in ./cat/configure ./rtd/configure ./tclutil/configure ./skycat/configure ./astrotcl/configure; do cp $i ${i}.orig; cat ${i}.orig | sed "s/\/etc\/\.relid'/\/etc\/.relid/" > $i; done 
 +</code>
  
 ====== Make ====== ====== Make ======
  
 +  * Debian, Ubuntu <= 08.10:
 <code bash> <code bash>
 user@host:~$ ./configure --with-tcl=/usr/lib/tcl8.4/ --with-tk=/usr/lib/tk8.4/ --with-tkinclude=/usr/include/tcl8.4/  --with-blt=/usr/lib user@host:~$ ./configure --with-tcl=/usr/lib/tcl8.4/ --with-tk=/usr/lib/tk8.4/ --with-tkinclude=/usr/include/tcl8.4/  --with-blt=/usr/lib
 +user@host:~$ make all
 +user@host:~$ sudo make install
 +</code>
 +
 +  * Ubuntu 09.04:
 +<code bash>
 +user@host:~$ ./configure --with-tcl=/usr/lib/tcl8.5/ --with-tk=/usr/lib/tk8.5 --with-tkinclude=/usr/include/tcl8.5 --with-blt=/usr/lib
 user@host:~$ make all user@host:~$ make all
 user@host:~$ sudo make install user@host:~$ sudo make install
skycat.txt · Last modified: 2010/03/26 00:00 (external edit)