1115728_ja-JP

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

1115728_ja-JP

1115728_ja-JP

Ubuntu 12.04 64ビット精密Pangolinホストセットアップi.MX28 L2.6.35_MX28_SDK_10.12_SOURCEをビルド[1] [1]<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

 

Overview

フリースケールの i.M28EVK 開発キットは、i.MX28プロセッサのソフトウェアを実行し、機能を評価するためのプラットフォームを提供します。このドキュメントでは、Intel / AMDアーキテクチャのコンピューター上のUbuntu 12.04 64ビットPrecise PangolinホストでLinuxボードサポートパッケージ(BSP)を実行する方法について詳しく説明します。32 ビット ホストについては、このドキュメントでは説明しておらず、ここで説明するものとは異なる設定手順があります。

 

Ubuntu Linux ホストは、ARM イメージを作成する BSP をクロスコンパイルするために使用されます。BSP は、Linux Target Image Builder (LTIB) という名前のビルドシステム、コンパイルとデバッグ用の GNU ツールスイート、U-Boot ブートローダー、Linux カーネル、およびルートファイルシステムを提供します。

リソース

Download Ubuntu 12.04.01

Ubuntuまたは仮想マシン(VMwareまたはVirtualBox)を実行している専用コンピューターを使用して、ホストUbuntuソフトウェアを実行できます。Ubuntuイメージは、Ubuntuサイト( Ubuntu 12.04.1 LTS(Precise Pangolin))からダウンロードできます。

 

このUbuntuホストISOは、md5チェックサムとともに使用されました。

ubuntu-12.04.1-desktop-amd64.iso  06472ddf11382c8da1f32e9487435c3d

 

ISO を取得する方法の 1 つは、zsync を使用して以下をダウンロードすることです。

zsync http://releases.ubuntu.com/12.04/ubuntu-12.04.1-desktop-amd64.iso.zsync  

ダウンロード後、ISOのインストールはユーザーの好みです(専用のLinux PCまたは仮想マシンのいずれか)。

 

i.MX28EVK BSPおよびドキュメントのダウンロード

BSPのダウンロードは、このサイト L2.6.36_MX28_SDK_10.12_Sourceログイン資格情報を指定するために無料の登録が必要なLinuxドキュメントのドキュメントから、

 

436e0b8e1c7976c657d530a45f9dbd0c L2.6.35_10.12.01_SDK_source_bundle.tar.gz

de0274320a17c1e989d1ef5c088973e2 L2.6.35_10.12.01_SDK_docs.tar.gz

 

Ubuntuホストのセットアップ

Ubuntuのログイン資格情報

  • ユーザー: user
  • パスワード:user

このドキュメントに使用されます。

ホストパッケージの更新

Ubuntuホストにログインすると、BSPをインストールする前に、既存のパッケージが最新バージョンに更新されます。使用されるUbuntuパッケージマネージャーはapt-getです。

$ sudo apt-get update $ sudo apt-get upgrade 

01. インストールされているすべてのパッケージで新しいリビジョンを確認する

02. 見つかった新しいパッケージがすべてインストールされます。

 

ltib ビルドシステムには追加パッケージが必要です。

Ubuntu Configuration

PDF

evinceはデフォルトのPDFリーダーで、別のオプションはzathuraです。

$ sudo apt-get zathuraをインストールする

須藤プリビリッジ

LTIB では、一部の操作にスーパー ユーザー特権が必要です。有効にするには、sudo エントリが sudo'ers ファイルに追加されます。詳細については、'man visudo' を実行してください。

 

$ sudo visudo  

最初の単語、userはログインアカウント 'user'です これは、使用したログインに変更することも、グループを設定している場合は、開発者が参加するグループを提供できます - 詳細については、sudoのマニュアルページを参照してください。

次の行を追加します。

 

ユーザ ALL =NOPASSWD: /usr/bin/rpm/ /opt/freescale/ltib/usr/bin/rpm

 

デフォルトシェル

Ubuntuはデフォルトのシェル「ダッシュ」を使用します。ただし、これにより、ltibシステムの一部であるbashスクリプトでエラーが発生します。デフォルトのシェルを「dash」から「bash」に変更

 

$ sudo update-alternatives --install /bin/sh sh /bin/bash 1 

