Armadito modules

La compilation est relativement la même pour les différents modules d’analyse de l’antivirus Armadito. Il n’est pas nécessaire de compiler/installer tous les modules pour utiliser l’antivirus. Le choix des modules est en effet totalement libre.

Avertissement

Assurez-vous d’avoir compilé libarmadito (core) avant de compiler un de ces modules.

Pré-requis

Pour compiler un module, vous avez besoin des outils suivants:

  • automake/autoconf
  • GNU make
  • C compiler
  • libarmadito (core)

Certains modules ont des dépendances supplémentaires :

armadito-mod-clamav :
  • libclamav library and headers. Ubuntu : libclamav-dev
armadito-mod-yara :
  • libyara library and headers. Ubuntu : libyara-dev
armadito-mod-h1 :
  • pas de dépendances supplémentaires
armadito-mod-pdf :
  • pas de dépendances supplémentaires

Clone

git clone -b DEV https://github.com/armadito/armadito-mod-clamav.git
git clone -b DEV https://github.com/armadito/armadito-mod-yara.git
git clone -b DEV https://github.com/armadito/armadito-mod-h1.git
git clone -b DEV https://github.com/armadito/armadito-mod-pdf.git

Configuration

Une fois le repo cloné, vous devez initialiser la compilation en utilisant automake et autoconf. Un script shell autogen.sh est d’ailleurs prévu pour faciliter cette étape:

$ ./autogen.sh
+ aclocal --force
+ libtoolize --force --automake --copy
+ automake --foreign --add-missing --force-missing --copy
+ autoconf --force

Cela générera les fichiers Makefile.in et configure.

configure script prend les options suivantes:

--prefix=PREFIX
 installe l’architecture-independent de PREFIX [/usr/local]
--enable-debug enable debugging [default is yes]

Le répertoire PREFIX sera utilisé par make install. Son utilisation est obligatoire, sauf pour la création d’un paquet ou l’installation dans les répertoires du système.

libarmadito utilise pkg-config pour spécifier les options de compilation relatives à libarmadito. Puisque le fichier de spécification libarmadito.pc pour pkg-config n’est pas situé dans le repertoire standard (habituel /usr/lib/pkgconfig), l’appel du script configure doit inclure la variable d’environnement PKG_CONFIG_PATH.

Compiler dans un répertoire distinct est fortement recommandé, sauf si vous voulez vraiment ajouter dans les sources des objets, des bibliothèques, des binaires et d’autres choses.

Par exemple :

$ REPO_GIT/configure --prefix=/home/joebar/install --enable-debug PKG_CONFIG_PATH=/home/joebar/install/lib/pkgconfig

Notez que le chemin spécifié dans la valeur de PKG_CONFIG_PATH doit être cohérent avec le PREFIX utilisé dans l’installation libarmadito (voir Armadito core compilation sur linux).

Compilation

$ make

Installation

$ make install

Cela installera les bibliothèques, les outils, les fichiers d’en-tête ... dans les sous-répertoires du chemin PREFIX défini au moment de la configuration. Exemple: /home/joebar/install/...