Petalinux のインストール プロセスと Ubuntu での一般的な問題の解決

1.はじめに

近い将来、ZYNQ ARM 側を Linux 開発用にテストする必要があるため、カスタマイズには Petalinux ツールを使用する必要があります。そのため、この記事では Petalinux のインストール プロセスを簡単にまとめ、インストール プロセス中に発生するいくつかの問題について説明し、解決します。
Petalinux は、ザイリンクスが開発したエンベデッド Linux カスタム ソフトウェアで、Vivado と連携することで Linux システムの開発を簡素化します。開発者は、Petalinux を介して u-boot、Linux カーネル、および Linux アプリケーションをカスタマイズし、新しいカーネル、デバイス ドライバー、アプリケーション、およびライブラリを追加したり、ネットワークまたは JTAG を介してフル システム エミュレーターまたは物理ハードウェアでソフトウェア プロトコルを起動およびテストしたりできます。システムの起動から実行までのすべての操作を完了します。
ザイリンクスの公式 Web サイトには、Petalinux のダウンロード アドレスPetalinux Downloadとインストール ガイドのPetalinux Reference Guide が用意されています. 具体的なインストール プロセスについては、インストール ガイドを参照してください。

2. Petalinux のインストール プロセス

  1. 公式 Web サイトから Petalinux スイート インストール パッケージ petalinux-v<version number>-final-installer.run をダウンロードします.2017.4 を例にとると、インストール パッケージを Download ディレクトリに置きます:

ここに画像の説明を挿入

  1. インストール パッケージに実行権限を追加します。
	sudo chmod +x petalinux-v2017.4-final-installer.run

ここに画像の説明を挿入

  1. 対応する依存パッケージをインストールします。そうしないと、インストール プロセス中に関連する依存関係がないことを確認するメッセージが表示されます。特定の依存パッケージは、リファレンス ガイドに記載されています。

写真の説明を追加してください

Ubuntu システム:

sudo apt-get install -y tofrodos gawk xvfb git make net-tools libncurses5-dev tftpd \
zlib1g-dev zlib1g:i386 libssl-dev flex bison libselinux1 gnupg wget diffstat chrpath \
socat xterm autoconf libtool tar unzip texinfo zlib1g-dev gcc-multilib build-essential \
screen pax gzip

Redhat/CentOS システム

sudo yum install gawk make wget tar bzip2 gzip python unzip perl patch diffutils \
diffstat git cpp gcc gcc-c++ glibc-devel texinfo chrpath socat perl-Data-Dumper \
perl-Text-ParseWords perl-Thread-Queue python34-pip xz which SDL-devel xterm autoconf \
libtool zlib-devel automake glib2-devel zlib ncurses-devel openssl-devel dos2unix flex \
bison glibc.i686 screen pax glibc-devel.i686 compat-libstdc+-33.i686 libstdc+.i686

インストールが完了するまで待ちます。

写真の説明を追加してください

  1. Python と tftp サーバーをインストールします。そうしないと、インストールに影響します。具体的な影響については、第 3 部で詳しく説明します。
	sudo apt-get install -y python tftpd-hpa

ここに画像の説明を挿入

  1. Petalinux インストール ディレクトリを作成します。この記事は /opt/ ディレクトリに作成されています。
	sudo mkdir -p /opt/petalinux/2017.4/

ここに画像の説明を挿入

  1. インストール パスのパーミッション所有者を変更します。opt ディレクトリはルートの下にあり、インストール ディレクトリをユーザー名に関連付けます。
	sudo chown carson /opt/petalinux/2017.4/

ここに画像の説明を挿入

  1. インストール パッケージの場所でインストール コマンドを実行して、非管理者モードでのPetalinux のインストールを完了します。
	./petalinux-v2017.4-final-installer.run /opt/petalinux/2017.4/

ここに画像の説明を挿入

  1. インストール プロセス中に、一連のライセンス契約インターフェイスがポップアップします。Enter キーを押してインターフェイスに入り、q を押して契約を終了し、y を押して契約の内容に同意します。

入力して契約書を読みます。

ここに画像の説明を挿入

「q」キーはプロトコルを終了します:

ここに画像の説明を挿入

「y」は契約の内容に同意します:

ここに画像の説明を挿入

「q」キーはプロトコルを終了します:

ここに画像の説明を挿入

