2011-10-24 11 views
13

Ho lavorato con Angstrom Linux distribution per BeagleBoard. Qualcuno può indicarmi un tutorial o un riferimento per come funzionano effettivamente bitbake e OpenEmbedded? Ad esempio, quando invoco bitbake in questo modo:Qualcuno può indicarmi un tutorial su bitbake o openembedded?

bitbake virtual/kernel 

cosa sta realmente accadendo? Ho annullato le ricette di Angstrom e ho cercato il filesystem Angstrom, ma non riesco a trovare riferimenti a virtual o kernel. Mi sento un po 'sconcertato lavorando con questa toolchain e creando patch del kernel senza capire veramente come funziona il bitbake.

+1

ho trovato questo [EETimes] (http://eetimes.com/design/embedded/4218490/Open-Embedded--An- alternative-way-to-build-embedded-Linux-distribuzioni? pageNumber = 0) buono. Ma potrei anche usare più approfonditamente e sotto la documentazione del cofano, oltre ai documenti ufficiali. – Lucas

risposta

4

BitBake è un software complesso che purtroppo non dispone della migliore documentazione utente. Credo che sia (liberamente) basato sul sistema di portage in Gentoo, quindi una certa familiarità con quel sistema potrebbe essere di aiuto.

Il modo migliore che ho trovato per capire cosa sta succedendo quando si tenta di creare qualcosa è passare l'opzione -g a bitbake, che genererà due file, depends.dot e task-depends.dot. Il primo è un grafico delle dipendenze di quel pacchetto, che mostra quali altri pacchetti vengono attivati ​​quando si esegue un'attività specifica. Quest'ultimo mostra più dettagli, mostrando le attività invece dei pacchetti. Questi compiti sono un po 'più bassi dei pacchetti stessi; la creazione di un pacchetto potrebbe far sì che il sistema recuperi i sorgenti, correggi i sorgenti, esegua uno script di configurazione, esegua la compilazione, installi i file binari e divida i file risultanti in pacchetti secondari.

Questi file possono mostrare perché si sta inserendo un software che non si desidera, in modo da poter modificare il pacchetto offendente per rimuovere la sua dipendenza. I grafici generati qui possono essere visualizzati con il pacchetto graphviz, ma se si esegue l'opzione -g per un'attività di grandi dimensioni, ad esempio un'attività immagine, il grafico generato sarebbe troppo grande per essere visualizzato. Può ancora essere utile per aprire i file .dot.

4

Per riferimento futuro a coloro che si stanno chiedendo la stessa cosa. Se nel tuo file system vai a overo/org.openembedded.dev/docs/usermanual e poi esegui "make", allora molta documentazione su bitbake e openembedded sarà fatta per te come file html. Spiega molto di ciò che sta succedendo.

-1

Anche se BitBake non ha un tutorial dettagliato e user-friendly, i progetti OpenEmbedded (vecchi) e YOCTO (più recenti) che usano BitBake hanno diversi manuali o libri in cui le ricette di BitBake e BitBake sono descritte in dettaglio. BitBake è ora co-gestito dai progetti Openembedded e YOCTO e quando usi BitBake normalmente userai questi due progetti per trovare i componenti linux fondamentali come bootloader, busybox, ecc adatti al tuo obiettivo.

Riferimenti: http://docs.openembedded.org/usermanual/usermanual.html http://www.yoctoproject.org/docs/1.8/ref-manual/ref-manual.html#patching-dev-environment (capitolo 3 è più legata a bitbake)