2015-09-29 22 views
5

Sto usando OpenEmbedded-Core e ho creato un livello personalizzato con priorità 6. Mesi di sviluppo sono passati, e ora voglio aumentare la priorità del mio livello a 8 perché un file di accodamento da un altro livello con priorità 7 interferisce con un file di aggiunta che sto aggiungendo nel mio livello.Bitbake: come elencare tutte le ricette e aggiungere i file usati in un'immagine?

La mia domanda è, come posso generare un elenco di ricette e file .bbappend utilizzati in un'immagine?

Voglio generare l'elenco sia prima che dopo ho apportato la modifica di priorità in modo da poterli confrontare (con un difftool si spera) per vedere se si sono verificati effetti collaterali imprevisti, come un file di append importante dell'altro livello essere ignorato potenzialmente.

Sto utilizzando il ramo angstrom-v2014.12-yocto1.7 della distribuzione Angstrom.

[EDIT]

Ora sono in primo luogo proprio interessati a determinare come elencare quali file .bbappend sono realmente utilizzati dalla mia immagine a questo punto.

Un elenco di pacchetti può essere visualizzato utilizzando "bitbake -g nome-immagine" come suggerito da @pnxs o dal file .manifest (che è quello che mi piace utilizzare) che nel mio caso si trova sotto distribuire/glibc/immagini/nomeimmagine /. Inizialmente avevo chiesto come fosse possibile generare un elenco di "file di ricette", ma penso che sia sufficiente un elenco di pacchetti.

Per quanto riguarda il .bbappends, ho avuto un caso in cui il mio .bbappend è stato ignorato a causa delle priorità del livello. Ho apportato una modifica alle priorità del mio livello e ora voglio vedere se ciò ha causato l'eventuale presenza di file .bbappend in qualsiasi altra parte dell'immagine per essere ignorato. A quanto ho capito, utilizzando "bitbake-layers show-appends" come gli elenchi suggeriti all .abbende presenti anziché solo quelli che sono effettivamente utilizzati nella creazione di un'immagine, quindi questo non fa quello che sto cercando .

+1

Ho lo stesso problema. Sarebbe bello sapere quali ricette sono effettivamente utilizzate all'interno di un'immagine specifica e da dove provengono (INSTALL_APPEND in quale file?) – Anonymous

risposta

2

Prova a utilizzare "bitbake-layers show-appends" per vedere quali bbappends vengono utilizzate. Ma funzionerà solo su una base di ricette. Ma questo potrebbe darti le informazioni che ti servono per comprendere le priorità.

+0

Utile, ma a quanto ho capito, questo mostra tutte le bbappends disponibili, non solo quelle effettivamente utilizzate in la mia immagine, giusto? Ho anche guardato il file manifest della mia immagine, che mi dice la versione esatta di ogni pacchetto usato, ma sfortunatamente non mi consente di sapere quali bbappends sono state applicate a ciascun pacchetto. – user5071535

1

È possibile eseguire un "bitbake -g nome-immagine" che crea alcuni file punto nella directory corrente.

Il file "pn-depends.dot" contiene un elenco di nomi pacchetto (pn) e le dipendenze tra di essi.

Quando si prende la prima parte del file in cui sono elencati tutti i pacchetti, si veda, per esempio:

"busybox" [label="busybox :1.23.1-r0.2\n/home/user/yocto/sources/poky/meta/recipes-core/busybox/busybox_1.23.1.bb"] "base-files" [label="base-files :3.0.14-r89\n/home/user/yocto/sources/poky/meta/recipes-core/base-files/base-files_3.0.14.bb"]

così hai una lista di tutti i pacchetti utilizzati da l'immagine e la corrispondente alle ricette file.

Per vedere quale dei widget viene esteso da bbappend è necessario ottenere l'elenco di bbappends con "bitbake-layers show-appends" e cercare gli allegati di ogni ricetta. Puoi scrivere un piccolo programma python che può farlo per te.

+0

I file .dot sono un suggerimento utile, ma devo ancora essere in grado di risolvere quali file .bbappend sono usati o non usati nella mia immagine in qualche modo. Vedi la mia recente modifica. – user5071535