「y」は契約の内容に同意します:

ここに画像の説明を挿入

「q」キーはプロトコルを終了します:

ここに画像の説明を挿入

'y' は契約の内容に同意し、インストールが完了するのを待ちます。

ここに画像の説明を挿入

3. インストールの一般的な問題と解決策

1. インストール プロセス中にエラー メッセージ「ERROR: You are PetaLinux installation guide - required tools and libraries package section for detailed information」がレポートされる

ここに画像の説明を挿入

問題の原因:依存パッケージが完全にインストールされておらず、関連する依存パッケージが欠落しています。たとえば、python ライブラリが欠落しています:

解決策:プロンプトに従って、対応するインストール パッケージをインストールします。

	sudo apt-get install -y python

2. インストール プロセスの警告「WARNING: No tftp server found - please refer to "PetaLinux SDK Installation Guide" for its impact and solution」

ここに画像の説明を挿入

問題の原因: tftp サーバーがインストールされていない、tftp は JTAG よりも高速なブート起動を提供します。公式ドキュメントでは次のように説明されています。

ここに画像の説明を挿入

解決策: tftp サーバーをインストールし、対応する読み取りおよび書き込み権限を提供します。

	sudo apt-get install tftpd-hpa			##安装tftp server

ここに画像の説明を挿入

	sudo mkdir -p /var/lib/tftpboot/		##创建tftpboot启动目录
	sudo chmod 777 /var/lib/tftpboot/		##为启动目录添加权限
	sudo vim /etc/default/tftpd-hpa			##更改tftpboot启动配置内容

写真の説明を追加してください

tftpd-hpa のデフォルト設定は次のとおりです。

写真の説明を追加してください

新しいディレクトリに構成します。

写真の説明を追加してください

TFTP サーバー サービスを再起動します。

	sudo service tftpd-hpa restart

写真の説明を追加してください

3. インストール手順报错 「エラー: バージョンの要件を満たしていないツールがあります: -検出された python のバージョンは、予想される 2.7.3 未満です」

ここに画像の説明を挿入

問題の原因: python のバージョンが低すぎるか、python3 としてインストールされている python3 の更新が多いため、ここでは python2.7 (python2.7.3 以降) が引き続き使用されます。

解決策: Python のバージョンが python3 の場合は、python2.7.17 をインストールしてデフォルトとして設定します。

	##查看python版本
	python --version

	##安装python2.7
	sudo apt-get install -y python

	##更改python软链接为python2.7
	cd /usr/bin						#进入python所在目录
	sudo rm python					#将原有python文件删除
	sudo ln -s python2.7 python		#将python链接到python2.7

それでも問題が解決しない場合は、/var/lib/dpkg の下にあるステータス ファイルを変更する必要があります。

	cd /var/lib/dpkg				#进入/var/lib/dpkg目录
	sudo vi status					#用vim修改status文件,若未安装vim需提前安装

python パッケージ セクションを検索し、前に次を追加します ( vi/vim search and edit method )。

Package: python
Status: install ok installed 
Maintainer: Fake Entry <[email protected]>
Architecture: all
Version: 2.7.17
Description: fake package for petalinux

ここに画像の説明を挿入

保存して終了し、再度実行して、インストールを正常に完了します。

4. プロセスの実行中に「libncursesw.so.5: 共有オブジェクト ファイルを開けません: そのようなファイルまたはディレクトリはありません」というエラーが報告される

問題の原因: libncursesw.so.5 ファイルが見つからず、libncursesw.so.5 が /lib/x86_64-linux-gnu および /lib32 の下に見つからない

ここに画像の説明を挿入

ここに画像の説明を挿入

回避策: libnursesw.so.5 を検索して、このファイルが存在するかどうかを確認します。

	sudo apt install apt-file
	sudo apt-file update
	sudo apt-file find libncursesw.so.5

ファイルが見つからない場合は、libncursesw ライブラリを再インストールする必要があります。

	sudo apt-get install libncursesw5

ncursesw (libncursesw.so.5) は、ncurses (libncurses.so.5) に基づいて utf8 文字セットのサポートを追加し、中国語をサポートできるため、ソフトウェアに中国語がある場合、操作中にエラーが報告される場合があります: utf8 はサポートされていません。

おすすめ

転載: blog.csdn.net/weixin_43361652/article/details/128183759