Compilation de sources C/C++ pour Android

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
55
Mois de parution
juillet 2011
Spécialité(s)


Résumé
Qui dit “Android” dit généralement “code en Java”. C'est d'ailleurs là, sans doute, l'une des raisons du succès de la plateforme et de l'affluence massive de développeurs dès les premières heures de la mise en ligne des SDK. Mais depuis quelques versions, il est également possible d'embarquer du code C/C++ et de le compiler pour la plateforme de Google sur architecture ARM. Il est même possible de créer, le plus naturellement du monde, un binaire ARM. Là, cela devient vraiment intéressant.

La compilation de binaires (exécutables et bibliothèques dynamiques) est l'oeuvre du NDK, Native Development Kit. La plupart des applications Android fonctionnent dans une machine virtuelle Dalvik. Le NDK est initialement prévu pour vous permettre d'utiliser un code natif (comprendre “pour le CPU ARM”) développer en C et C++ et de l'utiliser, via le framework JNI (Java Native Interface), dans votre code Java. L'objectif est double : réutiliser un maximum de code déjà existant (sans réimplémenter) et accessoirement, augmenter la vitesse d'exécution.

L'intéraction Java/binaire peut être envisagée de deux manières (la seconde n'est disponible que depuis l'API niveau 9, Android 2.3 Gingerbread) :

- Utilisation de JNI et des fonctionnalités implémentées en C/C++ dans votre code Java. Ceci présente l'intérêt de déplacer le code nécessitant des ressources ou des fonctionnalités particulières vers un langage plus “système” comme le C. On conserve alors la logique du programme…

La suite est réservée aux abonnés. Il vous reste 96% à découvrir.
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Envie de lire la suite ? Rejoignez Connect
Je m'abonne maintenant


Article rédigé par

Par le(s) même(s) auteur(s)

Proxmark 3 Easy et Chameleon Ultra : la guerre des clones, ou pourquoi « se mettre au NFC » n'a jamais été aussi peu cher

Magazine
Marque
Hackable
Numéro
64
Mois de parution
janvier 2026
Spécialité(s)
Résumé

Il y a un peu plus de deux ans, je vous parlais du Chameleon Ultra, et il y a plus longtemps encore du Proxmark 3. Mais depuis ces temps anciens, les choses ont bien changé. Ce qui était alors et est toujours, selon où l'on s'équipe, du matériel nécessitant un budget relativement sérieux se décline désormais à des tarifs défiant toute concurrence. Ainsi, un Proxmark 3 Easy ne vous coûtera que quelque 30 € et un Chameleon Ultra moins de 20 €. Il ne s'agit, bien entendu, pas de versions officielles, mais pour moins d'une cinquantaine d'euros, on peut disposer d'un équipement réellement viable. Voyons cela de plus près...

Édito : L'IA passe avant !

Magazine
Marque
Hackable
Numéro
64
Mois de parution
janvier 2026
Résumé

Ce n'est pas moi qui le dis, c'est ce qu'annonce à demi-mots le communiqué du 3 décembre dernier de Micron Technology [1] qui, en 2024, était décrit comme le troisième acteur du domaine de la RAM/DRAM, derrière Samsung et Hynix, avec quelque 22 % de part de marché.

Créons un périphérique « maison » pour notre SoC LiteX

Magazine
Marque
Hackable
Numéro
64
Mois de parution
janvier 2026
Spécialité(s)
Résumé

J'ai, à de nombreuses reprises, détaillé en quoi implémenter un SoC sur mesure sur un FPGA présentait de nombreux avantages. En particulier lorsque cela est aussi facile qu'avec le framework LiteX où, avec un minimum de code Python, cela se transforme en un simple jeu de construction. Mais utiliser les périphériques déjà disponibles, même s'ils sont nombreux et variés, ne représente qu'une petite partie des bénéfices de l'exercice. Là où cela devient réellement magique, c'est lorsqu'il s'agit de créer ses propres périphériques, et c'est précisément ce que nous allons voir ici.

Les listes de lecture

Python niveau débutant

9 article(s) - ajoutée le 01/07/2020
Vous désirez apprendre le langage Python, mais ne savez pas trop par où commencer ? Cette liste de lecture vous permettra de faire vos premiers pas en découvrant l'écosystème de Python et en écrivant de petits scripts.

Au pays des algorithmes

11 article(s) - ajoutée le 01/07/2020
La base de tout programme effectuant une tâche un tant soit peu complexe est un algorithme, une méthode permettant de manipuler des données pour obtenir un résultat attendu. Dans cette liste, vous pourrez découvrir quelques spécimens d'algorithmes.

Analyse de données en Python

10 article(s) - ajoutée le 01/07/2020
À quoi bon se targuer de posséder des pétaoctets de données si l'on est incapable d'analyser ces dernières ? Cette liste vous aidera à "faire parler" vos données.
Plus de listes de lecture