{"id":3190,"date":"2012-11-30T07:56:16","date_gmt":"2012-11-30T06:56:16","guid":{"rendered":"http:\/\/www.blaess.fr\/christophe\/?p=3190"},"modified":"2012-12-18T23:12:34","modified_gmt":"2012-12-18T22:12:34","slug":"raspberry-pi-from-scratch","status":"publish","type":"post","link":"https:\/\/www.blaess.fr\/christophe\/2012\/11\/30\/raspberry-pi-from-scratch\/","title":{"rendered":"Linux Mag&rsquo; &#8211; Raspberry Pi from Scratch"},"content":{"rendered":"<p style=\"text-align: justify;\"><a href=\"http:\/\/www.blaess.fr\/christophe\/2012\/11\/30\/raspberry-pi-from-scratch\/\" rel=\"attachment wp-att-3197\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright size-full wp-image-3197\" title=\"Gnu\/Linux Magazine France 155\" alt=\"Gnu\/Linux Magazine France 155\" src=\"http:\/\/www.blaess.fr\/christophe\/wp-content\/uploads\/2012\/11\/couverture-glmf-155.png\" width=\"150\" height=\"200\" \/><\/a>Dans le nouveau num\u00e9ro de Gnu\/Linux Magazine France (n\u00b0 155) se trouvent deux articles que j&rsquo;ai \u00e9crits durant les mois de juillet et ao\u00fbt sur la construction d&rsquo;un syst\u00e8me Linux embarqu\u00e9 sur Raspberry Pi en partant de z\u00e9ro. Comme l&rsquo;actualit\u00e9 concernant le Raspberry Pi \u00e9volue rapidement, voici quelques compl\u00e9ments pour les \u00e9l\u00e9ments ayant chang\u00e9 depuis la r\u00e9daction.<\/p>\n<p style=\"text-align: justify;\">Conform\u00e9ment \u00e0 la politique d&rsquo;\u00e9dition adopt\u00e9e par les \u00c9ditions Diamond, ces articles seront disponibles dans quelques temps ici sous <a title=\"http:\/\/creativecommons.org\/licenses\/by-nc-nd\/2.0\/deed.fr\" href=\"http:\/\/creativecommons.org\/licenses\/by-nc-nd\/2.0\/deed.fr\">licence CC-BY-NC-ND<\/a>.<\/p>\n<p>\n<!--more-->\n<\/p>\n<h1>Construire une cha\u00eene de compilation<\/h1>\n<p>Premier article, page 34.<\/p>\n<p style=\"text-align: justify;\">Le num\u00e9ro du noyau fourni sur <a title=\"https:\/\/github.com\/raspberrypi\/linux\" href=\"https:\/\/github.com\/raspberrypi\/linux\" target=\"_blank\">https:\/\/github.com\/raspberrypi\/linux<\/a> n&rsquo;est plus un 3.1.9, mais un 3.2.27 aujourd&rsquo;hui, mais cela ne change en rien le principe de compilation, ni le fichier de configuration.<\/p>\n<h1>Pr\u00e9paration de la carte micro-SD<\/h1>\n<p style=\"text-align: justify;\">Lorsque vous ins\u00e9rerez la carte sur votre syst\u00e8me de d\u00e9veloppement (page 37), si elle est mont\u00e9e automatiquement il est important de la d\u00e9monter (avec <code>umount<\/code>) avant d&rsquo;ex\u00e9cuter <code>fdisk<\/code>.<\/p>\n<h1>\u00a0Installation du bootloader<\/h1>\n<p style=\"text-align: justify;\">Depuis l&rsquo;arriv\u00e9e de la seconde g\u00e9n\u00e9ration de carte Raspberry Pi avec 512 Mo de ram (voir <a title=\"Un Raspberry Pi 512 Mo\" href=\"http:\/\/www.blaess.fr\/christophe\/2012\/10\/22\/un-raspberry-pi-avec-512-mo\/\">cet article<\/a>) les fichiers n\u00e9cessaires pour le bootloader sont un peu diff\u00e9rents. Ils sont, bien s\u00fbr, disponibles de mani\u00e8re identique sur <a title=\"https:\/\/github.com\/raspberrypi\/firmware\" href=\"https:\/\/github.com\/raspberrypi\/firmware\" target=\"_blank\">https:\/\/github.com\/raspberrypi\/firmware<\/a>.<\/p>\n<ul>\n<li style=\"text-align: justify;\"><code>bootcode.bin<\/code> : sert \u00e0 l&rsquo;initialisation du GPU (1\u00e8re \u00e9tape)<\/li>\n<li style=\"text-align: justify;\"><code>config.txt<\/code> : fichier texte (\u00e0 cr\u00e9er soi-m\u00eame) pour personnaliser le comportement du GPU. Entre autres, l&rsquo;option <code>gpu_mem<\/code> est tr\u00e8s utile puisqu&rsquo;elle permet de r\u00e9partir la m\u00e9moire disponible (256 Mo ou 512 Mo) entre le GPU et le CPU. Par exemple la ligne \u00ab\u00a0<code>gpu_mem=32<\/code>\u00a0\u00bb affecte 32 Mo de Ram au GPU et le reste au CPU. C&rsquo;est la seule ligne qui nous concerne dans cet article puisque nous n&rsquo;utilisons pas de mode graphique.<\/li>\n<li style=\"text-align: justify;\"><code>start.elf<\/code> et <code>fixup.dat<\/code> : bootloader initialisant le CPU (2\u00e8me \u00e9tape). Si vous n&rsquo;affectez que 16 Mo ou moins au GPU, les fichiers <code>start_cd.elf<\/code> et <code>fixup_cd.dat<\/code> sont utilis\u00e9s \u00e0 leurs places (<code>cd<\/code> signifiant <em>cutdown<\/em>&#8211; \u00e9lagu\u00e9).<\/li>\n<li style=\"text-align: justify;\"><code>kernel.img<\/code> : l&rsquo;image du noyau \u00e0 d\u00e9marrer.<\/li>\n<\/ul>\n<p style=\"text-align: justify;\">Les fichiers n\u00e9cessaires sur la partition de d\u00e9marrage sont donc&nbsp;: <code>bootcode.bin<\/code>, <code>config.txt<\/code> avec un simple ligne \u00ab\u00a0<code>gpu_mem=32<\/code>\u00ab\u00a0, <code>start.elf<\/code>, <code>fixup.dat<\/code>, ainsi que le noyau compil\u00e9 pr\u00e9c\u00e9demment dans l&rsquo;article.<\/p>\n<h1>Console sur le port s\u00e9rie<\/h1>\n<p style=\"text-align: justify;\">Dans l&rsquo;encadr\u00e9 page 38, j&rsquo;expliquais comment acc\u00e9der aux entr\u00e9es-sorties RS-232 du Rasberry Pi avec une conversion de niveaux \u00e9lectriques. Ceci n&rsquo;est plus n\u00e9cessaire si vous employez un petit adaptateur tout-pr\u00eat comme celui d\u00e9crit dans <a title=\"C\u00e2ble RS-232 pour Raspberry Pi\" href=\"http:\/\/www.blaess.fr\/christophe\/2012\/10\/26\/cable-rs-232-pour-raspberry-pi\/\">cet article<\/a>.<\/p>\n<h1>Installation des modules du noyau<\/h1>\n<p style=\"text-align: justify;\">Sur la ligne de commande \u00ab\u00a0<code>make ARCH=arm INSTALL_MOD_PATH...<\/code>\u00a0\u00bb de la page 41, j&rsquo;ai oubli\u00e9 de pr\u00e9fixer <code>make<\/code> par <code>sudo<\/code> pour avoir les droits d&rsquo;\u00e9criture sur la partition Root.<\/p>\n<h1>Biblioth\u00e8ques<\/h1>\n<p style=\"text-align: justify;\">Lors de l&rsquo;installation des biblioth\u00e8ques sur la cible (page 43) il est utile d&rsquo;ajouter l&rsquo;option <code>-a<\/code> \u00e0 <code>cp<\/code> afin que les liens symboliques soient correctement reproduits. En outre <code>sudo<\/code> est n\u00e9cessaire pour \u00e9crire sur cette partition Root.<\/p>\n<h2 style=\"text-align: justify;\">Pour en savoir plus<\/h2>\n<p style=\"text-align: justify;\">Si vous souhaitez approfondir la cr\u00e9ation d&rsquo;un syst\u00e8me Linux embarqu\u00e9 pour Raspberry Pi (ou autre plate-forme), je vous propose de vous retrouver en formation \u00ab\u00a0<a title=\"Formation Linux embarqu\u00e9\" href=\"http:\/\/www.logilin.fr\/formations\/formation-linux-embarque\/\" target=\"_blank\">Linux embarqu\u00e9<\/a>\u00a0\u00bb chez Logilin.<\/p>","protected":false},"excerpt":{"rendered":"<p>Dans le nouveau num&eacute;ro de Gnu\/Linux Magazine France (n&deg; 155) se trouvent deux articles que j&rsquo;ai &eacute;crits durant les mois de juillet et ao&ucirc;t sur la construction d&rsquo;un syst&egrave;me Linux embarqu&eacute; sur Raspberry Pi en partant de z&eacute;ro. Comme l&rsquo;actualit&eacute; concernant le Raspberry Pi &eacute;volue rapidement, voici quelques compl&eacute;ments pour les &eacute;l&eacute;ments ayant chang&eacute; depuis [&hellip;]<\/p>","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3,5,8,11],"tags":[],"class_list":["post-3190","post","type-post","status-publish","format-standard","hentry","category-actualite","category-embarque","category-linux-2","category-raspberry-pi"],"_links":{"self":[{"href":"https:\/\/www.blaess.fr\/christophe\/wp-json\/wp\/v2\/posts\/3190","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.blaess.fr\/christophe\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.blaess.fr\/christophe\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.blaess.fr\/christophe\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.blaess.fr\/christophe\/wp-json\/wp\/v2\/comments?post=3190"}],"version-history":[{"count":24,"href":"https:\/\/www.blaess.fr\/christophe\/wp-json\/wp\/v2\/posts\/3190\/revisions"}],"predecessor-version":[{"id":3192,"href":"https:\/\/www.blaess.fr\/christophe\/wp-json\/wp\/v2\/posts\/3190\/revisions\/3192"}],"wp:attachment":[{"href":"https:\/\/www.blaess.fr\/christophe\/wp-json\/wp\/v2\/media?parent=3190"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.blaess.fr\/christophe\/wp-json\/wp\/v2\/categories?post=3190"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.blaess.fr\/christophe\/wp-json\/wp\/v2\/tags?post=3190"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}