« Previous - Version 10/29 (diff) - Next » - Current version
Joël Brogniart, 12/07/2017 10:41 am


Installation de la version de développement d'AMC sous OS X Mountain Lion (10.8)

(Cette installation fonctionne sous OS X 10.8.5 avec XCode 5 et MacPorts 2.2.0)

Le logiciel Auto Multiple Choice (AMC) est un logiciel de gestion de questionnaires. Il permet, à partir de la définition des questions (question à choix unique/question à choix multiple, bonnes/mauvaises réponses…) de générer des feuilles de questionnaires. Une fois ces questionnaires remplis et numérisés, AMC permet de corriger automatiquement les questionnaires. Ce logiciel fonctionne dans un environnement graphique X Window System sous Linux et OS X.

Il est possible d'installer la version précompilée 1.1.1 d'AMC, mais pour pouvoir bénéfier des améliorations apportées à Auto Multiple Choice au cours de son développement, il est aussi possible d'installer AMC à partir du code source.

Pour l'instant, l'installation décrite ici est assez technique et concerne uniquement OS X 10.8 (et 10.7.5 avec la dernière version de XCode). Cette installation nécessite quelques connaissances sur les outils Unix, l'utilisation de lignes de commandes, une compréhension de l'architecture des ports MacPorts, une petite compréhension des dépendances entre différents outils (Subversion, MacPorts, PERL, X11, ports…) et de l'architecture OS X. Il faut aussi disposer des droits d'administration sur l'ordinateur. Elle n'est donc malheureusement pas destinée à tout le monde. Il y a un petit soucis pour la communication avec les outils d'impression et la version installée ne pourra pas imprimer directement. Les documents générés par AMC devront être imprimés à partir de OS X.

Pour cette installation il va falloir créer un dépot local MacPort. Dans ce dépot, sera mis le fichier de description de port pour AMC. Une fois le fichier de port installé, l'installation d'AMC pourra être lancée.

Prérequis

Les prérequis sont identiques à ceux de l'installation de la version 1.1.1 d'AMC. Pour fonctionner avec son interface, AMC nécessite un environnement graphique X Window System ou X11, la police de caractères Linux Libertine et le système d'installation MacPorts.

L'environnement X Window System

OS X ne contient pas en standard l'environnement graphique X11. Il est possible de combler cette lacune en installant XQuartz, un environnement X Windows System fonctionnant sous OS X. On peut télécharger l'application sur le site XQuartz.

La police Linux Libertine

