Créer un serveur Cordova / PhoneGap !
Hello Hello,
Bon comme tout développeur qui est privé de son matos (ordinateur perso), je me retrouve un peu en galère, pour bosser sur mes projets « Dyrkien » …
Aussi, et vu que parfois je suis un peu tordu …
Je soutien d’ailleurs la thèse que c’est nécessaire pour être blogueur (sinon d’où viendrait l’inspiration …)
Bref en ce qui concerne mes projets « Mobiles », mes audits d’applications, mes outils de sécu… je décentralise progressivement tout ce jolie petit paquetage sur mon serveur !
Enfin et comme l’indique le nom de cet article, je vais vous indiquer la démarche à suivre pour installer Cordova / PhoneGap sur votre serveur (incluant le sdk Android, et quelques petites solutions à certains problèmes …)
Alors c’est partie !
Ce sujet va se découper en plusieurs installation :
- Java
- Ant
- Sdk Android
- NPM
- Cordova / PhoneGap
Clairement, je vous ai mâché le boulot, donc ça devrait vous prendre 5mn à tout casser (ça n’inclus pas les temps de téléchargement ;) )
JAVA
Commençons tout doucement, en installant simplement le JAVA !
sudo su
apt-get install openjdk-7-jre
Ensuite il faudra éditer votre fichier « /root/.bashrc« , pour y déclarer le chemin vers JAVA
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64/
export PATH=$PATH:$JAVA_HOME/bin
ANT
Bon dans ces quelques lignes, grosso merdo, je vous télécharge Ant 1.9.6, et je vous l’installe dans /opt/ant :
cd /tmp
wget http://apache.mindstudios.com//ant/binaries/apache-ant-1.9.7-bin.tar.bz2
unzipapache-ant-1.9.7-bin.tar.bz2
mkdir /opt/ant
mv apache-ant-1.9.7 /opt/ant
cd /opt/ant
ln -s apache-ant-1.9.7/ default
Super !
Notre Ant est installé, y a plus qu’a le rajouter à notre « /root/.bashrc », pour y déclarer le chemin vers Ant
export ANT_HOME=/opt/ant/default
export PATH=$PATH:$ANT_HOME
SDK Android
Nous allons ici installer le SDK d’Android en mode console…
(Et oui pour l’installer en ssh c’est mieux non ;) )
Et alors là les copains y ‘en à pour 20 Go (si l’on inclus tout l’emballage qui va avec).
Donc lancez les commandes, et prenez le temps de vous faire un petit café !
cd /home
wget http://dl.google.com/android/android-sdk_r24.4.1-linux.tgz
tar -xvzf android-sdk_r24.4.1-linux.tgz
cd android-sdk/android-sdk-linux/tools/android update sdk –no-ui
Le soft d’installation des composants du SDK va mouliner et vous demander de valider 2/3 bricoles.
Répondez toujours « Oui » (Y)
Une fois que tout est téléchargé pareil, on retourne éditer notre fichier « /root/.bashrc », pour y déclarer le chemin vers le SDK (toujours à la suite)
export ANDROID_HOME=/home/androidsdk/android-sdk-linux/
export PATH=$PATH:$ANDROID_HOME/tools/:$ANDROID_HOME/platform-tools/
NPM :
Pour le coup on passe vraiment dans les étapes très faciles et ultra rapide :
curl -sL https://deb.nodesource.com/setup_5.x | bash –
apt-get install -y nodejs
CORDOVA / PHONEGAP
Maintenant que notre NPM est installé nous allons pouvoir procéder et installer les outils Cordova et PhoneGap !
Cordova :
npm install-g cordova
PhoneGap :
npm install-g cordova
Astuce pour certains éventuels problèmes !
Problème de création d’un projet :
cordova create nomDuProjet
ou
phonegap create nomDuProjet
Cordova et PhoneGap pour chaque nouveau projet, vous installe un projet « Hello World« .
Qui est une « base » sur laquelle vous allez pouvoir bosser.
Néanmoins …
Si votre installation de cordova ou de phonegap a merdouillé….
Vous devriez avoir des erreurs dans ce goût là :
Could not find directory: /usr/lib/node_modules/cordova/node_modules/cordova-lib/node_modules/cordova-app-hello-world
Il suffit de faire ceci :
sudo su
cd /usr/lib/node_modules/cordova/node_modules/cordova-lib/
npm install
Problème de compilation avec PhoneGap ou Cordova !
Si lorsque vous créé un projet cordova vous n’arrivez pas à le compiler …
phonegap build android
Que vous récupérez ce genre d’erreur:
Cannot run program « /android-sdk-linux/build-tools/19.0.3/aapt »: error=2, No such file or directory
Il est même possible qu’aucune erreur n’apparaisse et que rien ne compile …
Alors installez ces paquets sur votre système :
sudo apt-get install lib32stdc++6 lib32z1