質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Q&A

解決済

1回答

4427閲覧

yoctoで特定ターゲットが使用するレイヤのバージョンを調査する方法

Thrush

総合スコア58

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

0グッド

0クリップ

投稿2018/05/05 05:33

編集2018/05/05 07:28

前提・実現したいこと

組み込みLinux上で動くフレームワークを作成しており、Linuxをyoctoでビルドしています。
この仕事で、「指定したターゲットビルド時に使用するレイヤのバージョン(PV値)」を知りたいのですが、うまい方法が見つかりません。
何か簡単な方法がないでしょうか?よろしくお願いします。

試したこと

現在、「bitbake-layers show-recipes」を使っていますが、
複数バージョン存在するレイヤはどのバージョンを使っているのかわかりません。
例えば、gccは以下の通りです。

gcc:
meta 7.3.0
meta 6.4.0

仕方ないので、「bitbake」コマンドで実際にビルドして調査している状態です。

補足情報(FW/ツールのバージョンなど)

yoctoのバージョンはyocto2.4.2(rocko)です。

追記

ビルドしない方法がないのであれば、ビルド時に参照すべき場所を教えていただけると嬉しいです。
今現在はbuildディレクトリ内で対象のレイヤ名をgrepして適当に引っかかった文字列をチェックしている状態なので...

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

自己解決しました。マニュアルにちゃんとかいてありました....
以下の2つの方法があるようです

#####「bitbake -s」コマンド
レイヤの最新Verとその一つ前のVerを一覧で取得できます
全てのレイヤの情報が一度に取れるので便利です

#####「bitbake -e target_layer | grep target_env」コマンド
target_layerの変数を全て取得し、みたい変数(target_env)をgrepします
バージョン変数(PV)以外の変数を確認したいときはこっちがよさそうです
例えば、質問の例で挙げたgccのPVを知りたいのであれば以下の通り

bash

1user@ubuntu:~/git/poky/build$ bitbake -e gcc | grep PV\= 2PV="7.3.0"

投稿2018/05/07 13:57

編集2018/05/07 14:01
Thrush

総合スコア58

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問