Linux 上に 68000 環境を作る
2006年2月25日
はじめに
このWebページでは,68000アセンブラのクロス開発環境を,Linux 上に作る方法を解説している.
なお、OSとしては,FreeBSD を使う場合には、「FreeBSD 上で 68000 アセンブラの実験環境を作る Web ページ」を見て下さい。
このWebページに記載されている内容や,この Web ページを使ってダウンロー ドしたプログラムの使用によって生じたいかなる結果に対しても,Web ページ の作者は責任を負いません.利用は個人の責任において行ってください.
- 作業前には、必要なファイルをバックアップすること
 - 状況によっては、Linux の再インストールが必要になる。その覚悟をすること
 
なお、2005年8月バージョンの 「FreeBSD 上で 68000 アセンブラの実験環境を る Web ページ」も念のために残しているので、必要な人はそちらも 見て下さい
このページで説明している.こと
68000 開発環境(クロスコンパイラと RTEMS)、68000エミュレータ、その他の基本 的なソフトのインストール手順を説明している. 68000 の実機 (68000 搭載の実験ボード) に転送して動作するプログラムをコ ンパイルできるための設定手順である.
-  System Environment/Libraries
- expat : A library for parsing XML
 - freetype : A free and portable TrueType fond rendering engine
 - fontconfig : font configuration and customization library (requires freetype)
 - libgcj : Java runtime library for gcc
 - libiconv
 - newlib
 
 -  System Environment/Base
- rpm : The RPM package management system (requires fileutils, gawk, mktemp, popt, shadow-utils)
 
 -  Applications/Text
- m4 : GNU macro processor
 
 -  Applications/Editors
- emacs :The libraries needed to run the GNU Emacs text editor (perl)
 
 -  Development/Tools
- apt-0.5.15cnc6-0.1.fc1.fr.i386.rpm
 - automake : GNU tool for automatically creating makefiles (requires perl)
 - autoconf : GNU tool for automatically configuring source code (requires gawk, m4, mktemp, perl)
 - binutils : GNU collection of binary utilities
 - bison : GNU general purpose parser generator
 - checkinstall
 - flex : GNU tool for creating scanners
 - gettext : GNU libraries and utilities for producing multi-lingual messages
 - libtool : GNU libtool, which simplifies the use of shared libraries (requires autoconf, automake, libtool-libs, m4, mktemp, perl)
 - make : GNU tool which simplifies the build process for users
 - patch : GNU patch command for modifying upgrading files
 - rpmbuild : Scripts end executable programs used to build packages (requires patch, perl, rpm)
 - texinfo : Tools needed to create Texinfo format documentation files
 
 -  Development/Debuggers
- gdb : GNU source-level debugger for C, C++ and other languages (requires info)
 
 -  Development/Language (68000クロス開発環境としても使用)
