UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 55998

PetaLinux - スタートアップ時に実行される PetaLinux ルート ファイル システムにスクリプトを追加する方法

説明

システム スタートアップ時に実行されるように PetaLinux ルート ファイル システム内に含めたいスクリプトがあります。

このコードを正しく PetaLinux ビルド プロセスに含める方法を教えてください。

ソリューション

PetaLinux ビルド ツールにビルド済みのバイナリ コードが含まれるようにするには、次の一般的なフローに従います。

PetaLinux 2013.04 およびそれ以前のバージョン

  1. ルート ファイル システムにスクリプトのインタープリター (Perl、Python など) が含まれていることを確認します。
  2. petalinux-new-app を使用してアプリケーションを作成します。新規アプリケーションは、${PETALINUX}/software/user-apps/<APP>/ に作成されます。petalinux-new-app の -e オプションは、menuconfig からアプリケーションを自動的に選択し、PetaLinux システムがビルドされるときにこのアプリケーションを自動的にビルドします。
  3. スクリプトを ${PETALINUX}/software/user-apps/<APP>/ に置きます。
  4. ${PETALINUX}/software/user-apps/<APP>/ にある新規アプリケーション用に makefile を変更します。
    • makefile の all: および clean: セクションが空であることを確認します。
    • スクリプトを ${PETALINUX}/software/petalinux-dist/romfs/ にコピーするよう romfs: セクションを更新します。

次の例のようになります。

{{{
all:
 
clean:
romfs:
     $(ROMFSINST) -d -p 0755 mystartup /etc/init.d/mystartup
     $(ROMFSINST) -s /etc/init.d/mystartup /etc/rcS.d/S99mystartup
}}}

注記 : /etc/rcS.d/ 内のスクリプトはアルファベット順に実行されます。

PetaLinux 2013.10 およびそれ以降のバージョン

  1. ルート ファイル システムにスクリプトのインタープリター (Perl、Python など) が含まれていることを確認します。
  2. petalinux-create -t apps -n <APP> を使用してアプリケーションを作成します。新規アプリケーションは、<PETALINUX_PROJECT_DIR>/components/apps/<APP>/ に作成されます。petalinux-create の --enable オプションは、menuconfig からアプリケーションを自動的に選択し、PetaLinux システムがビルドされるときにこのアプリケーションを自動的にビルドします。
  3. スクリプトを <PETALINUX_PROJECT_DIR>/components/apps/<APP>/ に置きます。
  4. <PETALINUX_PROJECT_DIR>/components/apps/<APP>/ にある新規アプリケーション用に makefile を修正します。
    • makefile の all: および clean: セクションが空であることを確認します。
    • スクリプトを <PETALINUX_PROJECT_DIR>/build/linux/roofts/targetroot/ へコピーするよう install:: セクションを更新します。
次の例のようになります。
all: build install
build: $(APP)
clean:
.PHONY: install image
install: $(APP)
 $(TARGETINST) -d -p 0755 mystartup /etc/init.d/mystartup
 $(TARGETINST) -s /etc/init.d/mystartup /etc/rc5.d/S99mystartup
注記 : /etc/rc5.d/ 内のスクリプトはアルファベット順に実行されます。
AR# 55998
日付 04/23/2014
ステータス アクティブ
種類 一般
デバイス
  • SoC
  • XA Zynq-7000
  • Zynq-7000
  • More
  • Zynq-7000Q
  • FPGA Device Families
  • Artix-7
  • Kintex-7
  • Spartan-6
  • Virtex-6
  • Virtex-7
  • Less
ツール
  • PetaLinux
  • PetaLinux - 2012.12
  • PetaLinux - 2013.04
  • PetaLinux - 2013.10
このページをブックマークに追加