La police Linux Libertine est une police libre qui couvre les pages de code pour les langues latines, le grec, les langues cyrilliques, l'hébreu, l'alphabet phonétique international (et d'autres). Il faut télécharger le paquet "OTF" sur le site LinuxLibertine.org.

Attention : La version actuelle de XQuartz (2.7.4) ne reconnait pas les polices installées dans le dossier de l'utilisateur. Il faut installer les polices en les déplaçant dans le dossier "/Library/Fonts".

MacPorts

MacPorts est un système qui permet de compiler, installer et gérer des logiciels source libre. Il faut télécharger le paquet d'installation Mountain Lion sur le site MacPorts et installer MacPorts.

MacPorts et les fichiers de port

Un fichier de port MacPorts contient les informations qui permettent d'installer un programme dans le système MacPorts. Il indique quels sont les outils nécessaires à l'installation et au fonctionnement du programme et comment faire pour installer le programme. MacPorts contient de nombreux ports", mais il ne contient pas de port décrivant l'installation d'AMC à partir du code source du programme. Il va donc falloir créer le fichier de port pour la version de développement d'AMC.

Pour éviter les conflits avec les ports déjà décrits de MacPorts, les nouveaux fichiers de ports seront installés dans le dossier de l'utilisateur qui fait l'installation, au lieu d'être installés dans les dossiers directements gérés par MacPorts.

Remarque : MacPorts est un effort collaboratif et de nombreux développeurs participent à son évolution. Ainsi les fichiers décrits ici ont ils été proposés pour être ajoutés aux fichiers référencés dans MacPorts. Lorsque et si un ajout est accepté, le fichier de port local n'est plus nécessaire. Une mise à jour de MacPorts importera le fichier de port accepté dans la hiérarchie standard de MacPorts.

Dépot local MacPorts

Pour que MacPorts puisse utiliser un dossier local, il faut créer ce dossier local.

mkdir -p ~/nix/macports

Il faut ensuite indiquer à MacPorts de prendre en compte le dossier local et ceci, avant la prise en compte de la hiérarchie standard de MacPorts. Pour cela il faut éditer le fichier "/opt/local/etc/macports/sources.conf" et ajouter un URL pointant vers le dossier local avant l'URL rsync du dépot MacPorts.

file:///Users/julesvernes/nix/macports
rsync://rsync.macports.org/release/tarballs/ports.tar [default]

Fichiers de ports

Une archive contenant le fichier de ports décrit ici est disponible au téléchargement : attachment:macports.zip.

Les ports sont regroupés par catégories et l'organisation des fichiers de port reflète ce groupement. Chaque port fait partie d'une catégorie principale et dispose de son propre dossier. La catégorie principale de AMC dans MacPorts est X11, aussi le dossier du port pour AMC se trouvera à l'intérieur d'un dossier X11. AMC est développé en PERL et nécessite de nombreux modules CPAN disponibles sur MacPorts. Jusqu'à récemment, il était nécessaire d'avoir une version locale de certains modules PERL, ce n'est plus le cas maintenant mais il peut en rester des traces dans ce texte.

Voici une commande permettant de créer cette hiérarchie.

cd ~/nix/macports
mkdir -p x11/auto-multiple-choice-devel

Chacun des dossiers de port doit contenir un document nommé Portfile. Ce document est un document texte contenant une description permettant l'installation par MacPorts d'AMC.

x11/auto-multiple-choice-devel/Portfile
# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
# $Id: Portfile 96038 2012-07-30 02:14:11Z dports@macports.org $

PortSystem              1.0

name                    auto-multiple-choice-devel
version                 1.2.1.${svn.revision}
categories              x11 tex education
platforms               darwin
license                 GPL-2+
maintainers             nomaintainer

description             Auto Multiple Choice - Multiple Choice Papers Management
long_description        Utility to manage multiple choice questionnaires, \
                        with optionally mixed questions and answers. \
                        AMC provides automatic marking from papers' scans. \
                        Annotated papers are produced. Marks can be exported \
                        as an OpenOffice.org sheet file. \
                        \
                        This version can't print. Documents should be printed from OS X.

homepage                http://home.gna.org/auto-qcm
conflicts               auto-multiple-choice

depends_build-append    port:dblatex \
                        port:p5.12-xml-libxml
depends_lib             port:opencv
depends_run             port:p5.12-gtk2 \
                        port:p5.12-xml-simple \
                        port:p5.12-xml-writer \
                        port:p5.12-archive-zip \
                        port:p5.12-locale-gettext \
                        port:p5.12-digest-md5 \
                        port:p5.12-module-load-conditional \
                        port:p5.12-perlmagick \
                        port:p5.12-openoffice-oodoc \
                        port:p5.12-file-mimeinfo \
                        port:p5.12-dbd-sqlite \
                        port:p5.12-text-csv \
                        port:p5.12-file-basedir \
                        port:p5.12-email-mime \
                        port:p5.12-email-sender \
                        port:sqlite3 \
                        port:poppler \
                        port:netpbm \
                        port:librsvg \
                        port:gdk-pixbuf2

use_configure           no

fetch.type              svn
svn.revision            1452
svn.url                 svn://svn.gna.org/auto-qcm/trunk/
worksrcdir              trunk

build.args              AMCCONF=macports \
                        BASEPATH=${prefix} \
                        LATEX_FREE=1 \
                        GCC_PP="${configure.cc} ${configure.cc_archflags}" 

# When building from source, some files should be configured before.
# This pre-configuration use the make tool, not the configure tool.
pre-build {
    system -W ${worksrcpath} "${build.cmd} version_files" 
}

# When first installed auto-multiple-choice could fail to launch with
# a "Format d'image non reconnu at /opt/local/lib/AMC/perl/AMC-gui.pl line 101" 
# ("Unknown image format?").
# The following update cache command makes auto-multiple-choice happy.
post-activate {
    system "${prefix}/bin/gdk-pixbuf-query-loaders --update-cache 2>&1" 
}

destroot.args           AMCCONF=macports \
                        BASEPATH=${prefix}

variant latex description "Add LaTeX support" {
    depends_run-append  port:texlive-latex-extra \
                        port:texlive-latex-recommended \
                        port:texlive-fonts-recommended \
                        port:texlive-xetex \
                        port:texlive-lang-french

    build.args-delete   LATEX_FREE=1

    post-activate {
        system "${prefix}/bin/mktexlsr 2>&1" 
    }

    post-deactivate {
        system "${prefix}/bin/mktexlsr 2>&1" 
    }
}

default_variants        +latex

Installation de AMC

Une fois le fichier de port mis en place, il faut générer l'index du nouveau port.

cd ~/nix/macports
portindex

Enfin, l'installation de la version de développement d'AMC peut être lancée.

sudo port install auto-multiple-choice-devel

AMC est prêt à être utilisé.

Attention : les versions standard et développement d'AMC ne peuvent être installées simultanément. Si une version standard était précédemment installée, il faut la désinstaller avant l'installation de la version de développement.

sudo port uninstall auto-multiple-choice

Utilisation de AMC

Vous pouvez lancer AMC à partir du terminal ou à partir de XQuartz.

Dans Terminal

auto-multiple-choice-devel

Cette commande lancera l'application XQuartz puis AMC.

Dans XQuartz

Lancer l'application XQuartz.

On peut tout de suite configurer XQuartz pour faciliter le lancement de AMC. Ouvrir le menu Applications > Personnaliser….

Dans la fenêtre de personnalisation, cliquer le bouton Ajouter un élément.

Mettre "Auto Multiple Choice" dans la colonne Nom et "auto-multiple-choice" dans la colonne Commande du nouvel item de menu.

Fermer la fenêtre de personnalisation puis choisir le menu Applications > Auto Multiple Choix.

La fenêtre de AMC doit apparaître.

À part pour l'impression, tout devrait marcher.

Liens