Instalar DeepDetect en Fedora

DeepDetect es un servidor y una API de aprendizaje de máquina escrita en lenguaje C++11 y desarrollada por Jolibrain. Dado que en la página oficial se encuentran las instrucciones de instalación para Debian/Ubuntu, aquí presentamos el equivalente para distribuciones Fedora  a partir de la versión 23.

1. Instalar las dependencias base

Se requieren instalar los siguientes paquetes (cerca de 43 MB de descarga/ 450 MB instalado)

# dnf install @development-tools boost-devel cmake curlpp-devel git gflags-devel glog-devel gtest-devel eigen3-devel hdf5-devel leveldb-devel libcurl-devel libcurl lmdb-devel openblas-devel opencv-devel openssl-devel protobuf-devel protobuf-compiler snappy-devel utf8cpp-devel

Algunos se encuentran en el repositorio EPEL. Si no se tiene instalado (a la fecha de escribir esta entrada la última versión es la 7):

# dnf install -y wget
$ wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
# rpm -Uvh epel-release-latest-7.noarch.rpm

Y por último un paquete que quizás no se encuentre en los repositorios, razón por la cual debe instalarse desde los fuente:

$ wget http://downloads.cpp-netlib.org/0.12.0/cpp-netlib-0.12.0-final.tar.gz
$ tar -xvzf cpp-netlib-0.12.0-final.tar.gz
$ cd cd cpp-netlib-0.12.0-final/
$ mkdir cpp-netlib-build
$ cd cpp-netlib-build/
# cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ ..
# make
# make install

En algunas distribuciones se presenta un error al ejecutar make debido principalmente a una discrepancia entre las carpetas que contienen ciertos archivos. En esos casos es necesario copiar los archivos al lugar requerido (o agregar al path la ruta):

# cp /usr/include/boost/fusion/adapted/std_tuple.hpp /usr/include/boost/fusion/include/std_tuple.hpp

2. Instalar DeepDetect

$ git clone https://github.com/beniz/deepdetect.git
$ cd deepdetect
$ mkdir build 
$ cd build
$ cmake .. 
$ make

En algunas distribuciones las cabeceras de openblas deben estar en la carpeta /usr/include, por tanto es necesario copiarlas a dicha carpeta o registrar la ruta en el path:

cp /usr/include/openblas/*.h /usr/include/

 

A %d blogueros les gusta esto: