Archives de la catégorie ‘Linux’

Compilation de Linux avec une toolchain embarquée native

Embarqué, Linux | Publié par cpb
Juil 10 2011

Nous avons compilé dans le précédent article une toolchain embarquée native, c’est-à-dire la chaîne de compilation qui pourra s’exécuter sur une cible embarquée (à processeur Arm dans notre cas) et qui sera susceptible de produire du code pour ce même processeur Arm.

Nous allons valider le fonctionnement de cette chaîne de compilation en lui soumettant un gros morceau de code : le noyau Linux.

Lire la suite de cette entrée »

Création et installation d’une toolchain native pour processeur Arm

Embarqué, Linux, Microprocesseur | Publié par cpb
Juil 01 2011

Certains projets posent des problèmes difficiles à surmonter lorsqu’il s’agit de les cross-compiler pour une plate-forme différente du poste de compilation. Citons par exemple Apache ou PHP que nous avons laborieusement réussi à cross-compiler dans les quatrième et cinquième articles de notre série « Construire son système personnel sur Pandaboard« . Il peut être utile de disposer sur la cible embarquée d’une chaîne de compilation native c’est-à-dire capable de produire du code exécutable pour le processeur sur lequel la compilation a eu lieu.

Nous allons mettre ceci en oeuvre sur une carte à processeur Arm à l’aide de Buildroot.

Lire la suite de cette entrée »

Gnome 3

Actualité, Linux | Publié par cpb
Juin 24 2011

Voici quelques jours que j’ai installé la distribution Fedora 15 sur mon poste de travail principal. L’évolution la plus visible de cette version Fedora est l’adoption de Gnome 3.0. Hors cette interface graphique, il existe d’autres nouveautés et évolutions dans cette nouvelle version de la Fedora, comme la généralisation de systemd pour la configuration du boot, ou le nommage persistant des interfaces ethernet : les interfaces se trouvant sur la carte mère sont nommées em1, em2, etc (em pour embedded) et les interfaces supplémentaires s’appellent désormais pci<numero slot>#<numero port>.

Lire la suite de cette entrée »

Construire son système personnel sur carte Pandaboard (5)

Embarqué, Linux | Publié par cpb
Juin 17 2011

Nous avons installé dans l’article précédent un serveur Apache sur une carte Pandaboard en le cross-compilant – non sans mal. En effet, ce serveur n’est pas particulièrement prévu pour être compilé sur un système embarqué.

Nous allons aborder une seconde étape assez épique : la compilation de PHP. Comme on peut s’y attendre, il n’est pas non plus prévu pour être facilement cross-compilé (après tout, un éléphant sur un système embarqué…) et nous devrons emprunter des voies détournées pour atteindre notre but !

Lire la suite de cette entrée »

Construire son système personnel sur une carte Pandaboard (4)

Embarqué, Linux | Publié par cpb
Juin 10 2011

Après avoir obtenu un système minimal sur notre carte Pandaboard (voir les articles 1, 2 et 3), nous allons pouvoir l’enrichir un peu, en commençant par un serveur HTTP plus puissant que le précédent : Apache.

Lire la suite de cette entrée »

[ACTU] 3.0 finalement…

Actualité, Linux | Publié par cpb
Mai 30 2011

Comme je l’avais évoque dans un précédent article, Linus Torvalds avait décidé de basculer la numérotation des noyaux Linux en 2.8 ou 3.0. Il s’est finalement décidé pour 3.0, et a publié cette nuit une version de test release-candidate 3.0.0-rc1. Il a d’ailleurs clairement déclaré dans son message sur la mailing list de développement du kernel que ce changement de numéro majeur n’aurait pas plus de répercussions que les évolutions de versions mineures auxquelles nous sommes habitués.

Il a simplement envie de marquer ainsi les vingt ans de Linux…

Lire la suite de cette entrée »

Buildroot vs Crosstool-NG – Compilons notre cross-compiler

Embarqué, Linux | Publié par cpb
Mai 27 2011

Lorsqu’on entame un projet de développement sur Linux embarqué, il est nécessaire de disposer d’un cross-compiler (souvent traduit un peu maladroitement par le terme « compilateur croisé » ) c’est-à-dire un compilateur fonctionnant sur la machine de développement (appelé poste hôte) capable de produire des fichiers exécutables qui pourront s’exécuter sur le processeur du système embarqué (la cible). Ce compilateur est généralement mis à disposition (gratuitement ou non) par le fournisseur de la carte embarquée. Toutefois, il y a de nombreux cas où l’on aimerait pouvoir choisir sa propre chaîne de compilation, pour des raisons de compatibilité entre outils ou entre bibliothèques par exemple.

La génération du cross-compiler a longtemps été une opération compliquée, longue et fastidieuse, mais de nos jours plusieurs projets encadrent cette étape préliminaire et simplifient grandement la vie des développeurs pour l’embarqué.

Lire la suite de cette entrée »

[ACTU] 2.8 ou 3.0 ?

Actualité, Linux | Publié par cpb
Mai 24 2011

Dans un article sur la mailing-list de développement du noyau, Linus Torvalds a laissé entendre hier que pour la prochaine mouture du kernel Linux – à paraître dans 3 mois environ – il pourrait bien s’affranchir des numérotations en 2.6 (qui datent de décembre 2003), et passer à un noyau 2.8. Cette annonce n’est pas anodine, les numéros des version actuelles de Linux (2.6.39 depuis une semaine) sont trop grands pour que l’on ressente intuitivement les évolutions. Passer d’un kernel 2.6.38 à 2.6.39 n’est a priori pas très excitant, il faut bien en convenir, et l’utilisateur n’imagine pas qu’entre deux numéros de version apparemment si proches peut se dissimuler une ré-écriture complète de certains sous-systèmes ou des ajouts de fonctionnalités influant sur l’ensemble du noyau (support de l’adressage PAE dans le 2.6.10, threaded interrupts dans le 2.6.30, etc.).

Lire la suite de cette entrée »

Construire son système personnel sur une carte Pandaboard (3)

Embarqué, Linux | Publié par cpb
Mai 20 2011

Pandaboard Ethernet et USB

Dans les articles précédents (1 et 2) nous avons réussi à installer un système minimal sur notre Pandaboard. Toutefois, nous n’avons pour le moment pas abordé le problème du réseau. Je vous propose cette semaine d’initialiser l’interface Ethernet et d’installer quelques services, par exemple pour se connecter à distance ou transférer des fichiers sur la carte.

Lire la suite de cette entrée »

[Actu] Bye-Bye Big Kernel Lock…

Actualité, Linux | Publié par cpb
Mai 19 2011

Linus Torvalds a publié ce matin la version 2.6.39 du kernel Linux. Pour des raisons liées essentiellement à son emploi du temps chargé, il a préféré renoncer à la version release candidate rc8 et passer directement à la version stable.

Pas beaucoup de grosses nouveautés dans cette version, je note la présence d’une nouvelle interface nommée « Media Controller API » principalement destinée à l’acquisition vidéo et aux cameras (Menus « Drivers« , sous-menu « Multimedia Support« ), et quelques autres nouvelles options dans la configuration du noyau.

Une disparition remarquable : le Big Kernel Lock est (enfin) définitivement mort !

Lire la suite de cette entrée »