====== 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 ====== 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't need them! Then install required libraries: * Ubuntu <= 08.10: 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 * Ubuntu 09.04: 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 * Debian: 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 ====== Patching ====== * Ubuntu & Debian: If you installed tcl8.4: 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 If you installed tcl8.5: 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 You will get error (libBLT24), which is expected. Now edit //tclutil/configure//, find **libBLT24** and replace this line: BLT_LIBNAME=libBLT24${SHLIB_SUFFIX} BLT_LIBFLAG=-lBLT24 with BLT_LIBNAME=libBLT${SHLIB_SUFFIX} BLT_LIBFLAG=-lBLT Also if you installed tcl8.5, change 8.4 to 8.5 in //skycat/skycat.in//: exec wish8.5 $SKYCAT_BASE/lib/skycat@PACKAGE_VERSION@/main.tcl ${1+"$@"} | tee -a $HOME/.skycat/log 2>&1 * Seems as case only for Ubuntu and Debian 5.0 Lenny You need to edit //cat/generic/AstroQuery.h// and put //#include // to it, right after //#include // #include #include #include "WorldOrImageCoords.h" Also edit //astrotcl/generic/ImageIO.h//, around line 307 should abs((float)bitpix_).. instead of abs( bitpix_): // 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 and in //rtd/generic/RtdImage.C// around line 915 add define for MODULE_SCOPE, so // 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 becomes #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 time, so just include a local copy. #include "tkCanvas.h-tk8.4.11" #define HAVE_TKCANVAS_H * 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: 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 ====== Make ====== * Debian, Ubuntu <= 08.10: 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 * Ubuntu 09.04: 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:~$ sudo make install ====== Troubleshooting ====== Please write to [[petr@iaa.es]], and attach error description.