2016-10-11 88 views
1

私はvSOMEIPに依存するコンポーネントに取り組んでいます.yoctoはvSOMEIPに対応する をサポートしていません。自分自身を追加しようとしています。 レシピ(vSOMEIPレシピ)を作成し、ソースをコピーしました。 マイBB層は、ソースがコンパイルされますが、それらをインストールすることはできません得ているこのyoctoでのvSOMEIPのサポート

SECTION = "devel" 

LICENSE = "CLOSED" 

SRC_URI = "file://*" 

S = "${WORKDIR}" 

inherit cmake 

FILES_${PN} = "${bindir}" 

のように見えます。梱包をしているエラー以下

ガットは、

ERROR: vSOMEIP-1.0-r0 do_package: QA Issue: vSOMEIP: Files/directories were installed 
but not shipped in any package: 
    /usr/etc 

    /usr/lib/libvsomeip.so.2.2.4 

    /usr/lib/libvsomeip-sd.so.2.2.4 

    /usr/lib/libvsomeip.so.2 

    /usr/lib/libvsomeip-sd.so.2 

    /usr/lib/cmake 

    /usr/lib/cmake/vsomeip 

    /usr/lib/cmake/vsomeip/vsomeipTargets-noconfig.cmake 

    /usr/lib/cmake/vsomeip/vsomeipConfig.cmake 

    /usr/lib/cmake/vsomeip/vsomeipConfigVersion.cmake 

    /usr/lib/cmake/vsomeip/vsomeipTargets.cmake 

    /usr/etc/vsomeip 

    /usr/etc/vsomeip/vsomeip-tcp-service.json 

    /usr/etc/vsomeip/vsomeip-tcp-client.json 

    /usr/etc/vsomeip/vsomeip-udp-client.json 

    /usr/etc/vsomeip/vsomeip.json 

    /usr/etc/vsomeip/vsomeip-udp-service.json 

    /usr/etc/vsomeip/vsomeip-local.json 

Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install. 
vSOMEIP: 18 installed and not shipped files. [installed-vs-shipped] 
ERROR: vSOMEIP-1.0-r0 do_package: Fatal QA errors found, failing task. 
ERROR: vSOMEIP-1.0-r0 do_package: Function failed: do_package 

答えて

1

あなたは現在だけ/usr/bin自体をインストールしているようです。 あなたが必要とする他のディレクトリを追加してください:

FILES_${PN} += " \ 
    ${bindir} \ 
    ${bindir}/* \ 
    ${libdir} \ 
    ${libdir}/* \ 
    ${sysconfdir} \ 
    ${sysconfdir}/vsomeip \ 
    ${sysconfdir}/vsomeip/* 
    " 

私も/usr/lib/cmakeの下でそのすべてが設置されるものではないと思います。 @Anders答えおそらく正しいです:あなたは


アップデートがレシピに

do_install_append() { 
    rm -rf ${D}${libdir}/cmake 
} 

を追加することによって、インストールした後、それを削除してください。

ファイルを設定しないでください_ =

と$ {} PNあなたはそれが+=を使用変更する必要がある場合。

あなたのケースでは、変数は正しくだからFILES_${PN}を削除し、すべてがまだ動作するはずあなたがinherit cmake

に含まcmakeのクラスで設定する必要があります。

+1

いいえ、cmakeディレクトリは '$ {PN} -dev'パッケージから出てくるはずです。好ましくは削除しないことが望ましい。 – Anders

+0

はい、あなたは正しいです! cmakeはおそらく変数を右に設定します – Fl0v0

2

FILES_${PN}のデフォルト値は、あなたのために十分でなければならないライン

FILES_${PN} = "${bindir}" 

を削除してください。あなたが何をしているのか分からない限り、その変数は書き換えず、必要に応じて追加してください。

+0

確かに、ファイルを直接初期化するのではなく、$ _ {PN} + = "$ {bindir}"を追加します。 – anikhan