Articles techniques

Le portage applicatif : un projet bien spécifique

Spécialiste du monde Linux, OPEN WIDE/OS4I suit de très près l’adoption des technologies du libre par les industriels et le portage est une étape clé de cette démarche.

Considéré à la fois comme démonstrateur de faisabilité et point de départ pour de nouvelles opportunités applicatives, ce « grand saut » exige une rigueur méthodologique sans faille et une maîtrise technologique pointue et diversifiée.
Retour d’expérience sur un type de projet pour lequel OPEN WIDE/OS4I a développé une expertise reconnue…

Télécharger l'article technique :

Projet_portage.pdf 312,81 kB
Pierre FICHEUX / 25.11.2009

Prise en main de Scratchbox

Dans le cadre du développement de projets pour l'embarqué, la principale contrainte rencontrée par les développeurs est la mise en place d'un environnement de compilation croisée, et son utilisation.

A priori, l'installation d'une chaîne de compilation croisée s'effectue une seule fois, et on peut l'oublier par la suite. Son utilisation même, en revanche, dépend fortement des projets à compiler. En effet, bien que l'on trouve de plus en plus de projets pour l'embarqué, il n'est pas rare d'avoir besoin d'un quelconque programme, dont les sources n'ont pas été structurées pour une compilation croisée.

Pourtant, il aurait suffit que les Makefiles du projet en question aient été écrits en tenant compte de variables « standardisées » telles que ARCH, CROSS ou CROSS_COMPILE. Pour de petits projets, il est facile de réécrire les Makefiles en ce sens. Mais sur des projets de plus grande envergure, ou ayant des scripts de compilation bien plus complexes, la tâche devient tout de suite gargantuesque.

Une solution serait de compiler ces vilains canards directement sur la cible. Il va de soi que l'installation d'un environnement de développement complet sur une cible dédiée à l'embarqué est assez incongrue. D'autre part, la puissance des processeurs visés est généralement bien en deçà des possibilités offertes par les stations de travail modernes.

Scratchbox se propose donc d'utiliser un environnement chrooté, en utilisant qemu, afin de permettre la compilation d'un projet comme s'il tournait directement sur la plate-forme cible.

Nous allons présenter l'installation de cet outil, sa configuration et sa mise en oeuvre. En guise d'exemple de code à compiler, nous prendrons Kerberos5, connu pour poser des problèmes à la cross-compilation.

Hugues HIEGEL, Ingénieur OS4i.

Télécharger l'article technique :

Hugues HIEGEL / 25.11.2009
Powered by eZ Publish™ CMS Open Source Web Content Management. Copyright © 1999-2010 eZ Systems AS (except where otherwise noted). All rights reserved.