mercredi 30 mai 2012

Environnement de programmation sur iPod jailbreaké

Une des grandes questions que je me posais depuis pas mal de temps déjà était : De quoi ai-je besoin pour programmer sur un iPhone jailbreaké (ou autre device Apple) ?

Moi qui suis un grand amoureux du C, la partie graphique n'est pas prioritaire (pour l'instant). Donc il me faudrait un compilateur C (GCC si possible) compatible avec l'iPhone. J'ai donc récupéré un vielle iPod touch de 1ère génération qui trainait dans un tiroir que j'ai jailbreaké pour avoir la main mise sur tout le système. Le firmware 3.1.3 y était installé et il m'a été impossible de le retrouver sur l'Internet pour procéder au jailbreak. Heureusement, le RedSnow 0.9 m'a permit de réaliser le jailbreak sans en avoir besoin.



Pour info, on reconnait l'iPod Touch de 1ère génération par la coque de protection de l'antenne Wi-Fi noir sur le dos qui a une forme plus rectangulaire.


Pour pouvoir programmer en C sur l'iPod, il faut un compilateur C et donc un toolchain (ensemble d'outils pour pouvoir compiler et exécuter un programme) pour le C et compatible iPod (et par extension iPhone). J'ai eu beaucoup de mal à trouver des infos mais je suis finalement tombé sur un site proposant une procédure simple et claire. Que je reproduis donc ici.

Attention! ce qui suit est la procédure pas à pas tel que spécifié par ce site (donc comme on dit, tout droit réservé) : http://blog.syshalt.net/index.php/2010/09/12/compile-c-applications-with-gcc-on-ios-4-iphone/

Quelques annotations apparaissent pour indiquer mon cas spécifique et les probables problèmes que vous pourrez avoir à traiter...


Pré-requis à installer à travers Cydia :


- wget 1.11-3 Cydia/Telesphoreo 300kB Installation sans problème
- APT 0.7 Strict 0.7.25.3-6 Cydia/Telesphoreo 1064kB
J'ai eu un problème d'installation d'APT parceque j'ai fais l'étape 2 avant. Malheureusement, le dpkg n'a pas libéré de lock file (erreur "Could not get lock /var/lib/dpkg/lock"). Un redémarrage de l'iPod à suffit à régler le problème.

- apt-get install nano Installation sans problème

Procédure : 
  1. Connection root en ssh sur l'iPod
  2. wget http://www.syshalt.net/pub/iphone/gcc-iphone/fake-libgcc_1.0_iphoneos-arm.deb Download sans problème
  3. dpkg -i fake-libgcc_1.0_iphoneos-arm.deb Installation sans problème
  4. apt-get install iphone-gcc Installation sans problème
  5. wget http://www.syshalt.net/iphone/gcc-iphone/sdk-2.0-headers.tar.gz Download sans problème
  6. tar -xvzf sdk-2.0-headers.tar.gz
  7. cd include-2.0-sdk-ready-for-iphone
  8. cp –r * /usr/include (pour info le répertoire comprend un répertoire netinet et netinet6)
  9. cd ..
  10. wget http://www.syshalt.net/iphone/gcc-iphone/gcc_files.tar.gz Download sans problème
  11. tar -xvzf gcc_files.tar.gz
  12. cd gcc_files
  13. cp –r * /usr/lib
  14. apt-get install ldid Installation sans problème

-----------Installation terminé-----------------------


Commandes pour compiler et exécuter une application : 

- gcc -o <exec flename> <source filename>
- ldid -S <exec filename> 
- ./<exec filename>

Une copie des fichiers à télécharger :

Aucun commentaire:

Enregistrer un commentaire