CCACHE

ccache は、ltib システムでサポートされている高速な C/C++ コンパイラ キャッシュを提供します。ccache パッケージがインストールされた後に構成するには:

$ sudo apt-get install ccache $ ccache -M 50M $ ccache -c  

02. キャッシュ制限を50メガに設定する

03.キャッシュフォルダをクリアします

 

ディレクトリレイアウト

次のディレクトリ構造が使用されます。

/home/user/freescale/imx28/

|-- archive

|-- L2.6.35_10.12.01_ER_source

|-- L2.6.35_10.12.01_SDK_docs

|-- L2.6.35_10.12.01_SDK_scripts

|-- ltib

|-- ubuntu-imx28-ltib-patch

 

アーカイブディレクトリは、BSP と文書が保存される場所です。コマンドを使用してディレクトリを作成します。

$ mkdir -p ~/freescale/imx28/archive

 

SDK とドキュメントの抽出

ソフトウェア開発キットの内容を抽出するために、次の手順を使用しました。

 

$ cd ~/freescale/imx28/archive $ tar -zxf L2.6.35_10.12.01_SDK_source_bundle.tar.gz -C ..  

 

01.圧縮されたタールボールを含むディレクトリに移動します。

02. 現在のディレクトリの上のディレクトリ(-C..)に内容を抽出します

-z unzip

-x抽出

-f L2.6.35_10.12.01_SDK_source_bundle.tar.gz

 

$ tar -zxf L2.6.35_10.12.01_SDK_docs.tar.gz  

01. 現在のディレクトリの上のディレクトリ(-C..)に内容を抽出します

    -z unzip

-x抽出

-f このファイルをL2.6.35_10.12.01_SDK_docs.tar.gz


両方のtarファイルの内容は、ディレクトリ/home/user/freescale/imx28にあります。

BSP ソースのインストール

L2.6.35_10.12.01_SDK_source_bundle.tar.gzからコンテンツを抽出した後、ファイルL2.6.35_10.12.01_SDK.source.tar.gzすべてのソースとビルドシステムが含まれます。内容を抽出してインストールします。これにより、ビルドシステムであるltibディレクトリが作成されます。

$ tar -zxf L2.6.35_10.12.01_SDK_source.tar.gz $ cd L2.6.35_10.12.01_ER_source $ ./install  

ライセンス情報を読み、「YES」と入力して同意します。次に、インストールディレクトリが要求され、次のように提供されます。これが親ディレクトリです。
インストールスクリプトはパッケージをコピーし、「インストールが完了しました。ltib のインストールが ../ltib で、インストールを完了するには、次のようにします。

cd .../ltib ./ltib  

ただし、これを行う前に、Ubuntu 12.04.01でltibを実行するために適用する必要があるパッケージとパッチがあります。

LTIB用のUbuntuソフトウェアパッケージ

次のパッケージが必要です。以下に添付されているスクリプト pkg-setup.sh には、ダウンロードして実行してインストールできるこれらのパッケージがあります。

$ sh pkg-setup.sh 

sudo apt-get -y gettext libgtk2.0-dev をインストールするRPMバイソンM4 LibFreeType6-DEV

sudo apt-get -y libdbus-glib-1-dev liborbit2-dev intltool をインストールする

sudo apt-get -y ccache zlib1g zlib1g-dev gcc g ++ libtool

sudo apt-get -y install uuid-dev liblzo2-dev tcl wget libncurses5-dev

sudo apt-get -y libncursesw5-dev lib32z1 libglib2.0-devをインストールするxsltproc

sudo apt-get -y install ia32-libs libc6-dev-i386

このファイル pkg2-setup.sh には、開発用のオプション パッケージが含まれています。インストール、ダウンロード、実行するには:

$ sh pkg2-setup.sh

ホスト設定の詳細については、ドキュメントltib_build_host_setup.pdfを参照してください。

LTIBのパッチ適用

glibc-develおよびzlib Ubuntu 12.04パッケージのファイルの場所が9.0.4から変更されました元のltibがリリースされたUbuntu。ltib 操作を更新するために、ディレクトリ ~/freescale/imx28/ltib から次のパッチが実装されています。

