2017-08-21 51 views
0

私はラズベリーパイのYocto画像をここでの手順を使って構築しました:http://www.jumpnowtek.com/rpi/Raspberry-Pi-Systems-with-Yocto.html。システムが起動すると、ローディングバー付きのRaspberry Piのデフォルトのpsplashスプラッシュ画面が表示されます。Yocto Raspberry Pi psplashの画像を変更します

メタラズベリー層には、システム起動時に見られるラズベリーのπ画像を定義するpsplash bbappendレシピファイルがあります。

[email protected]:~/poky-morty/meta-raspberrypi$ grep -R SPLASH * 
conf/machine/include/rpi-base.inc:SPLASH = "psplash-raspberrypi" 
recipes-core/images/rpi-basic-image.bb:SPLASH = "psplash-raspberrypi" 
recipes-core/psplash/psplash_git.bbappend:SPLASH_IMAGES += "file://psplash-raspberrypi-img.h;outsuffix=raspberrypi" 

DPI-base.incでSPLASH変数が使用するスプラッシュ画面を定義します(と思う...)とpsplash_git.bbappendファイルは、ラズベリーパイのマッチングうち接尾辞で画像をふり。

bbappendは次のようになります。

[email protected]:~/poky-morty/meta-raspberrypi$ cat recipes-core/psplash/psplash_git.bbappend 
FILESEXTRAPATHS_prepend := "${THISDIR}/files:" 
SPLASH_IMAGES += "file://psplash-raspberrypi-img.h;outsuffix=raspberrypi" 

私は、カスタム層を持っていると私は、次の内容でその層に別のpsplash_git.bbappendを作った - とラズベリーパイスプラッシュ画面に使用する画像を上書きしようとします自分のイメージ:

[email protected]:~/rpi/meta-me/recipes-me/psplash$ cat psplash_git.bbappend 
FILESEXTRAPATHS_prepend := "${THISDIR}/files:" 
SPLASH_IMAGES += "file://social.jpg-img.h;outsuffix=raspberrypi" 

私はbbappendが含ま私のカスタムで自分のイメージを構築しようとすると、私は次のエラーを取得する:

Initialising tasks: 100% |##################################| Time: 0:00:05 
NOTE: Executing SetScene Tasks 
NOTE: Executing RunQueue Tasks 
ERROR: psplash-0.1+gitAUTOINC+88343ad23c-r15 do_package: QA Issue: psplash-raspberrypi is listed in PACKAGES multiple times, this leads to packaging errors. [packages-list] 
ERROR: psplash-0.1+gitAUTOINC+88343ad23c-r15 do_package: Fatal QA errors found, failing task. 
ERROR: psplash-0.1+gitAUTOINC+88343ad23c-r15 do_package: Function failed: do_package 
ERROR: Logfile of failure stored in: /home/me/rpi/build/tmp/work/arm1176jzfshf-vfp-poky-linux-gnueabi/psplash/0.1+gitAUTOINC+88343ad23c-r15/temp/log.do_package.63289 
ERROR: Task (/home/me/poky-morty/meta/recipes-core/psplash/psplash_git.bb:do_package) failed with exit code '1' 
NOTE: Tasks Summary: Attempted 3439 tasks of which 3430 didn't need to be rerun and 1 failed. 

outsuffixをデフォルトに変更すると、同じエラー(重複ターゲット)が発生します。

私はこれに私のbbappendを変更することにより、このエラーを回避することができます

[email protected]:~/rpi/meta-me/recipes-me/psplash$ cat psplash_git.bbappend 
FILESEXTRAPATHS_prepend := "${THISDIR}/files:" 
SPLASH_IMAGES += "file://social.jpg-img.h;outsuffix=me" 

をそして私はこのような私のlocal.confでSPLASH設定変数を上書きしよう:

# Set the Custom Splash screen 
SPLASH = "psplash-me" 

しかし、私が何をしているかにかかわらず、常にデフォルトのRaspberry Piをレンダリングします。

デフォルトのpsplashスプラッシュ画面を自分のイメージで上書きするにはどうすればよいですか?ありがとう。

+0

より多くの情報を提供します[**ラズベリーパイStackExchange **](http://raspberrypi.stackexchange.com/)。これはタンジェントなコーディングに関連しているので、それは判断の呼び出しです。 –

答えて

1

ファイルの名前は%sがそう最も簡単な方法は、あなたのsocial.jpg-img.hpsplash-raspberrypi-img.hにを変更し、元のraspberrypiのpsplash.bbappend上でそれを上書きすることであるraspberrypiある形式psplash-%sと一致する必要があります。

以下は、outsuffix変数の取得方法に関する情報です。

for uri in splashfiles: 
     fetcher = bb.fetch2.Fetch([uri], d) 
     flocal = os.path.basename(fetcher.localpath(uri)) 
     fbase = os.path.splitext(flocal)[0] 
     outsuffix = fetcher.ud[uri].parm.get("outsuffix") 
     if not outsuffix: 
      if fbase.startswith("psplash-"): 
       outsuffix = fbase[8:] 
      else: 
       outsuffix = fbase 
      if outsuffix.endswith('-img'): 
       outsuffix = outsuffix[:-4] 
     outname = "psplash-%s" % outsuffix 
     if outname == '' or outname in oldpkgs: 
      bb.fatal("The output name '%s' derived from the URI %s is not valid, please specify the outsuffix parameter" % (outname, uri)) 
     else: 
      pkgs.append(outname) 
     if flocal.endswith(".png"): 
      haspng = True 
     localpaths.append(flocal) 

SPLASH_IMAGES基本的にoutsuffixでキーを持っているファイルのマップです。

SPLASH_IMAGES = "file://splash-file-one.h;outsuffix=one \ 
         file://splash-file-two.h;outsuffix=two" 

これは自動的にスプラッシュイメージエントリのpsplash-パッケージ(即ちpsplashオンおよびpsplash-2)を作成します。

splash: Enables showing a splash screen during boot. By default, this screen is provided by psplash, which does allow customization. If you prefer to use an alternative splash screen package, you can do so by setting the SPLASH variable to a different package name (or names) within the image recipe or at the distro configuration level.

デフォルトを使用する代わりに、raspberrypiはマシン構成のスプラッシュイメージを選択する代わりに使用できます。このリンクは、この質問はおそらくより良いに頼まれ https://lists.yoctoproject.org/pipermail/yocto/2013-May/013902.html

+# Set raspberrypi splash image 
+SPLASH = "psplash-raspberrypi" 
diff --git a/recipes-core/psplash/psplash_git.bbappend b/recipes-core/psplash/psplash_git.bbappend 
index eea8dfb..65dc30f 100644 
--- a/recipes-core/psplash/psplash_git.bbappend 
+++ b/recipes-core/psplash/psplash_git.bbappend 
@@ -1,2 +1,2 @@ 
FILESEXTRAPATHS_prepend := "${THISDIR}/files:" 
-SPLASH_IMAGES = "file://psplash-raspberrypi-img.h;outsuffix=default" 
+SPLASH_IMAGES += "file://psplash-raspberrypi-img.h;outsuffix=raspberrypi" 
-- 
1.8.2.2 
関連する問題