- perl : The perl programming language (requires perl)
 - gcc : GNU compiler collection (C, C++, Objective-C, Java, ...)
 - tcl : Tcl scripting language development environment
 - tk : Tk graphical toolkit for the Tcl scripting language (requires tcl)
 
 - bsvc : 68000 エミュレータ (https://github.com/BSVC/bsvc)
 -  RTEMS : 68000 開発環境として使用
(https://www.rtems.com/index.php)
- rtems-4.6-apt-conf-0.0-0.noarch.rpm
 - rtems-4.6-autoconf-rtems-2.59-0.noarch.rpm
 - rtems-4.6-automake-rtems-1.7.2-2.noarch.rpm
 - rtems-4.6-rtems-base-binutils-2.13.2.1-2.i686.rpm
 - rtems-4.6-m68k-rtems-binutils-2.13.2.1-2.i686.rpm
 - rtems-4.6-rtems-base-gcc-gcc3.2.3newlib1.11.0-4.i686.rpm
 - rtems-4.6-m68k-rtems-gcc-gcc3.2.3newlib1.11.0-4.i686.rpm
 - rtems-4.6-m68k-rtems-c++-gcc3.2.3newlib1.11.0-4.i686.rpm
 - rtems-4.6-rtems-base-gdb-5.2-1.i686.rpm
 - rtems-4.6-m68k-rtems-gdb-5.2-1.i686.rpm
 
 
Linux のインストール
Linux のインストール、 Windowsなど他のOSとの 共存については Linux に関するドキュメント,サイト,書籍等を参考にして 個人の責任において行ってください.
インストール時の注意点
- X Window System は入れる
 - Linux インストール時に C コンパイラを入れる
 -  日本語が使えるように設定する。
日本の会社、団体が出している LINUX ディストリビューションなら、日 本語も使えるように、インストール時に指定できるはずです(Red Hat Linux バージョン 9 では日本語 OK でした)。 
「パッケージファイル」を使って、最小限のソフトをインストール
最初に行なうことは、次のソフトがインストールされているかを調べ、 もしインストールされていなければ、「パッケージファイル」を使って、インストールする.
- flex
 - bison
 - libiconv
 - gcc
 - rpmbuild
 - perl
 
すでにインストール済みかを調べる
LINUX のインストール時に自動でインストールされるものがあるので、まず、 インストールされているかを調べます.
インストールされているかを調べるには、 次のように、「rpm -qi expat」のように「rpm -qi <パッケージ名>」を実行する.
LANG=C rpm -qi flex rpm -qi bison rpm -qi libiconv rpm -qi gcc rpm -qi rpmbuild rpm -qi perl
「パッケージファイル」によるインストールを行なう
調べた結果、インストールされていないものがあったら、 「パッケージファイル」を探してきて、手動でインストールする.
必要な 「パッケージファイル」は http://fr2.rpmfind.net/linux/RPM/index.html などで探して、ダウンロード. その後、「rpm -i <パッケージファイル名>」でインストールするという手順である.
いちいち、マウスをクリックしたりするのが面倒なので、次のようなシェルス クリプトを作って実行させることにした。 これは、RedHat バージョン9 用です. もし他の linux で使う時は、 DOWNLOAD_URL_RPM_1, DOWNLOAD_URL_RPM_LIBICONV, MYRPM_FLEX, MYRPM_BISON, MYRPM_LIBICONV, MYRPM_GCC, MYRPM_RPMBUILD, MYRPM_PERL を適切に設定して下さい。
# # 設定 # # RedHat Linux 9 用の設定です # DOWNLOAD_URL_RPM_1, DOWNLOAD_URL_RPM_LIBICONV, MYRPM_FLEX, MYRPM_BISON, # MYRPM_LIBICONV, MYRPM_GCC, MYRPM_RPMBUILD, MYRPM_PERL を適切に設定して下さい。残りはそのままでも動くと思います # DOWNLOAD_URL_RPM_1, DOWNLOAD_URL_RPM_LIBICONV: RPM のダウンロード先 DOWNLOAD_URL_RPM_1=ftp://fr2.rpmfind.net/linux/redhat-archive/9/en/os/i386/RedHat/RPMS DOWNLOAD_URL_RPM_LIBICONV=http://www.samba.gr.jp/pub/samba-3.0-ja/RPMS/RedHat9/LIBICONV/ MYRPM_FLEX=flex-2.5.4a-29.i386.rpm MYRPM_BISON=bison-1.35-6.i386.rpm MYRPM_LIBICONV=libiconv-1.8-1.i386.rpm MYRPM_GCC=gcc-3.2.2-5.i386.rpm MYRPM_RPMBUILD=rpm-build-4.2-0.69.i386.rpm MYRPM_PERL=perl-5.8.0-88.i386.rpm # # 作業手順 # LANG=C cd /tmp # RPM ファイルをダウンロード wget -S --passive-ftp $DOWNLOAD_URL_RPM_1/$MYRPM_FLEX wget -S --passive-ftp $DOWNLOAD_URL_RPM_1/$MYRPM_BISON wget -S --passive-ftp $DOWNLOAD_URL_RPM_LIBICONV/$MYRPM_LIBICONV wget -S --passive-ftp $DOWNLOAD_URL_RPM_1/$MYRPM_GCC wget -S --passive-ftp $DOWNLOAD_URL_RPM_1/$MYRPM_RPMBUILD wget -S --passive-ftp $DOWNLOAD_URL_RPM_1/$MYRPM_PERL # rpm -i でインストール rpm -i $MYRPM_FLEX rpm -i $MYRPM_BISON rpm -i $MYRPM_LIBICONV rpm -i $MYRPM_GCC rpm -i $MYRPM_RPMBUILD rpm -i $MYRPM_PERL
補足説明: 「パッケージファイル」について
ソフトが、インストールされていないとき、新たにインストールするために 「パッケージファイルを探してきて、適当なディレクトリにダウンロード」というのが一般的な手順である.
- rpmパッケージファイルはインストールされているOSに合うもの を選ぶ(Red Hat Linux 9の場合は*.i386.rpm, *.i586.rpm, *.i686.rpmなど)
 - rpm パッケージファイルは主に以下のサイトからダウンロードできる. rpmパッケージファイルをダウンロードする際、ソースファイル (*.src.rpm)ではないものを選ぶようにした (*.src.rpm はrpmコマンドのみではインストールできないので面倒になる と考えたので)。
 -  インストール法
ダウンロードしたディレクトリに移動して以下を実行
[root@localhost root]# rpm -i <パッケージファイル> <例> [root@localhost guest]# rpm -i imake-4.3.99.903-5.i686.rpm -  インストール時の注意点
-  「先に他のソフトがインストールされている必要があるソフト」もあるが、その場合は必要なソフトを先にインストールする
以下のようなエラーがでてきたら、必要なものを探してきて先にインストールする
[guest@localhost guest]$ rpm -i autoconf-2.59-2.2.0.ix86-debian3.0-openpkg.rpm 警告: autoconf-2.59-2.2.0.ix86-debian3.0-openpkg.rpm: V3 DSA signature: NOKEY, key ID 63c4cb9f エラー: Failed dependencies: OpenPKG is needed by autoconf-2.59-2.2.0 openpkg >= 2.2.0 is needed by autoconf-2.59-2.2.0 -  但し、互いに先にインストールする必要がある場合(Aをインストールする
にはBが必要で、BをインストールするにはAが必要)は"--nodeps"を
つけて実行する
例 [root@localhost root]# rpm -i --nodeps imake-4.3.99.903-5.i686.rpm
 -  ファイルの展開で既存ファイルがありエラーが出る場合は
"--replacefiles"を付けて実行する
例 [root@localhost root]# rpm -i --replacefiles imake-4.3.99.903-5.i686.rpm
 
 -  「先に他のソフトがインストールされている必要があるソフト」もあるが、その場合は必要なソフトを先にインストールする
 - 
    libiconvのrpmパッケージファイルで入っている Red Hat Linux version 9 に対応する
    は、次の URL からダウンロードしました。
http://www.samba.gr.jp/pub/samba-3.0-ja/RPMS/RedHat9/LIBICONV/
ここには libiconv以外のファイルはありませんでした。
 
(2) yum の設定
-  /etc/yum.repos.d/CentOS-Base.repo の設定
/etc/yum.repos.d/CentOS-Base.repo を設定します. 設定例は https://www.kkaneko.jp/tools/linux/CentOS-Base.repo にあります
上記の「設定例」を使用する場合
cd /etc/yum.repos.d mv CentOS-Base.repo CentOS-Base.repo.BAK wget https://www.kkaneko.jp/tools/linux/CentOS-Base.repo cat /etc/yum.repos.d/CentOS-Base.repo # baseurl の行を確認 (正しくダウンロードできたことの確認)
上記の「設定例」を使ったりせずに、1から手動で設定する場合
vi /etc/yum.repos.d/CentOS-Base.repo # baseurl の行をすべて書き換える
 -  yum の接続先を設定するソフトをパッケージからインストールしておく.
更新も自動で同時に行なわれる (1分ほど待つ).
yum install centos-yumconf yum install yum-plugin-fastestmirror # Is this ok [y/N] と聞いてきたら適切に回答する
 -  /etc/yum.conf を編集し「plugins=1」という行を付け加える
vi /etc/yum.conf # 「plugins=1」という行を付け加える
 -  /etc/yum.repos.d/CentOS-Base.repo
もし, /etc/yum.repos.d/CentOS-Base.rpmnew が存在したら、次の操作で、/etc/yum.repos.d/CentOS-Base.repo にコピーする
cd /etc/yum.repos.d ls # CentOS-Base.rpmnew が存在したら次のコマンドを実行 cp CentOS-Base.rpmnew CentOS-Base.repo
 -  RPMforge の設定
RPMforge が使えるように設定します.
Web ページ: http://rpmforge.net/user/packages/rpmforge-release/ から Red hat Linux Enterprise Linux 4 for i386 (64 ビットの場合に限り x86_64) の rpmforge-release-???.rpm (dag の方) をダウンロードして、インストールする (rpm -i コマンドを使うなど)
RPMForge は,現在,公開停止になっています
その後、/etc/yum.repos.d/rpmforge.repo の mirrorlist の行は次のように変更する
cd /etc/yum.repos.d vi rpmforge.repo # mirrorlist の行は次のように変更する (先頭の「#」が外れる) --- mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge ---
さらに、/etc/sysconfig/rhn/sources に次の行を付け加える
cd /etc/sysconfig/rhn vi sources # 次の1行を付け加える --- yum rpmforge https://apt.sw.be/redhat/el4/en/$ARCH/dag/ ---
- リポジトリ CentOS Extras の設定
 cd /etc/yum.repos.d wget http://centos.karan.org/kbsingh-CentOS-Extras.repo wget http://centos.karan.org/kbsingh-CentOS-Misc.repo
/etc/sysconfig/rhn/sources に次の2行を書き加える.
cd /etc/sysconfig/rhn vi sources # 次の2行を付け加える --- yum kb-centos-extras http://centos.karan.org/el4/extras/stable/$ARCH/RPMS yum kb-centos-misc http://centos.karan.org/el4/misc/stable/$ARCH/RPMS ---
- 非公式レポジトリ DAG の設定
 /etc/yum.repos.d/dag.repo を次のように設定しておきます.
[dag] name=Dag Repository for RedHat Enterprise Linux baseurl=http://ftp.riken.jp/Linux/dag/redhat/el$releasever/en/$basearch/dag/ gpgcheck=1 gpgkey=http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt enabled=0
上記の「設定例」を使用する場合
cd /etc/yum.repos.d mv dag.repo dag.repo.OLD wget https://www.kkaneko.jp/tools/linux/dag.repo cat /etc/yum.repos.d/dag.repo # 正しくダウンロードできたことの確認
【関連する外部ページ】 「Fedora Coreの非公式リポジトリをyumで利用するには」 http://www.atmarkit.co.jp/flinux/rensai/linuxtips/794uofrepo.html
- アップデート (yum を使用)
 下記の操作でアップデートを実施する (数分待ちます)
yum check-update yum -y update
(参考情報) サーバとして運用する予定が無ければ、アップデートの自動実行を設定(「chkconfig yum on ; /sbin/services yum start; 」)してもよいでしょう.
- /etc/ld.so.conf の編集
 /etc/ld.so.confを編集して、/usr/local/lib の1行を書き加える.
vi /etc/ld.so.conf # 次の1行を書き加える ----- /usr/local/lib -----
/etc/ld.so.confの編集が終ったら, ldconfig コマンドを実行する
/sbin/ldconfig
- 再起動し、エラーメッセージが出ないことの確認
 sync sync sync sync sync reboot
これで yum の設定は終りました.
 - リポジトリ CentOS Extras の設定
 
checkinstall のインストール
checkinstall をインストールする. checkinstall は、tarball から RPM パッケージを作ってくれるソフトです. 今後、わざわざ、自分の Linux バージョンに合致した RPMファイルを探して こなくても、「ソースファイルをダウンロード、コンパイルし、その後 RPM ファイルを作成して, その RPM を使ってインストールを行なう」ということができるようにします. (実は、ソースファイルはあっても、パッケージファイルが見つからない、と いうことはよくある)
checkinstall のインストールには gcc, rpm-build が必要です. 「gcc が無い」, 「rpm-buikd が無い」 ことが原因でエラーがもし出たら:
- GNOME デスクトップにおいて「アプリケーション」 - 「システム設定」 - 「アプリケーションの追加と削除」で, gcc, rpm-build の追加ができるの で心配無く.
 - あるいは「yum install gcc; yum install rpm-build」 でこれらをインストールしてもいいでしょう
 
【関連する外部ページ】「ソースファイルからRPMファイルを作成するには」 http://www.atmarkit.co.jp/flinux/rensai/linuxtips/530mkrpmfs.html
【関連する外部ページ】「checkinstall」 https://asic-linux.com.mx/~iztoc/heckinstall/download.php
インストール
下記のcheckinstall インストール用スクリプトを /bin/sh で実行 (次のコマンドを実行)
cd /tmp rm -f checkinstall.sh wget https://www.kkaneko.jp/tools/ubuntu/checkinstall.sh /bin/sh checkinstall.sh
checkinstall インストール用スクリプトの中身は次の通り
#!/bin/sh
cd /tmp
# checkinstall-1.6.0.tgz を入手してから続行する
rm -rf checkinstall-1.6.0
gtar -xvzof checkinstall-1.6.0.tgz
cd /tmp/checkinstall-1.6.0
make
mkdir /usr/local/sbin
make install
mkdir /usr/src/redhat
mkdir /usr/src/redhat/SOURCES/
/usr/local/sbin/checkinstall -R -y
cd /tmp
tar -cvzf /usr/src/redhat/SOURCES/checkinstall-1.6.0.tar.gz ./checkinstall-1.6.0
rpm -i /usr/src/redhat/RPMS/`/bin/arch | sed 's/686/386/g'`/checkinstall-1.6.0-1.`/bin/arch | sed 's/686/386/g`.rpm
checkinstall の使い方の例
checkinstall を使って、pkgconfig をインストールしてみました。
-----------------------------------------------------------------------
# tar -xvzf pkg-config-0.19.tar.gz
# cd pkg-config-0.19
# ./configure
# make
# checkinstall
   (省略)
The package documentation directory ./doc-pak does not exist.
Should I create a default set of package docs?  [y]: y
   (省略)
Please choose the packaging method you want to use.
Slackware [S], RPM [R] or Debian [D]? R
Please write a description for the package.
End your description with an empty line or EOF.
>>
This package will be built according to these values:
1 -  Summary: [ Package created with checkinstall 1.5.3 ]
2 -  Name:    [ pkgconfig ]
3 -  Version: [ 0.15.0 ]
4 -  Release: [ 1 ]
5 -  License: [ GPL ]
6 -  Group:   [ Applications/System ]
7 -  Architecture: [ i386 ]
8 -  Source location: [ pkgconfig-0.19.0 ]
9 -  Alternate source location: [  ]
10 - Provides: [ pkgconfig ]
Enter a number to change any of them or press ENTER to continue:
Enter キーを押す
   (省略)
**********************************************************************
 Done. The new package has been installed and saved to
 /usr/src/redhat/RPMS/i386/pkgconfig-0.19.0-1.i386.rpm
 You can remove it from your system anytime using:
      rpm -e pkgconfig-0.19.0-1
**********************************************************************
# rpm -qi pkgconfig
Name        : pkgconfig                    Relocations: (not relocateable)
Version     : 0.15.0                            Vendor: (none)
Release     : 1                             Build Date: 2004年12月15日 11時20分08秒
Install Date: 2004年12月15日 11時20分09秒      Build Host: testlinux.db.is.kyushu-u.ac.jp
Group       : 開発/ツール                   Source RPM: pkgconfig-0.19.0-1.src.rpm
Size        : 136595                           License: GPL
mSignature   : (none)
Packager    : checkinstall-1.6.0
Summary     : コンパイルオプションを決定するツール
Description :
pkgconfig ツールはコンパイルオプションを決定します.必須の各ライブラリについて、
設定ファイルを読み込み、必要なコンパイラフラグとリンカフラグ
を出力します.
-----------------------------------------------------------------------
(注)
# checkinstall
でインストールできるのは、
# make install
コマンドでインストールするようなソフトです.
# make install_packages
など、別のコマンドが指定されている場合は、
# checkinstall make install_packages
などとします.
(README 参照)
(オプション) 日本語関係
Linux の種類によって日本語関係の設定方法が変わってくるため、簡単に説明 することはできません。下記は、日本語関係の設定のヒントとして Cent OS 4.3 で Anthy + uim のインストールと設定を行なう手順を示している.
-  Anthy, uim をインストールする.
下記のインストール用スクリプトを /bin/sh で実行 (次のコマンドを実行)
cd /tmp rm -f anthy.sh wget https://www.kkaneko.jp/tools/ubuntu/anthy.sh /bin/sh anthy.sh
インストール用スクリプトの中身は次の通り
#!/bin/sh cd /tmp # uim-1.0.1.tar.gz を入手してから続行する rm -rf uim-1.0.1 gtar -xvzof uim-1.0.1.tar.gz cd /tmp/uim-1.0.1 ./configure make /usr/local/sbin/checkinstall -R -y cd /tmp tar -cvzf /usr/src/redhat/SOURCES/uim-1.0.1.tar.gz ./uim-1.0.1 rpm -i /usr/src/redhat/RPMS/`/bin/arch | sed 's/686/386/g`/uim-1.0.1-1.`/bin/arch | sed 's/686/386/g`.rpm cd /tmp # anthy-7500.tar.gz を入手してから続行する rm -rf anthy-7500 gtar -xvzof anthy-7500.tar.gz cd /tmp/anthy-7500 ./configure make /usr/local/sbin/checkinstall -R -y cd /tmp tar -cvzf /usr/src/redhat/SOURCES/anthy-7500.tar.gz ./anthy-7500 rpm -i /usr/src/redhat/RPMS/`/bin/arch | sed 's/686/386/g`/anthy-7500-1.`/bin/arch | sed 's/686/386/g`.rpm
 - 
その後, いくつかのパッケージをインストールする
yum install anthy anthy-el uim uim-anthy uim-gnome uim-gtk2
 - 
.emacs ファイル(無ければ作る)に、次の1行を入れる
cd vi .emacs # 次の1行を入れる (set-input-method "japanese-anthy")
 - 
入力メソッドの選択を行なう
/usr/sbin/alternatives --config xinput-ja_JP # 「uim」の番号を入れる
 - 
iiim, canna は明示的に停止しておく
なお、上記の手順に従ってインストールしたときは iiim, canna が元から入っていないので、下記のコマンドを実行するとエラー が出ます (念のためじっこうしておく).
/sbin/service iiim stop /sbin/chkconfig iiim off /sbin/service canna stop /sbin/chkconfig canna off
 - 
設定を行なう
uim-toolbar-gtk &
 
基本ツール, ライブラリのインストール
下記にリストアップしたソフトのインストールを行なう (サーバ設定の下準備を兼ねる)
- autogen-5.8
 - flex-2.5.4a
 - gcc-3.4.5
 - zlib-1.2.3
 - libpng-1.2.8
 - jpegsrc.v6b
 - gd-2.0.33
 - patch-2.5.4
 - readline-4.2a
 - bison-1.875d
 - libpcre-6.3
 - libiconv-1.9.2
 - m4-1.4.3
 - autoconf-2.59
 - automake-1.9.5
 - binutils-2.16.1
 - gettext-0.14.4
 - libtool-1.5.22
 - make-3.80
 - texinfo-4.8
 - beecrypt-4.0.0
 - readline-5.0
 - gdb-6.4
 
以下, (1) gcc 等のインストール, (2) ライブラリ等のインストール, (3) その他のツール、ライブラリ類のインストールの順で、実行すべきコマンドの手順を書いている.
この (1), (2), (3) で実行すべきコマンドは, まとめて 1つのファイル (https://www.kkaneko.jp/tools/linux/scripts/inst1.sh) にしており, 下記の手順で一括実行できる.
cd /tmp rm -f inst1.sh wget https://www.kkaneko.jp/tools/linux/scripts/inst1.sh sh inst1.sh
なお, (1), (2), (3) のコマンドを実行するための所要時間は, 1, 2 時 間程度が予想されます.
(1) gcc 等のインストール
ソースファイルのダウンロード、コンパイル、checkinstall コマンドで RPM ファイルの作成、作成された RPM ファイルを使ってのイン ストール(rpm -i コマンド)を使用という手順をとります.
もし、同じソフト(バージョンは違うかも知れない)がインストール済みのと き、rpm -i の時点で、エラーが出ることがあります> これは OS のインストー ル時点で、いろいろとパッケージをインストールため. rpm -i の時点でのエ ラーは無視することにします.
下記のスクリプトを作成して /bin/sh で実行
#!/bin/sh
# 変数 ARCH を適切に設定してください
LANG=C
ARCH=i686-pc-linux-gnu
# ソースファイルのダウンロード先、ソースファイル名を指定している.
DOWNLOAD_URL_GNU_SRC=https://www.kkaneko.jp/computer/src/gnu
MYSRC_GNU1="autogen-5.8.tar.gz \
flex-2.5.4a.tar.gz \
gcc-core-3.4.5.tar.gz \
gcc-3.4.5.tar.gz \
patch-2.5.4.tar.gz"\
emacs-21.3.tar.gz \
leim-21.3.tar.gz'
#
# 作業手順 
#
cd /tmp
# Download Source Files
echo Download...
for i in `echo $MYSRC_GNU1`;
  do ( wget -S --passive-ftp $DOWNLOAD_URL_GNU_SRC/$i );
done
# Install
cd /tmp
# autogen
cd /tmp
rm -rf autogen-5.8
tar -xvzf autogen-5.8.tar.gz
cd autogen-5.8
./configure
make
/usr/local/sbin/checkinstall -R -y
rpm -i /usr/src/redhat/RPMS/`/bin/arch | sed 's/686/386/g`/autogen-5.8-1.`/bin/arch | sed 's/686/386/g`.rpm
cd /tmp
tar -cvzf /usr/src/redhat/SOURCES/autogen-5.8.tar.gz ./autogen-5.8
# flex
cd /tmp
rm -rf flex-2.5.4
tar -xvzf flex-2.5.4a.tar.gz
cd flex-2.5.4
./configure
make
/usr/local/sbin/checkinstall -R -y
rpm -i /usr/src/redhat/RPMS/`/bin/arch | sed 's/686/386/g`/flex-2.5.4-1.`/bin/arch | sed 's/686/386/g`.rpm
cd /tmp
tar -cvzf /usr/src/redhat/SOURCES/flex-2.5.4.tar.gz ./flex-2.5.4
# gcc
cd /tmp
rm -rf gcc-3.4.5
tar -xvzf gcc-3.4.5.tar.gz
cd gcc-3.4.5
./configure --prefix=/usr/local --enable-languages="c,c++" --mandir=/usr/local/share/man --infodir=/usr/local/share/info --enable-shared --enable-threads=posix --disable-checking --with-system-zlib --enable-__cxa_atexit --host=$ARCH
make bootstrap
/usr/local/sbin/checkinstall -R -y
rpm -i /usr/src/redhat/RPMS/`/bin/arch | sed 's/686/386/g`/gcc-3.4.5-1.`/bin/arch | sed 's/686/386/g`.rpm
cd /tmp
tar -cvzf /usr/src/redhat/SOURCES/gcc-3.4.5.tar.gz ./gcc-3.4.5
# patch-2.5.4.tar.gz
cd /tmp
rm -rf patch-2.5.4
tar -xvzf patch-2.5.4.tar.gz
cd patch-2.5.4
./configure --host=$ARCH
make
/usr/local/sbin/checkinstall -R -y
rpm -i /usr/src/redhat/RPMS/`/bin/arch | sed 's/686/386/g`/patch-2.5.4-1.`/bin/arch | sed 's/686/386/g`.rpm
cd /tmp
tar -cvzf /usr/src/redhat/SOURCES/patch-2.5.4.tar.gz ./patch-2.5.4
(2) ライブラリ等のインストール
下記のスクリプトを作成して /bin/sh で実行
#!/bin/sh
# 変数 ARCH を適切に設定してください
LANG=C
ARCH=i686-pc-linux-gnu
# ソースファイルのダウンロード先、ソースファイル名を指定している.
DOWNLOAD_URL_SRC=https://www.kkaneko.jp/computer/src/toollib
# execute ./configure, make, checkinstall -R -y in this order
MYSRC_LIBS="zlib-1.2.3.tar.gz \
libpng-1.2.8.tar.gz \
jpegsrc.v6b.tar.gz \
gd-2.0.33.tar.gz \
nkf206a.tar.gz"
#
# 作業手順 
#
cd /tmp
# Download Source Files
echo Download...
for i in `echo $MYSRC_LIBS`;
  do ( wget -S --passive-ftp $DOWNLOAD_URL_SRC/$i );
done
# Install
# zlib
cd /tmp
rm -rf zlib-1.2.3
tar -xvzf zlib-1.2.3.tar.gz
cd zlib-1.2.3
./configure --shared
make
/usr/local/sbin/checkinstall -R -y
rpm -i /usr/src/redhat/RPMS/`/bin/arch | sed 's/686/386/g`/zlib-1.2.3-1.`/bin/arch | sed 's/686/386/g`.rpm
cd /tmp
tar -cvzf /usr/src/redhat/SOURCES/zlib-1.2.3.tar.gz ./zlib-1.2.3
# libpng
cd /tmp
rm -rf libpng-1.2.8
tar -xvzf libpng-1.2.8.tar.gz
cd libpng-1.2.8
cp scripts/makefile.linux Makefile
make
make test
/usr/local/sbin/checkinstall -R -y
rpm -i /usr/src/redhat/RPMS/`/bin/arch | sed 's/686/386/g`/libpng-1.2.8-1.`/bin/arch | sed 's/686/386/g`.rpm
cd /tmp
tar -cvzf /usr/src/redhat/SOURCES/libpng-1.2.8.tar.gz ./libpng-1.2.8
# jpeg-6b
cd /tmp
rm -rf jpeg-6b
tar -xvzf jpegsrc.v6b.tar.gz
cd jpeg-6b
./configure --enable-shared --enable-static CC='gcc'
make
make test
/usr/local/sbin/checkinstall -R -y
rpm -i /usr/src/redhat/RPMS/`/bin/arch | sed 's/686/386/g`/jpeg-6b-1.`/bin/arch | sed 's/686/386/g`.rpm
make install-lib
cd /tmp
tar -cvzf /usr/src/redhat/SOURCES/jpeg-6b.tar.gz ./jpeg-6b
# gd
cd /tmp
rm -rf gd-2.0.33
tar -xvzf gd-2.0.33.tar.gz
cd gd-2.0.33
./configure
make CC="gcc -I/usr/local/include"
/usr/local/sbin/checkinstall -R -y
rpm -i /usr/src/redhat/RPMS/`/bin/arch | sed 's/686/386/g`/gd-2.0.33-1.`/bin/arch | sed 's/686/386/g`.rpm
cd /tmp
tar -cvzf /usr/src/redhat/SOURCES/gd-2.0.33.tar.gz ./gd-2.0.33
# nkf
cd /tmp
rm -rf nkf206
tar -xvzf nkf206a.tar.gz
cd nkf206
make
/usr/local/sbin/checkinstall -R -y
rpm -i /usr/src/redhat/RPMS/`/bin/arch | sed 's/686/386/g`/nkf206-1.`/bin/arch | sed 's/686/386/g`.rpm
cp nkf /usr/local/bin/nkf
chmod 755  /usr/local/bin/nkf
cd /tmp
tar -cvzf /usr/src/redhat/SOURCES/nkf206a.tar.gz ./nkf206
(3) ツール、ライブラリ類のインストール
下記のスクリプトを作成して /bin/sh で実行
#!/bin/sh
# 変数 ARCH を適切に設定してください
LANG=C
ARCH=i686-pc-linux-gnu
# ソースファイルのダウンロード先、ソースファイル名を指定している.
DOWNLOAD_URL_GNU_SRC=https://www.kkaneko.jp/computer/src/gnu
# execute ./configure, make, checkinstall -R -y in this order
MYSRC_GNU2="bison-1.875d.tar.gz \
libpcre-6.3.tar.gz \
libiconv-1.9.2.tar.gz \
m4-1.4.3.tar.gz \
autoconf-2.59.tar.gz \
automake-1.9.5.tar.gz \
binutils-2.16.1.tar.gz \
gettext-0.14.4.tar.gz \
libtool-1.5.22.tar.gz \
make-3.80.tar.gz \
texinfo-4.8.tar.gz \
beecrypt-4.0.0.tar.gz \
readline-5.0.tar.gz \
gdb-6.4.tar.gz"\
gdb-5.3.tar.gz
#
# 作業手順 
#
cd /tmp
# Download Source Files
echo Download...
for i in `echo $MYSRC_GNU2`;
  do ( wget -S --passive-ftp $DOWNLOAD_URL_GNU_SRC/$i );
done
# Install
cd /tmp
# GNU softwares
cd /tmp
for i in `echo $MYSRC_GNU2`;
  do ( rm -rf /tmp/`basename $i .tar.gz`; tar -xvzf $i; \
    cd /tmp/`basename $i .tar.gz`; \
    ./configure; \
    make; \
    /usr/local/sbin/checkinstall -R -y ); 
    rpm -i /usr/src/redhat/RPMS/`/bin/arch | sed 's/686/386/g`/`basename $i .tar.gz`-1.`/bin/arch | sed 's/686/386/g`.rpm
    cd /tmp
    tar -cvzf /usr/src/redhat/SOURCES/`basename $i .tar.gz`.tar.gz ./`basename $i .tar.gz`
done
その他のツール, ライブラリのインストール
引続き、インストールを続ける.
#!/bin/sh
# 変数 ARCH を適切に設定してください
LANG=C
ARCH=i686-pc-linux-gnu
# ソースファイルのダウンロード先、ソースファイル名を指定している.
DOWNLOAD_URL_SRC=https://www.kkaneko.jp/computer/src/toollib
MYSRC_BASE=' \
expat-1.95.8.tar.gz \
freetype-2.1.10.tar.gz \
newlib-1.14.0.tar.gz'
MYSRC_BASE2=' \
fontconfig-2.3.2.tar.gz \
tcl-8.4.11.tar.gz \
tk-8.4.11.tar.gz'
cd /tmp
# Download Source Files
echo Download...
for i in `echo $MYSRC_BASE`;
  do ( wget -S --passive-ftp $DOWNLOAD_URL_SRC/$i );
done
for i in `echo $MYSRC_BASE2`;
  do ( wget -S --passive-ftp $DOWNLOAD_URL_SRC/$i );
done
# other basic softwares
cd /tmp
for i in `echo $MYSRC_BASE`;
  do ( rm -rf /tmp/`basename $i .tar.gz`; tar -xvzf $i; \
    cd /tmp/`basename $i .tar.gz`; \
    ./configure; \
    make; \
    /usr/local/sbin/checkinstall -R -y ); 
    rpm -i /usr/src/redhat/RPMS/`/bin/arch | sed 's/686/386/g`/`basename $i .tar.gz`-1.`/bin/arch | sed 's/686/386/g`.rpm
    cd /tmp
    tar -cvzf /usr/src/redhat/SOURCES/`basename $i .tar.gz`.tar.gz ./`basename $i .tar.gz`
done
# fontconfig-2.3.2.tar.gz
cd /tmp
rm -rf fontconfig-2.3.2
tar -xvzf fontconfig-2.3.2.tar.gz
cd fontconfig-2.3.2
./configure --disable-docs
make
echo "all:" > doc/Makefile
echo "    echo " >> doc/Makefile
echo "install:" >> doc/Makefile
echo "    echo " >> doc/Makefile
/usr/local/sbin/checkinstall -R -y
rpm -i /usr/src/redhat/RPMS/`/bin/arch | sed 's/686/386/g`/fontconfig-2.3.2-1.`/bin/arch | sed 's/686/386/g`.rpm
cd /tmp
tar -cvzf /usr/src/redhat/SOURCES/fontconfig-2.3.2.tar.gz ./fontconfig-2.3.2
# tcl-8.4.11.tar.gz
cd /tmp
rm -rf cd tcl8.4.11
tar -xvzf tcl-8.4.11.tar.gz
cd tcl8.4.11
cd unix
./configure
make
cd ..
mv unix tcl-8.4.11
ln -s tcl-8.4.11 unix
cd tcl-8.4.11
/usr/local/sbin/checkinstall -R -y
rpm -i /usr/src/redhat/RPMS/`/bin/arch | sed 's/686/386/g`/tcl-8.4.11-1.`/bin/arch | sed 's/686/386/g`.rpm
cd /tmp
tar -cvzf /usr/src/redhat/SOURCES/tcl-8.4.11.tar.gz ./tcl-8.4.11
# tk-8.4.11.tar.gz
cd /tmp
rm -rf tk8.4.11
tar -xvzf tk-8.4.11.tar.gz
cd tk8.4.11
cd unix
./configure
make
cd ..
mv unix tk-8.4.11
ln -s tk-8.4.11 unix
cd tk-8.4.11
/usr/local/sbin/checkinstall -R -y
rpm -i /usr/src/redhat/RPMS/`/bin/arch | sed 's/686/386/g`/tk-8.4.11-1.`/bin/arch | sed 's/686/386/g`.rpm
cd /tmp
tar -cvzf /usr/src/redhat/SOURCES/tk-8.4.11.tar.gz ./tk-8.4.11
# emacs, leim
cd /tmp
rm -rf emacs-21.3
gtar -xvzf emacs-21.3.tar.gz
gtar -xvzf leim-21.3.tar.gz
cd emacs-21.3
./configure  --with-gcc --with-mule --with-xll --with-site-lisp --with-xfs  --with-xim  --with-xpm --with-jpeg --with-tiff --with-giff --with-png
make
/usr/local/sbin/checkinstall -R -y
rpm -i /usr/src/redhat/RPMS/`/bin/arch | sed 's/686/386/g`/emacs-21.3-1.`/bin/arch | sed 's/686/386/g`.rpm
cd /tmp
tar -cvzf /usr/src/redhat/SOURCES/emacs-21.3.tar.gz ./emacs-21.3
「何台もインストールしたい」という場合について。 1台目のインストール を終えた時に /usr/src/redhat/RPMS/i386 というような名前のディレクトリ に RPM 形式の「パッケージファイル」ができているので、ここにある 「パッ ケージファイル」を、2台目以降 のコンピュータにコピーして、「rpm -i <「パッケージファイル名」>」という 手順になる.
補足説明: どうしても「パッケージファイル」からインストールしたいときの手順
ここでは、各種ツール, ライブラリを、「パッケージファイル」からインストー ルする手順を説明している. すでに、上記の手順でインストールが済んでいるなら、ここは飛ばして、 「CPU シミュレータ bsvc」に進んで下さい。
すでに手元に「パッケージファイル」がある、というようなときは、上記の手 順では無くて、「パッケージファイル」からインストールしてもよいでしょう。
すでにインストール済みかを調べる
LINUX のインストール時に自動でインストールされるものがあるので、まず、インストールされているかを調べ、 インストールされていなければ、手動でインストールするという手順を踏みます.
インストールされているかを調べるには、 「rpm -qi expat」のように「rpm -qi <パッケージ名>」を実行します
-   「インストール済みかを調べる」手順
LANG=C PRESOFTS="expat freetype fontconfig libgcj gettext libiconv newlib rpm apt autoconf automake binutils bison checkinstall flex gdb libtool make patch texinfo m4 perl g++ tcl tk emacs" echo "Software List" for i in `echo $PRESOFTS`; do ( rpm -qi $i | grep "Name" | awk '{print $3}'; rpm -qi $i | grep "Version" | awk '{print " " $3}' ); done 
「パッケージファイル」をダウンロードし、インストール
「パッケージファイル」を使ったインストールの手順を説明する. RPM ファイルを探して、 ダウンロードし、 「rpm -i <パッケージファイル名>」でインストールするという手順になる.
freetype, fontconfig, libgcj, rpm, m4, emacs, emacs-el, emacs-leim, automake, autoconf, binutils, gettext, libtool, make, texinfo, gdb, perl, tcl, tk については、 http://fr2.rpmfind.net/linux/RPM/index.htmlなどで、 簡単に見つかります。 これ以外のソフトについては、ソースファイルからコンパイルすることになり ます(該当は newlib)。
これも、次のようなシェルス クリプトを作って実行させることにした。 これは、RedHat バージョン9 用です. もし他の linux で使う時は、 DOWNLOAD_URL_RPM_2, MYRPM_SOFT2 を適切に設定して下さい。
#
# 設定
#
# RedHat Linux 9 用の設定です
# DOWNLOAD_URL_RPM_2, MYRPM_SOFT2 を適切に設定して下さい。残りはそのままでも動くと思います
#     DOWNLOAD_URL_RPM_22: RPM のダウンロード先
#     MYRPM_SOFT2 : インストールしたい RPM のリスト
# RedHat Linux 9 用
DOWNLOAD_URL_RPM_2=ftp://fr2.rpmfind.net/linux/redhat/9/en/os/i386/RedHat/RPMS
MYRPM_SOFT2="expat-1.95.5-2.i386.rpm \
freetype-2.1.3-6.i386.rpm \
fontconfig-2.1-9.i386.rpm \
libgcj-3.2.2-5.i386.rpm \
rpm-4.2-0.69.i386.rpm \
m4-1.4.1-13.i386.rpm \
emacs-21.2-33.i386.rpm \
emacs-el-21.2-33.i386.rpm \
emacs-leim-21.2-33.i386.rpm \
automake-1.6.3-5.noarch.rpm \
autoconf-2.57-3.noarch.rpm \
binutils-2.13.90.0.18-9.i386.rpm \
gettext-0.11.4-7.i386.rpm \
libtool-1.4.3-5.i386.rpm \
make-3.79.1-17.i386.rpm \
patch-2.5.4-16.i386.rpm \
texinfo-4.3-5.i386.rpm \
gdb-5.3post-0.20021129.18.i386.rpm \
perl-5.8.0-88.i386.rpm \
tcl-8.3.5-88.i386.rpm \
tk-8.3.5-88.i386.rpm"
#
# 作業手順 
#
LANG=C
cd /tmp
# RPM ファイルをダウンロード
echo Download...
for i in `echo $MYRPM_SOFT2`;
  do ( wget -S --passive-ftp $DOWNLOAD_URL_RPM_2/$i );
done
# インストール済のソフトを確認
for i in `echo $MYRPM_SOFT2`;
  do ( rpm -qi `basename $i .i386.rpm` | grep "Name" | awk '{print $3}'; rpm -qi `basename $i .i386.rpm` | grep   "Version" | awk '{print "  " $3}' );
done
# rpm -i でインストール
echo Install...
for i in `echo $MYRPM_SOFT2`;
# rpm -i でインストール
  do ( rpm -i $i )
done
newlib をソースファイルからコンパイル、インストール
残りの作業は、newlib のインストールです.
これらは、RedHat Linux 9 の「パッケージファイル」が無かったので、 ソースファイルをダウンロード、コンパイルし、checkinstall を使ってインストールし ます.
これも、次のようなシェルス クリプトを作って実行させることにした。 これは、RedHat バージョン9 で動作確認しました。他の Linux でも、そのま ま動くと思います.
#
# 設定
#
# ソースファイルのダウンロード先、ソースファイル名を指定している.
# 問題が無ければ、このままで良いでしょう。
DOWNLOAD_URL_SRC=https://www.kkaneko.jp/computer/src/toollib
# DOWNLOAD_URL_GNU_SRC=https://www.kkaneko.jp/computer/src/gnu
MYSRC_NEWLIB="newlib-1.14.0.tar.gz "
#
# 作業手順 
#
LANG=C
cd /tmp
# ソースファイルをダウンロード
wget -S --passive-ftp $DOWNLOAD_URL_SRC/$MYSRC_NEWLIB
# インストール済のソフトを確認
rpm -qi `basename $MYSRC_NEWLIB .tar.gz`    | grep "Name" | awk '{print $3}'
rpm -qi `basename $MYSRC_NEWLIB .tar.gz`    | grep   "Version" | awk '{print "  " $3}'
# インストール
cd /tmp
rm -rf `basename $MYSRC_NEWLIB .tar.gz`
tar -xvzf $MYSRC_NEWLIB
cd `basename $MYSRC_NEWLIB .tar.gz`
./configure
./etc/configure
make
/usr/local/sbin/checkinstall -R -y
68000 クロス開発環境
次に、GNU binutils, gcc, newlib, gdb を使って、68000 クロス開 発環境を作りま す。 binutils, gcc, newlib, gdb の順でインストールする. configure のオプションは、「./configure --prefix=/usr/local --target=m68k-coff」のようにして、その後、make, make install します.
DOWNLOAD_URL_SRC=https://www.kkaneko.jp/computer/src/toollib DOWNLOAD_URL_GNU_SRC=https://www.kkaneko.jp/computer/src/gnu # binutils-2.16.1.tar.gz cd /tmp wget -S --passive-ftp $DOWNLOAD_URL_GNU_SRC/binutils-2.16.1.tar.gz rm -rf binutils-2.16.1 tar -xvzf binutils-2.16.1.tar.gz cd binutils-2.16.1 ./configure --prefix=/usr/local --target=m68k-coff make make install # gcc-core-3.4.5.tar.gz cd /tmp wget -S --passive-ftp $DOWNLOAD_URL_GNU_SRC/gcc-core-3.4.5.tar.gz rm -rf gcc-3.4.5 tar -xvzf gcc-core-3.4.5.tar.gz cd gcc-3.4.5 ./configure --prefix=/usr/local --enable-languages="c" --target=m68k-coff make make install # gcc-core-2.95.3.tar.gz cd /tmp wget -S --passive-ftp $DOWNLOAD_URL_GNU_SRC/gcc-core-2.95.3.tar.gz rm -rf gcc-2.95.3 tar -xvzf gcc-core-2.95.3.tar.gz cd gcc-2.95.3 ./configure --prefix=/usr/local --enable-languages="c" --target=m68k-coff --host=i686-pc-linux-gnu --with-newlib make make install # newlib-1.9.0.tar.gz cd /tmp wget -S --passive-ftp $DOWNLOAD_URL_SRC/newlib-1.9.0.tar.gz rm -rf newlib-1.9.0 rm -rf newlib-m68k tar -xvzf newlib-1.9.0.tar.gz mkdir newlib-m68k cd newlib-m68k ../newlib-1.9.0/configure --prefix=/usr/local --target=m68k-coff make make install # gdb-5.3.tar.gz cd /tmp wget -S --passive-ftp $DOWNLOAD_URL_GNU_SRC/gdb-5.3.tar.gz rm -rf gdb-5.3 tar -xvzf gdb-5.3.tar.gz cd gdb-5.3 ./configure --prefix=/usr/local --target=m68k-coff make make install # binutils-2.16.1.tar.gz cd /tmp wget -S --passive-ftp $DOWNLOAD_URL_GNU_SRC/binutils-2.16.1.tar.gz rm -rf binutils-2.16.1 tar -xvzf binutils-2.16.1.tar.gz cd binutils-2.16.1 ./configure --prefix=/usr/local --target=m68k-coff --with-headers=../newlib-1.9.0/newlib/libc/include --with-newlib make make install # gcc-3.4.5.tar.gz with newlib # これは未チェック cd /tmp wget -S --passive-ftp $DOWNLOAD_URL_GNU_SRC/gcc-core-3.4.5.tar.gz rm -rf gcc-3.4.5 tar -xvzf gcc-core-3.4.5.tar.gz cd gcc-3.4.5 ./configure --prefix=/usr/local --enable-languages="c" --target=m68k-coff --with-headers=../newlib-1.9.0/newlib/libc/include --with-newlib make make install # gcc-2.95.3.tar.gz with newlib # これは未チェック cd /tmp # wget -S --passive-ftp $DOWNLOAD_URL_GNU_SRC/gcc-core-2.95.3.tar.gz rm -rf gcc-2.95.3 tar -xvzf gcc-core-2.95.3.tar.gz cd gcc-2.95.3 ./configure --prefix=/usr/local --enable-languages="c" --target=m68k-coff --with-headers=../newlib-1.9.0/newlib/libc/include --with-newlib --host=i686-pc-linux-gnu make make install
68000 開発環境 RTEMS
68000 開発環境として RTEMS をインストールする. これは、RPM ファイルを ダウンロードし、 「rpm -i <パッケージファイル名>」でインストールするという手順になる.
-  参考 サイト
        
- RTEMS Web ページ https://www.rtems.com/index.php
 - ダウンロード先: ftp://ftp.rtems.com/pub/rtems/linux/redhat/7.3/i386/rpms/rtems-4.6
 - ftp://ftp.rtems.com/pub/rtems/snapshots/c_tools/source/
 - http://www.rtems.com/onlinedocs/releases/rtemsdocs-4.6.2/share/rtems/html/started/index.html
 
 
上記サイトより以下のファイルをダウンロードして、インストールすることに なる.
rtems-4.6-apt-conf-0.0-0.noarch.rpm rtems-4.6-autoconf-rtems-2.59-0.noarch.rpm rtems-4.6-automake-rtems-1.7.2-2.noarch.rpm rtems-4.6-rtems-base-binutils-2.13.2.1-2.i686.rpm rtems-4.6-m68k-rtems-binutils-2.13.2.1-2.i686.rpm rtems-4.6-rtems-base-gcc-gcc3.2.3newlib1.11.0-4.i686.rpm rtems-4.6-m68k-rtems-gcc-gcc3.2.3newlib1.11.0-4.i686.rpm rtems-4.6-m68k-rtems-c++-gcc3.2.3newlib1.11.0-4.i686.rpm rtems-4.6-rtems-base-gdb-5.2-1.i686.rpm rtems-4.6-m68k-rtems-gdb-5.2-1.i686.rpm
手順
インストールの手順は、次のようになる.
-  次のページを用いる
https://www.rtems.com/index.php
(検索条件)
- RTEMS Version: 4.6.2
 - Target CPU Family: m68k, cpu32, coldfire
 - Development Host: GNU/Linux x86
 
rtems-4.6-rtems-base-binutils-2.13.2.1-2.i686.rpm rtems-4.6-m68k-rtems-binutils-2.13.2.1-2.i686.rpm rtems-4.6-rtems-base-gcc-gcc3.2.3newlib1.11.0-4.i386.rpm rtems-4.6-m68k-rtems-gcc-gcc3.2.3newlib1.11.0-4.i686.rpm rtems-4.6-m68k-rtems-c++-gcc3.2.3newlib1.11.0-4.i686.rpm rtems-4.6-rtems-base-gdb-5.2-1.i686.rpm rtems-4.6-m68k-rtems-gdb-5.2-1.i686.rpm
 -  インストール (rpm -i を使用)
/opt にインストールされるので、/opt を避けたいなら 「ln -s /usr/local /opt」を前もって実行しておく。これも、次のようなシェルス クリプトを作って実行させることにした。 これは、RedHat バージョン9 用です. もし他の linux で使う時は、 DOWNLOAD_URL_RPM_RTEMS, MYRPM_RTEMS を適切に設定して下さい。
# # 設定 # # RedHat Linux 9 用の設定です # DOWNLOAD_URL_RPM_RTEMS, MYRPM_RTEMS を適切に設定して下さい。残りはそのままでも動くと思います # DOWNLOAD_URL_RPM_RTEMS: RPM のダウンロード先 # MYRPM_RTEMS : インストールしたい RPM のリスト # RedHat Linux 9 用 DOWNLOAD_URL_RPM_RTEMS=https://www.kkaneko.jp/computer/linux/redhat/7.3/i386/RedHat/RPMS # DOWNLOAD_URL_RPM_RTEMS=ftp://ftp.rtems.com/pub/rtems/linux/redhat/7.3/i386/rpms/rtems-4.6 MYRPM_RTEMS="rtems-4.6-apt-conf-0.0-0.noarch.rpm \ rtems-4.6-autoconf-rtems-2.59-0.noarch.rpm \ rtems-4.6-automake-rtems-1.7.2-2.noarch.rpm \ rtems-4.6-rtems-base-binutils-2.13.2.1-2.i686.rpm \ rtems-4.6-m68k-rtems-binutils-2.13.2.1-2.i686.rpm \ rtems-4.6-rtems-base-gcc-gcc3.2.3newlib1.11.0-4.i686.rpm \ rtems-4.6-m68k-rtems-gcc-gcc3.2.3newlib1.11.0-4.i686.rpm \ rtems-4.6-m68k-rtems-c++-gcc3.2.3newlib1.11.0-4.i686.rpm \ rtems-4.6-rtems-base-gdb-5.2-1.i686.rpm \ rtems-4.6-m68k-rtems-gdb-5.2-1.i686.rpm " # # 作業手順 # LANG=C cd /tmp # Download echo Download... for i in `echo $MYRPM_RTEMS`; do ( wget -S --passive-ftp $DOWNLOAD_URL_RPM_RTEMS/$i ); done # Install ln -s /usr/local /opt echo Install... for i in `echo $MYRPM_RTEMS`; do ( rpm -i $i ) done
 
CPU シミュレータ bsvc
CPU シミュレータ bsvc をインストールする. ソースファイルをダウンロード、コンパイルし、checkinstall を使ってインストールする.
-  参考 サイト
        
- ftp://ftp.redlinelabs.com/pub/bsvc/
 - http://www4.ncsu.edu/~bwmott/www/bsvc/distributions/bsvc-2.1-src.tar.gz
 - bsvc-2.1-src.tar.gz
 
 
インストール上の注意点
RedHat 9 では、bsvc のソースファイルは、そのままではコンパイル できません。変更が3箇所あります.
-  「(void*)」 を外す (1箇所)
/usr/local/bsvc/src/Tools/xtermpipe/xtermpipe.cxx -  「extern "C" { int kill(pid_t pid, int sig); };」を入れる (2箇所)
/usr/local/bsvc/src/sim68000/devices/M68681.cxx, /usr/local/bsvc/src/sim68360/devices/M68681.cxx 
インストール手順
bsvc をコンパイルするのに、gcc バージョン3 よりも gcc バージョン 2 の 方が便利のようなので、下記の手順で、gcc バージョン3 を消して、 gcc バージョ ン 2 をインストールしている.
#
# 設定
#
# ソースファイルのダウンロード先、ソースファイル名を指定している.
# 問題が無ければ、このままで良いでしょう。
DOWNLOAD_URL_JIKKEN_SRC=https://www.kkaneko.jp/~kaneko/as/jikken/src
MYSRC_BSVC=bsvc-2.1-src.tar.gz
DOWNLOAD_URL_GNU_SRC=https://www.kkaneko.jp/pub/FreeBSD/ports/distfiles
MYSRC_GCC2=gcc-2.95.3.tar.bz2
#
# 作業手順 
#
LANG=C
ARCH=i686-pc-linux-gnu
#ARCH=i386-redhat-linux
cd /tmp
# ソースファイルをダウンロード
wget -S --passive-ftp $DOWNLOAD_URL_JIKKEN_SRC/$MYSRC_BSVC
wget -S --passive-ftp $DOWNLOAD_URL_GNU_SRC/$MYSRC_GCC2
# インストール済のソフトを確認
rpm -qi `basename $MYSRC_BSVC .tar.gz`    | grep "Name" | awk '{print $3}'
rpm -qi `basename $MYSRC_BSVC .tar.gz`    | grep   "Version" | awk '{print "  " $3}'
rpm -qi `basename $MYSRC_GCC2 .tar.gz`    | grep "Name" | awk '{print $3}'
rpm -qi `basename $MYSRC_GCC2 .tar.gz`    | grep   "Version" | awk '{print "  " $3}'
# gcc-2.95.3 package のインストール
cd /tmp
rm -rf `basename $MYSRC_GCC2 .tar.bz2`
tar -xvjf $MYSRC_GCC2
cd `basename $MYSRC_GCC2 .tar.bz2`
./configure --prefix=/usr/local --enable-languages="c,c++" \
    --mandir=/usr/local/share/man --infodir=/usr/local/share/info --enable-shared --enable-threads=posix --disable-checking --with-system-zlib --enable-__cxa_atexit --host=$ARCH
cd `basename $MYSRC_GCC2 .tar.bz2`/texinfo
make
cd `basename $MYSRC_GCC2 .tar.bz2`;
make bootstrap
checkinstall -R -y
#
# bsvc インストール
#
# (1) Makefile.common
cd /usr/local
rm -rf `basename $MYSRC_BSVC -src.tar.gz`
tar -xvzf /tmp/$MYSRC_BSVC
ln -s `basename $MYSRC_BSVC -src.tar.gz` bsvc
cd bsvc/src
cat Makefile.common | sed 's/\/home\/bwmott\//projects\/bsvc\/development\/bsvc/\/usr\/local\/bsvc/g' > /tmp/a
cp /tmp/a Makefile.common
# Redhat Linux では
# /usr/local/bsvc/src/Tools/xtermpipe/xtermpipe.cxx中の(void*)を外し,
# /usr/local/bsvc/src/sim68000/devices/M68681.cxx
# /usr/local/bsvc/src/sim68360/devices/M68681.cxx
# 中にextern "C" {int kill(pid_t pid, int sig);};を入れる.
# このままでは,/usr/local/bin/sim68000はないため,
# /usr/local/bsvc/src/Makefile.commonを開き,
# INSTALL_DIR= /usr/local/bin とし,sim68000のインストール先を変更する.
# cp Makefile.Linux Makefile は未チェック
cp Makefile.Linux Makefile
cd /usr/local/bsvc/src
make PROJECT_BASE=/usr/local/bsvc
cd /usr/local/bsvc-2.1/src
checkinstall -R -y make PROJECT_BASE=/usr/local/bsvc install
# ここで,/usr/local/bin/sim68000を実行しても,以下のエラー文が表示される.
#  /usr/local/bin/sim68000/: error while loading shared libraries: libstdc++-lib6.3-2.so.3: cannot open shared object file: No such file or Directory
#  libstdc++-lib6.3-2.so.3があるディレクトリは,/usr/local/libである.そこで,
#  /etc/ld.so.confに,/usr/local/libを最初の行に追加して再起動する.
# さらに,ln -s /usr/local/lib/libstdc++-lib6.3-2.so.3 /usr/lib として,シンボリックリンクを張る.
# 再度,/usr/local/bin/sim68000を実行すると,READYと表示されるはずである.
動作確認
動作確認します./usr/local/bin/sim68000 を実行して、エラーが発生しないことを確認します.
/usr/local/bin/sim68000
エラーが出たら、/etc/ld.so.conf の設定が正しいかを確認するなど、適切な 処置を行なって下さい。
専用ファイルのインストール
68000 アセンブラプログラムをエミュレータで動作させるために専用 のスクリプトファイルを用意している. これらのファイルをインストールすることによって, m68k-asとm68k-emu 命令が使えるようになる. 各自の責任でお使い下さい.
m68k-5.0.tgz を入手します # cd ~/ # tar zxvfp m68k-5.0.tgz
次にインストールを実行する. このスクリプトはlib以下を/usr/local/lib に,bin以下を/usr/local/binにコピーします.
cd m68k-5.0 ./install.sh
次に /usr/loca/bin/m68k-emu ファイルを開き, 「exec /usr/local/bin/wish -f /usr/local/bin/UI/bsvc.tk」 と表記されている行は、インストールした tk のバージョンにあわせて、適切 に設定して下さい
例えば、「exec /usr/local/bin/wish8.4 -f /usr/local/bin/UI/bsvc.tk」の ように変更して下さい。
xterm(kterm)のウィンドウを開きなおしてm68k-as,m68k-emuが実行できることを確認します.
お断り
この Web ページは,68000アセンブラ基礎実験,ソフトウェア実験で使用するツール を,自宅のパソコンに整備する方法を説明するために作製しました.
この Web ページに関する質問について
金子邦彦研究室構成員以外の方からの質問に関して,個別にお答えするこ とはできませんのでご了承ください