2017-06-09 24 views
2

私の目標は、付属のブーストライブラリを含むYocto SDKを使用することです。 Boostが提供するライブラリのいくつかはヘッダーのみですが、他の多くのものは自分のターゲットアーキテクチャ用にコンパイルする必要があります。 私はYoctoにかなり新しいので、いくつかの困難に直面しています。 bblayers.confでWebサーバーの新しいレイヤーを定義し、apacheとphpのlocal.confにパッケージを追加するのに問題はありませんでした。 yocto krogothに既に含まれているこれらのパッケージを持っていることはとても幸運でした。Yocto SDKにブーストレシピを追加

ブーストライブラリの場合のように、通常のバージョンには存在しない(またはフェッチされた)新しいパケットをインストールすると問題が発生します。 私はブーストがいるOpenEmbeddedコア層に属し、レイヤに追加するには、このレシピを与えることを説明しているOpenEmbeddedのthisのリソースが見つかりました:私はそれを使用する方法についてはかなりわからないよ

require boost-${PV}.inc 
require boost.inc 

SRC_URI += "\ 
    file://arm-intrinsics.patch \ 
    file://boost-CVE-2012-2677.patch \ 
    file://0001-boost-asio-detail-socket_types.hpp-fix-poll.h-includ.patch \ 
    file://boost-math-disable-pch-for-gcc.patch \ 
    file://0001-Apply-boost-1.62.0-no-forced-flags.patch.patch \ 
    file://0003-Don-t-set-up-arch-instruction-set-flags-we-do-that-o.patch \ 
    file://0002-Don-t-set-up-m32-m64-we-do-that-ourselves.patch \ 
    file://0001-correct-error-which-appeared-when-compiling-non-c-co.patch \ 
" 

を。 ブーストライブラリをダウンロードして、いくつかのディレクトリに展開する必要がありますか? 私はtarballを保持すべきですか?

いくつかのドキュメントを読むと、このファイルには "ファイル"リソースが必要なので、私のローカルディスク上に見つかったものがあります。 また、bbレシピはどこに置くべきですか?デフォルトのフォルダはありますか? 私が読んだことは、それは本当に重要ではありませんが、レイヤー、レシピ付きのレシピなどでレイヤーを保つのがよい方法です。

その後、私はおそらく、イメージを再構築し、最終的に実行する必要があります。 bitbake -cを

あなたはおそらく私を助けてもらえpopulate_sdk?

答えて

3

yoctoのデフォルトのmeta層は、の下に追加のバージョン1.63を提供します。このレイヤーがbblayers.confにリストされている限り、余分な作業をせずに1.63を追加することができます。

新しいバージョンが必要な場合は、選択したboost-{version}.incを作成し、SRC_URIを目的のダウンロードに設定することができます。ほとんどの場合、1.63で十分です。

+0

ご回答ありがとうございます。私はすでにコアをオープンエンディアン化していることに気付きましたが、デフォルトではブーストライブラリは含まれていないと思います。私が間違っている ? – Podarce

+0

@Podarce編集しましょう。 – mascoj

+0

@Podarceアップデートを確認してください。 Boostはデフォルトレイヤーで提供されます。 – mascoj

関連する問題