1.ファイル ltib は 2387 行目で変更され、rpm 呼び出しに '-v' オプションが追加されます

古い:

system('rpm --force-debian 2>/dev/null') == 0?

新機能:

system('rpm -v --force-debian 2>/dev/null') == 0?

2. bin/Ltibutils.pm ファイルが更新され、glibc-devel と zlib がサポートされるようになりました。

 

glibc-devel 更新: 563 行目で /usr/lib32/libm.so のチェックを追加

'glibc-devel' => sub {-f 'usr/lib/libm.so' || -f '/usr/lib64/libz.so' || -f '/usr/lib32/libm.so'},

 

zlibc update: Line 584 add /lib/x86_64-linux-gnu/libz.so*

zlib => sub{my @f = (glob('/usr/lib/libz.so*'),

              glob('/lib/x86_64-linux-gnu/libz.so*'),

              glob('/lib/libz.so*'),

 

上記のパッチは、アタッチメント 0001-patches-for-12.04-ubuntu.patch にもあります。

 

LTIBパッケージも、Ubuntuで正しくビルドするために調整が必要です。以下のtarファイルubuntu-imx28-ltib-patch.tgzには、すべての更新が含まれています。ltibソースディレクトリと同じディレクトリレベルでコンテンツをダウンロードして抽出します。

$ tar -zxf ubuntu-imx28-ltib-patch.tgz

├── ltib

├── ubuntu-imx28-ltib-patch

└── ubuntu-imx28-ltib-patch.tgz

ディレクトリをubuntu-imx28-ltib-patchに変更してから、install-patches.sh スクリプトを実行します。

$ cd ubuntu-imx28-ltib-patch

$./install-patches.sh

 

次のパッケージが更新されます。

  • lkc
  • mtd-utils
  • mux_server
  • sparse

Ubuntuホストを使用してSDカードを作成する

tar ファイル L2.6.35_10.12.01_SDK_scripts.tar.gz には、ltib ビルドから SD カードにイメージを書き込むためのスクリプトが含まれています。内容を抽出し、スクリプトを ltib ディレクトリにコピーし、更新された fdisk コマンドで動作するように mk_mx28_sd スクリプトを更新します。

 

$ tar -zxf L2.6.35_10.12.01_SDK_scripts.tar.gz $ cd L2.6.35_10.12.01_SDK_scripts $ cp mk_hdr.sh ~/freescale/imx28/ltib $ cp mk_mx28_sd ~/freescale/imx28/ltib $ cd ~/freescale/imx28/ltib  

スクリプトを編集mk_mx28_sd、177 行目に 'u' を追加し、その後に o コマンドを追加します。これにより、シリンダがセクタに変更されます。

 

古い:

エコー "o

n

 

新機能:

エコー "U

o

n

 

/dev/sdb にある SD カードを作成するように更新したら、次のようにします。

$ ./mk_mx28_sd /dev/sdb  

注: 自動的にマウントされた場合、スクリプトを機能させるにはマウントを解除する必要があります

$ sudo umount /dev/sdb* 

 

 

メディアブートの選択

i.MX28EVKには、EVKの下部にあるスロット0のSDカードから実行するブートオプションがあります。EVKの上部には、スタートアッププロセス中に読み取られるスイッチがあり、使用するブートメディアを決定します。この例では、スロット 0 の SD カードが使用されており、次の設定が必要です。

B3/DIP1B2/DIP2B1/DIP3B0/DIP4
1001

ユーザーガイドのセクション3.2.1 i.MX28_Linux_BSP_UG.pdfを参照してください。すべてのオプションのブートモード。ユーザーガイドは、 Linuxドキュメント バンドルのドキュメントにあります。ブートスイッチの位置とSDカードスロット0の位置を示す図については、次のセクションを参照してください。

ケーブル接続

コンピューターのシリアル・ポートは、i.MX28EVK シリアル・ポートに接続されています。通信設定は115200ボー、8データビット、パリティなし、1ストップビットです。このポートにはフロー制御が設定されていません。これは通常、115200、8N1と表示されます。電源が接続されています

 

79494_79494.PNGiMX28Block.PNG

标记 (1)
无评分
版本历史
最后更新:
‎01-05-2026 10:42 AM
更新人: