Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
enseignement:sw:installation_4store [2012/12/13 07:20]
lmedini
enseignement:sw:installation_4store [2012/12/16 01:34] (Version actuelle)
lmedini [Addendum (15/12/2012) : recompiler la source modifiée du serveur]
Ligne 1: Ligne 1:
-==== Installation de 4store à partir des sources sur la VM ====+====== Installation de 4store à partir des sources sur la VM ======
  
-Cette page présente une procédure d'installation détaillée spécifique à la VM qui vous a été distribuée. La source de cette procédure est disponible ici : [[http://4store.org/trac/wiki/Install]]+Cette page présente une procédure d'installation détaillée spécifique à la VM qui vous a été distribuée, qui permet à 4store de prendre en compte les requêtes CORS. La source de cette procédure est disponible ici : [[http://4store.org/trac/wiki/Install]]
  
 ** 1) Dépendances ** ** 1) Dépendances **
  
-  - dans la procédure : http://4store.org/trac/wiki/Dependencies+  - Procédure [[http://4store.org/trac/wiki/Dependencies]]
  
-sudo apt-get install build-essential libpcre3-dev librasqal2-dev libtool libraptor1-dev libglib2.0-dev ncurses-dev libreadline-dev+<code shell>sudo apt-get update 
 +sudo apt-get install build-essential libpcre3-dev librasqal3-dev libtool libraptor1-dev libglib2.0-dev ncurses-dev libreadline-dev</code>
  
-  - EN PLUS (plante sinon) : http://ubuntuforums.org/showthread.php?t=343871+  - EN PLUS (plante sinon) : [[http://ubuntuforums.org/showthread.php?t=343871]]
  
-sudo apt-get install uuid-dev zlib1g-dev+<code shell>sudo apt-get install uuid-dev zlib1g-dev</code>
  
 ** 2) Sources ** ** 2) Sources **
 +
 +<note important>Utiliser la source modifiée du serveur pour la prise en compte de CORS : voir addendum (ci-dessous)</note>
  
 Récupérer (et extraire) le tar.gz à  Récupérer (et extraire) le tar.gz à 
Ligne 22: Ligne 25:
 ** 3) build : dans le répertoire où l'archive a été décompressée ** ** 3) build : dans le répertoire où l'archive a été décompressée **
  
-sudo ./configure +<code shell>sudo ./configure 
-sudo make+sudo make</code>
  
 ** 4) Configuration de CORS : [[http://4store.org/trac/wiki/SparqlServer]] ** ** 4) Configuration de CORS : [[http://4store.org/trac/wiki/SparqlServer]] **
  
-cd /etc+<note important>Section inutile en utilisant le serveur modifié : le port 8085 et la prise en compte de CORS sont les valeurs par défaut dans la source.</note> 
 + 
 +<code shell>cd /etc
 sudo touch 4store.conf sudo touch 4store.conf
-sudo leafpad 4store.conf+sudo leafpad 4store.conf</code>
  
 -> coller le texte ci-dessous -> coller le texte ci-dessous
  
-[default]+<code shell>[default]
         unsafe = true           # enable LOAD etc. (default is disabled)         unsafe = true           # enable LOAD etc. (default is disabled)
         cors = true             # enable CORS (default is disabled)         cors = true             # enable CORS (default is disabled)
Ligne 41: Ligne 46:
         default-graph = false   # default graph = union of named graphs (default)         default-graph = false   # default graph = union of named graphs (default)
         soft-limit = 0          # disable soft limit         soft-limit = 0          # disable soft limit
-        opt-level = 3           # enable all optimisations (default)+        opt-level = 3           # enable all optimisations (default)</code>
  
  
 ** 5) Création d'une nouvelle base de connaissances : [[http://4store.org/trac/wiki/CreateDatabase]] , [[http://4store.org/trac/wiki/ImportData]] ** ** 5) Création d'une nouvelle base de connaissances : [[http://4store.org/trac/wiki/CreateDatabase]] , [[http://4store.org/trac/wiki/ImportData]] **
  
-  - Récupérer les données et les décompresser : [[http://queens.db.toronto.edu/~oktie/linkedmdb/]]+  - Récupérer les données et les décompresser : [[http://queens.db.toronto.edu/~oktie/linkedmdb/]] ou [[http://liris.cnrs.fr/lionel.medini/temp/linkedmdb-latest-dump.tar.gz]]
   - Création de la kb :   - Création de la kb :
  
-sudo src/utilities/4s-backend-setup demo+<code shell>sudo src/utilities/4s-backend-setup demo</code>
  
-sudo src/backend/4s-backend demo+<code shell>sudo src/backend/4s-backend demo</code>
  
   - Lancement du serveur de triplets :   - Lancement du serveur de triplets :
   - Importation des données :   - Importation des données :
  
-sudo src/frontend/4s-import -v demo [chemin du fichier de données]+<code shell>sudo src/frontend/4s-import -v demo [chemin du fichier de données]</code>
  
 ** 6) lancement du serveur HTTP : [[http://4store.org/trac/wiki/SparqlServer]] ** ** 6) lancement du serveur HTTP : [[http://4store.org/trac/wiki/SparqlServer]] **
  
-sudo src/http/4s-httpd -p 8085 demo+<code shell>sudo src/http/4s-httpd -p 8085 demo</code> 
 + 
 +===== Addendum (15/12/2012) : recompiler la source modifiée du serveur ===== 
 + 
 +  * Arrêter le serveur HTTP (mais pas la KB) : <code shell>sudo killall 4s-httpd</code> 
 +  * Récupérer la nouvelle source du serveur : [[http://liris.cnrs.fr/lionel.medini/temp/4store_CORS/httpd.c]] et remplacer la source actuelle dans src/http 
 +  * Recompiler : <code shell>sudo make</code> 
 +  * Relancer le serveur : simplement <code shell>src/http/4s-httpd demo</code> (les sources intègrent par défaut le port 8085 et l'activation de CORS) 
 +  * Tester :  [[http://liris.cnrs.fr/lionel.medini/temp/4store_CORS/]] 
 + 
 +<note important>Utilisation de 4store en CORS : 
 +  * URL : http://localhost:8085/sparql/ (ne pas oublier le slash final) 
 +  * Méthode : 4store ne prend en compte les requêtes CORS qu'en GET [[https://groups.google.com/forum/#!msg/4store-support/dpS9TzFw6Kg/OX5HCTJZNH0J]] 
 +</note>