Compilar Scan Tailor

en Debian 7.0 "Wheezy", Debian 8.0 "Jessie" y Ubuntu 16.04 LTS "Xenial Xerus"

Pre-requisitos para la compilación

Nota para usuarios de Ubuntu: use sudo -i para hacerse usuario root, o deberá anteponer sudo a todos los comando indicados para root

Asegurarse que el repositorio de código fuente esté habilitado en la lista de fuentes de Debian en /etc/apt/sources.list. Si no, editar el archivo (como root) y agregar o descomentar esta línea:

deb-src http://ftp.us.debian.org/debian wheezy main

en Ubuntu 16.04 agregar la línea deb-src http://ar.archive.ubuntu.com/ubuntu/ xenial main

Actualizar la lista de paquetes de Debian:

apt-get update

Instalar herramientas básicas para compilar:

apt-get install build-essential cmake

Instalar el código fuente de la librería QT:

apt-get install libqt4-dev

Instalar el resto de las dependencias:

apt-get install libjpeg8-dev libtiff5-dev libpng12-dev
apt-get install zlib1g-dev libboost1.49-all-dev libxrender-dev 

En Debian Jessie

apt-get install libjpeg-dev libtiff5-dev libpng12-dev
apt-get install zlib1g-dev libboost-all-dev libxrender-dev 

En Ubuntu Xenial (ToDo: verificar si es necesario el paquete libjpeg8-dev)

apt-get install libjpeg8-dev libjpeg-dev libtiff5-dev libpng12-dev
apt-get install zlib1g-dev libboost-all-dev libxrender-dev 

Obtener el código fuente

Opción 1) Descargar la última versión de Scan Tailor

  • Descargar la última versión desde el sitio de Scan Tailor en GitHub. También están disponibles los repositorios antiguos de sourceforge (no recomedado). Link de descarga para la versión 0.9.11.1 (julio de 2015): RELEASE_0_9_11_1.tar.gz.
  • Copiar el archivo descargado a un directorio para compilar, por ejemplo: /opt/src, o /home/<usuario>/src
  • Descomprimir el archivo.

Con la consola:

wget https://github.com/scantailor/scantailor/archive/RELEASE_0_9_11_1.tar.gz
tar -xzvf RELEASE_0_9_11_1.tar.gz
cd scantailor-0.9.11.1

Opción 2) Desde el repositorio git

Si no tiene git instalado use

 apt-get install git

La versión del repositorio contiene las últimas actualizaciones incorporadas por los desarrolladores al software, pero puede presentar fallas (bugs) que aún no han sido detectadas o solucionadas.

Clonar el repositorio en una carpeta local:

 git clone https://github.com/scantailor/scantailor.git

Para clonar el repositorio sin todo el historial:

 git clone --depth 1 https://github.com/scantailor/scantailor.git

Opción desde sourceforge:

 git clone git://scantailor.git.sourceforge.net/gitroot/scantailor/scantailor 

Scantailor Enhanced

Scantailor Enhanced es un branch del proyecto con funciones agregadas que no estan en la rama primcipal (julio 2015). Se puede instalar clonando el repositorio (recomendado):

 git clone -b enhanced https://github.com/scantailor/scantailor.git

O descargar los archivos compilados o para compilar desde la antiguo repositorio del proyecto en Sourceforge http://sourceforge.net/projects/scantailor/files/scantailor-devel/enhanced/.

Para Ubuntu 16.04: use el siguiente repositorio que corrige un error de compilación por problemas entre las nuevas versiones del libboost y QT (ver commit con corrección, explicación en stackoverflow)

 git clone -b enhanced https://github.com/d-a-l/scantailor.git scantailor-enhanced

El proceso de compilación para Scantailor o Scantailor Enhanced es el mismo

Compilar

Abrir una consola en directorio que contiene el código fuente de Scan Tailor y ejecutar:

cmake .

Nota: Observe que debe escribir un punto "." luego del comando cmake para indicarle que esta trabajando en el directorio actual.

Al finalizar el proceso debe leerse:

- Configuring done 
- Generating done

Compilar con make

make

Instalar en el sistema (como root)

make install

Nota 1: en vez de make install puede utilizarse checkinstall, que permite desinstalar el programa facilmente desde el gestor de paquetes de Debian. Si no está instalado: apt-get install checkinstall

Nota 2: Puede ejecutarse el binario compilado en el código fuente sin instalar, y de esta forma evitar conflictos con la instalción realizada desde el repositorio de Debian y tenr ambas opciones disponibles. Entonces, para ejecutar Scantailor Enhanced podría usar:

 /opt/src/scantailor-enhanced/scantailor-cli

Para facilitar el comando puede crear un enlace simbólico en /usr/bin

 ln -s /opt/src/scantailor-enhanced/scantailor-cli /usr/bin/scantailor-enhanced-cli

O un alias en ~/.bashrc

 alias scantailor-enhanced-cli='/opt/src/scantailor-enhanced/scantailor-cli'

Varios:

Scantailor Advanced (Ubuntu 18.04)

Dependencias para Ubuntu Bionic 18.04

sudo apt-get install libboost-all-dev build-essential gcc-7 g++-7 libjpeg-dev libpng-dev libtiff5-dev libboost-test1.65-dev libboost-test1.65.1 qtbase5-dev qttools5-dev qttools5-dev-tools libqt5opengl5-dev libpthread-stubs0-dev

(verificar si estas estan instaladas)

sudo apt-get install libc6 libgcc1 libjpeg8 libqt4-xml libqtcore4 libqtgui4 libstdc++6 libtiff5 libxrender1

Instalar:

cd /opt/src
git clone https://github.com/4lex4/scantailor-advanced.git scantailor-advanced
cd scantailor-advanced
mkdir build && cd build
cmake -G "Unix Makefiles" --build ..
make -j `nproc`
# sudo make install # o sudo checkinstall --install=no

Cmake

scantailor-advanced requiere una version de cmake que no está en Ubuntu 16.04, para compilar instalar una version mas reciente:

Descargar la última version estable desde https://cmake.org/download/, ejemplo:

cd /opt/src
wget https://cmake.org/files/v3.12/cmake-3.12.4.tar.gz
tar xzvf cmake-3.12.4.tar.gz
cd cmake-3.12.4

luego compilar:

./bootstrap
make -j4
sudo make install

(en vez de sudo make install puede utilizarse sudo checkinstall)
para saber si se instaló correctamente:

cmake --version

mas info en How do I install the latest version of cmake from the command line?

Scantailor Universal (Ubuntu 18.04)

(Iguales requerimientos que Scantailor Advanced)

otros repositorios de interes: