Magazine High tech

Google Native Client : c’est pour quoi faire au juste ?

Publié le 28 février 2011 par Ecoleinfo

Google vient de sortir un kit de développement Native Client (NaCl). L’objectif de l’éditeur est d’exécuter, dans l’environnement de son navigateur Chrome, des applications écrites en C et C++.

Installer le SDK

Particulièrement inachevé, le SDK fourni par Google vous permettra toutefois d’avoir un aperçu des fonctionnalités de Native Client. Sous Windows, le SDK fait la part belle à Python et à Cygwin, l’environnement d’exécution de logiciels Linux ou Unix à la norme Posix.

Configurer Chromium

Une fois le SDK installé, c’est dans le navigateur que vous aurez à effectuer quelques réglages. Dans la barre d’adresse du navigateur de l’éditeur, tapez about:flags. Activez alors Native Client et cliquez sur le bouton Relaunch Now tout au bas de la page de configuration.

Démarrer le serveur Web fourni par le SDK

Très étrangement, alors que la technologie Native Client est sensée s’exécuter côté client, vous devrez au préalable lancer un serveur http fourni dans le SDK

  • c:
  • cd \native_client_sdk_0_1_721_0\examples
  • httpd.cmd 5103 &

Compiler les programmes

Pour produire les fichiers exécutables en .nexe, voici, en environnement 32 bits, les commandes que vous devrez exécuter au préalable :

  • C:
  • cd \cd \native_client_sdk_0_1_721_0\examples\hello_world
  • C:\native_client_sdk_0_1_721_0\toolchain\win_x86\bin\nacl-g++ -Wall -Wno-long-long -pthread -Werror -m32 -I../.. -O2 -c -o hello_world_x86_32.o hello_world.cc
  • C:\native_client_sdk_0_1_721_0\toolchain\win_x86\bin\nacl-g++ -Wall -Wno-long-long -pthread -Werror -m32 -I../.. -O2 -c -o helper_functions_x86_32.o helper_functions.cc
  • C:\native_client_sdk_0_1_721_0\toolchain\win_x86\bin\nacl-g++ hello_world_x86_32.o helper_functions_x86_32.o -lppruntime -lppapi_cpp -lgoogle_nacl_platform -lgio -lpthread -lsrpc -m32 -o hello_world_x86_32.nexe

Pour l’environnement 64, remplacez 32 par 64.

Tester l’ application compilée

A partir de Chromium, tapez l’adresse du serveur Web lancé préalablement sur le port 5103 en tapant dans la barre d’adresses du navigateur, http://localhost:5103/index.html. Choisissez, dans la liste des applications, Hello World in C++. Testez alors l’application en cliquant sur les deux boutons proposées par la page Html.

Qu’en penser ?

Utilisant Javascript et Html, s’appuyant sur un fichier .nmf que fait appel au fichier .nexe, Native Client est un empilement de technologies bien curieux qui n’est pas sans rappeler le fonctionnement d’un RIA. Et, pour tout dire, on ne voit pas bien, en dehors de Google, qui, pour l’instant, cela peut bien intéresser. Pour l’instant, le SDK ne nous permet pas de saisir le mécanisme de compilation à la volée. Il est urgent d’attendre : Native Client ressemble à une nième usine à gaz !

Annexe

  • la compilation
  • l’exécution
  • les exemples

Source : Ecole informatique exia.cesi

Google

Retour à La Une de Logo Paperblog

A propos de l’auteur


Ecoleinfo 201 partages Voir son profil
Voir son blog

l'auteur n'a pas encore renseigné son compte l'auteur n'a pas encore renseigné son compte

Dossiers Paperblog