Apple Computer社の公式ダウンロード用FTPサイトにおいて公開されている資料"!ReadMe.txt"の日本語訳です。個人がMPW理解の過程で試みた翻訳ですので、日本のアップルコンピュータ株式会社等に連絡・問い合わせをしないようお願いいたします。これからMPWに触れてみようと考えている方の参考になれば幸いです。明らかな誤訳等ありましたら電子メールにてこっそりご連絡ください。 :-)
このフォルダには2001年8月の開発者用CDにおけるフォルダ"Tool Chest:Development Kits:MPW etc."と同じソフトウェアおよび文書が含まれる。
書類About_MPW_etc.sit.hqxは、フォルダ"MPW etc."の内容、2001年2月の開発者用CDからの各変更、MPWをインストールする方法、その他について解説する。
フォルダDocumentation中の大部分の書類群は、Adobe Acrobat形式で提供される。Adobe社のアプリケーションAcrobat Readerは以下から入手可能である:
<http://www.adobe.com/acrobat/>MPWの更新については、以下のMPWウェブサイトを訪問すること:
<http://developer.apple.com/tools/mpw-tools/>MPWに関するしばしば訊ねられる質問への回答ついては、MPW FAQを検証すること:
<http://developer.apple.com/tools/mpw-tools/mpw_faq.html>はじめてのMPW
========================ステップ 1 - 以下から入手可能なアプリケーションDisk Copyが必要となるであろう。
<ftp://ftp.apple.com/developer/Utilities/>ステップ 2 - フォルダMPW-GM_Images中に含まれるファイルMPW-GM.img.binをダウンロードする。このファイルはMacBinary形式によって符号化されたディスクイメージファイルである。ファイルをダウンロードする際に使用したアプリケーション(Internet Explorer、Netscape Communicator、Fetch、その他)は、そのMacBinaryファイルを自動で復号化するにちがいない。その結果として生成されるファイルはMPW-GM.imgという名前のイメージファイルとなるべきである。
ステップ 3 - ディスクイメージをマウントするためにダウンロードされたイメージファイルをダブルクリックする。ディスクイメージを開き、フォルダMPW-GMをハードディスクへとコピーする。今やディスクイメージをゴミ箱へとドラッグしたり、イメージファイルを削除することが可能である。フォルダMPW-GMは充分に最適化されたMPW環境から構成されており、そのままでも動作するであろう、よってMPWを使用することに慣れるまではフォルダの中身を「再配置」しないこと。
ステップ 4 - もしもPowerMacintosh上でMacOS7.6より前のバージョンのシステムソフトウェアとともにMPWを実行するのであれば、ファイルStdCLibInitを
":MPW-GM:Interfaces&Libraries:RuntimeLibraries:Required for MPW:Required for Pre-Mac OS 7.6:"
からシステムフォルダの機能拡張フォルダへとコピーすること。ファイルをコピーした後に、システムを再起動すること。ステップ 5 - MPW環境を実行するために、ハードディスク上のフォルダ":MPW-GM:MPW:"内にある"MPW Shell"と呼ばれるアプリケーションを起動すること。
ステップ 6 - MPW関連文書をダウンロードして読むこと、とりわけ
"Introduction to MPW"
<ftp://ftp.apple.com/developer/Tool_Chest/Core_Mac_OS_Tools/MPW_etc./Documentation/MPW_Reference/Introduction_to_MPW.sit.hqx>
あるいは、"Building and Managing Programs in MPW"
<ftp://ftp.apple.com/developer/Tool_Chest/Core_Mac_OS_Tools/MPW_etc./Documentation/MPW_Reference/Building_Progs_In_MPW.sit.hqx>
を読むこと。
また、MPWの最新バージョンを使用するときは、これらのマニュアルがいささか古く、若干の矛盾点を含むかもしれないことに注意すること。マニュアルが執筆された後に行われたMPWにおける各変更に関しては、リリースノート
<ftp://ftp.apple.com/developer/Tool_Chest/Core_Mac_OS_Tools/MPW_etc./Documentation/MPW-GM_Release_Notes.sit.hqx>
の中で書類化されている。見本[example]プログラムはフォルダ":MPW-GM:MPW:Examples:"内にある。
各使用法およびmakefileは件の見本フォルダにおいて提供される。あなた自身のプログラムを構築するためには、Buildメニューから項目"Create Build Commands"や"Build"を使用すること。SIOW(Simple Input/Output Window)アプリケーションとしてプログラムを構築するためにラジオボタン"SIOW App."を選択すること。SIOWパッケージはあなたのプログラムにおいてシンプルなウインドウを通してユーザと相互作用し、部分的ではあるものの、典型的なMacintoshのアピアランスと挙動を示すことを可能にする。SIOWアプリケーションの詳細に関してはマニュアル"Building and Managing Programs in MPW"の第15章を参照すること。
MPWツールとしてプログラムを構築することも可能である。この場合は、Buildメニューから項目"Create Build Commands"を使用し、ラジオボタン"Tool"を選択すること。そうすることで、あなたのプログラムはツールの名称のみを打ち込み、Enterキーを押すことによってMPW worksheetから実行可能なMPWツールとして構築されるだろう。MPW Shellがコマンドライン環境を提供するので、あなたのプログラムは出力を表示することや、入力をMPW worksheetから受け取ることが可能となる。プログラムへと入力を送るために、ReturnキーではなくEnterキーを押さなければならないことや、行全体が入力として送られることに注意すること。このため、プロンプトのようなプログラム出力では、いかなる入力もその行単位で入力されるよう常に改行文字('\n')で終わるようにすべきである。
プログラム構築に関するさらなる情報は"Building and Managing Programs in MPW"の第1章に含まれている。
MPWを使用する際の手助けとして、われわれはあなたが以下を訪問することによりMPW-Devインターネットメーリングリストを購読することを推奨する:
<http://lists.apple.com/mailman/listinfo/mpw-dev#Subscribe>以下を訪問することによりMPW-Devメーリングリストアーカイブを閲覧することが可能である:
<http://lists.apple.com/mailman/listinfo/mpw-dev#Archives>MPWチーム
2001年8月
Apple Computer社の公式WWWサイトにおいて公開されている資料"About MPW..."の日本語訳です。個人がMPW理解の過程で試みた翻訳ですので、日本のアップルコンピュータ株式会社等に連絡・問い合わせをしないようお願いいたします。これからMPWに触れてみようと考えている方の参考になれば幸いです。明らかな誤訳等ありましたら電子メールにてこっそりご連絡ください。 :-)
MPWについて...
MPW(Macintosh Programmer's Workshop)はとりわけプロフェッショナルのMacintoshソフトウェア開発者のために設計された製品である。それは同時にMacOS7.x/8.x/9.xのためのソフトウェアを作成しているC、C++、そしてアセンブリ言語プログラマをサポートするよう設計されたMacintoshコア[core]開発ツールの多岐にわたるコレクションも提供する。MPWは[閉じた環境ではないという意味で]オープンで、自由に構成することができ、そしてスクリプティング可能な開発環境であり、そのことが68KおよびPowerMacintoshシステム用の複雑なソフトウェア開発プロジェクトをサポートするための柔軟性を提供する。
MPWにはエディタ、MC680x0およびPowerPCコードを生成するアセンブラまたはC/C++用コンパイラ、そして各リンカやリソースコンパイラといった[プログラム]構築に必要なサポートツール群が含まれるため、多目的のC/C++開発環境として使用することが可能である。しかし、その魅力は応用範囲の広さであり、いかなる手段をとっても扱いにくくやっかいである多様なファイル関連の操作を行うためのたくさんの追加ツール群を含んでいることから来る。その結果として、Metrowerks社のCodeWarriorやSymantec C++ for Macintoshといった他のポピュラーな開発環境を使っている多くのプログラマたちでさえMPWを利用している。
長いあいだ、MPWはE.T.O.[Essentials - Tools - Objects] CDの一部として提供されてきた。MPWが含まれる最後のE.T.O. CDは1997年3月に出荷されたE.T.O. #23であった。現在、MPWは開発者用CDの一部として提供されている。これはApple社の開発者プログラムの会員へと送られる月刊のCD-ROM叢書である。MPWはApple社の開発者用FTPサイトからも自由に入手できる。
MPWの主要コンポーネント[ソフトウェアとして特定の機能を果たす部分]は次の通り:
MPW Shell
ShellはMPW開発環境の中心である。これは統合されたマルチウィンドウ型のテキストエディタおよびコマンド実行環境であり、装備された数多くのコマンド群と強力なスクリプティング言語をサポートすることにより、必要に応じた環境をカスタマイズすることが可能である。また、ShellにはProjectorも含まれるが、これはプログラマのチームによって行われるような大規模で複雑なソフトウェアプロジェクトの管理を容易にする統合されたソースコードコントロールシステムである。
SC/SCpp -- CおよびC++コンパイラ(68Kコード用)
SCおよびSCppはANSI[アメリカ国内(国家)規格協会]準拠の680x0コード生成をするCおよびC++コンパイラであり、MPWにこれまで含まれていたコンパイラより[コンパイル速度が]速く、PowerMacintosh上でのネイティブモードによる動作や、CFM-68Kランタイムモデルをサポートする。
MrC/MrCpp -- CおよびC++コンパイラ(PowerPCコード用)
MrCおよびMrCppはターンアラウンドタイム[コンパイル作業に要する時間]の大幅な改善を試み、また、PowerMacintoshシステム上での最速のバイナリ実行のために、効率がよく高度に最適化されたPowerPCコードを生成するMPWコンパイラである。MrCはANSI C規格(ANSI X3.159-1991)に、また、MrCppはテンプレートと例外処理を除きANSI C++作業文書[working paper](ANSI X3J16)に準拠する(コンパイラのプレリリース[開発]バージョンではこれらふたつの可能性[capabilities]もサポートする)。
アセンブラ(68KおよびPowerPCコード用)
含まれるふたつのアセンブラのうち、ひとつはあらゆる68xxx命令セットをサポートし、もうひとつはPowerPC命令セットをサポートする。68xxxアセンブラはMC68000、MC68010、MC68020、およびMC68030マイクロプロセッサ、MC68851 Paged Memory Management Unit(PMMU)、そしてMC68881およびMC68882浮動小数点コプロセッサにおける使用可能なあらゆる組み合わせのためのすべての命令とアドレッシングモードをサポートしている。
MPWツールおよびスクリプト一式
たくさんのツールやスクリプトが開発工程を援助するために含まれている。これらには各リンカ、Makeツール、リソース操作および解析ツール、ファイル比較ユーティリティ、その他多くのものが含まれる。
より情報を得るためにはわれわれの書類MPW その利点を読むこと。
Apple Computer社の公式WWWサイトにおいて公開されている資料"MPW Advantages"の日本語訳です。個人がMPW理解の過程で試みた翻訳ですので、日本のアップルコンピュータ株式会社等に連絡・問い合わせをしないようお願いいたします。これからMPWに触れてみようと考えている方の参考になれば幸いです。明らかな誤訳等ありましたら電子メールにてこっそりご連絡ください。 :-)
MPW その利点
経費
- MPWは(完全な文書も含め)Apple社の開発者用FTPサイトから自由に[つまり無料で]入手可能である!
作業環境
- MPWのエディタは使用可能メモリを気にすることなく、いかなるサイズのファイルでも編集することができる。
- MPWのエディタは各ウィンドウを無制限の数の枠のなかに分割することができる。
- MPWのエディタは各ウィンドウにカスタマイズ可能なツールバーを備え、バーがウィンドウとともに動くことのない他のシステムよりも手軽にバーへとアクセスを行える。
- それぞれの編集ウィンドウは画面の乱雑を軽減するために隠すことができる。
- MPWのエディタは複数回の取り消し・やり直し[Undo]をサポートする。
- MPWのエディタはドラッグ&ドロップ編集をサポートする。
- いかなる単一コマンドまたは連続したコマンドも、編集ウィンドウからの手入力、テキストファイルからの実行、あるいはメニュー項目の選択による駆動が可能。
- "Commando"ダイアログはコマンドパラメータを指定するための手助けとなる視覚的インターフェイスを備える。
- MPWのコマンド群はデータ処理に関する柔軟性のためにUNIXスタイルのパイプ機能やフィルタ機能をサポートする。
- UNIXのツール群はMPW環境で動作するよう手軽に移植することができる。いくつかの例として、awk、bison、yacc、lex、diff、flex、sed、perl、python、tags、そしてgcc等がすでに移植されている。
- MPWの各コマンドの結果は、開かれているどんなウィンドウへも、また、新規あるいは既存のファイルへも出力先を変更することができる。
- すばやく便利なアクセスができるように通常使用されるコマンド群はWorksheetウィンドウに保持しておくことができる。
- あらゆるMPWのキー割り当て[key bindings]は好みに応じてカスタマイズが可能である。たとえば、viやemacsといったエディタが備えるキー操作を再現することもできる。
- いかなるコマンドのセットに対しても簡単に独自の名称を与えることができる。
- ・各ウィンドウはその内容を自動保存するように設定することが可能であり、明示的に保存を行う必要がなくなる。
- ヘッダ、行番号、枠線、すかし、そして改ページ[page breaks]を含む高度にカスタマイズされたソースリストを印刷することができる。
- Text markersは手作業によって、または計画的に[programmatically]スクリプトによって追加することができ、markerブラウザを使って操作することが可能。
- MPWはMPW Shellから引き出された[extracted]完全なツールおよびスクリプトの実行環境であるToolServerを持ち、時間を要する非対話式のツールやスクリプトをバックグラウンド、あるいは遠隔のマシン上で実行することに利用できる。
- ToolServerはサードパーティ製のアプリケーションや開発環境からMPWツールやスクリプトを実行するために利用することもできる。
ツール群
- MPWの[プログラム]構築ツール群は、他の多くのツールと同様、PowerMacintosh上でネイティブモードにて動作する。
- MPWは高度に最適化されたC/C++用PowerPCコンパイラであるMrCとMrCppを含み、[作成された]コードからさらなるパフォーマンスを絞り出すことができる。
- MPWは最適化されたC/C++用68KコンパイラであるSCとSCppを含み、Classic68KとCFM-68Kランタイムモデルをともにサポートする。
- MPWは68KおよびPowerPC開発用の全機能を備えたマクロアセンブラを含む。
- MPWはClassic68KとCFM-68Kの増強された[incremental]リンカとしてILinkを含む。これはコンパイルされたオブジェクトファイル、静的ライブラリ、共有ライブラリをアプリケーション、ツール、共有ライブラリあるいはコードリソースへとリンクさせる。
- MPWはPowerPCリンカとしてPPCLinkを含む。これはコンパイルされたオブジェクトファイル、静的ライブラリ、共有ライブラリを静的ライブラリ、共有ライブラリ、あるいはアプリケーションのように実行可能なコードフラグメントへとリンクさせる。
- MPWのリンカ群はC、C++、アセンブリ言語、PascalやFortranといった異なる言語で記述されたコードを結合することができる。
- リソースコンパイラであるRezは、読みやすくまた管理しやすくするためにコメントや記憶定数[mnemonic constants]を使用した言葉による[textually]各リソースタイプの定義を可能にする。
- DeRezツールを使用することにより、視覚的エディタ[たとえばResEdit等]によって作成されたものも含めて、あらゆるリソース用のソースコードを生成することが可能。
- いくつかのツールはリソースフォークを有益に管理するための多様な処理を実行できるようにする。そこには誤謬探索[corruption detection]や同値テスト[equivalency tests]も含まれる。
- ModPEFおよびMergeFragmentツールはPEFフラグメントの取り込み[extract]、削除、修正、マージができるようにする。
- MakeStubツールはPowerPC、CFM-68K、そして"fat"バイナリの各ライブラリを作成できるようにする。
- MPWはのちにコンパイルおよびリンクされた各ファイルを調査するための多様なツール群を持ち、[調査可能な]ファイルには68Kオブジェクトファイル、68Kコードリソース、XCOFFファイル、PEFコンテナ、SYMファイルも含まれる。
- MPWはパフォーマンスの測定や分析に関する一連の豊富なツール群を持つ。
- いくつかのツールがふたつのテキストファイルの比較や、その相違点の完全な記述のために用意されている。CompareFilesスクリプトは非常に容易にひとつのソースファイルのふたつあるバージョンをマージさせる。
- いくつかのツールは情報のリストを容易に整理、マージ、パージができるようにする。
- MPWは不可視ファイルを処理するコマンドを持つ。
- 便宜を図るために、多くのツールの出力は実行可能な形式の文である。エラー文の場合、それを実行すればソースコードの該当する行へと直行することができる。
- Backupツールは現在のフォルダをマスタのバックアップ用フォルダと内容一致させることを容易にする。
- Chooseツールは計画的にサーバをマウントまたはアンマウントできるようにする。
- SetFileコマンドはタイプ、クリエータ、作成日、修正日、アイコンの場所等を含むファイルの属性を設定できるようにする。
- SetVersionツールはバージョン番号リソースを計画的に作成または修正できるようにする。
[プログラム]構築システム
- MPWはMakeファイルの使用をサポートし、微調整を加えるような構築処理の制御を可能にする。
- Makeシステムは異なるソースファイルのコンパイル処理に対して、それぞれのコンパイラオプションを設定することができる。他のほとんどの開発環境はひとつのプロジェクトにおいてすべてのソースファイルを同じオプション設定で使用する。
- "Starter"MakeファイルはCreateMakeツールによって迅速に作成することができる。
- Makeシステムは複数のターゲットや"fat"バイナリを構築することができる。これは一部の開発環境では不可能なことである。
- 複数の構築は相互に連鎖させる[be chained]ことが可能であり、たとえば非常に複雑な構築の要求をそれぞれ干渉することなく容易に実行できるようにする。
スクリプティングシステム
- MPWは任意の複雑な諸作業を行うことを可能にする統合されたスクリプティングシステムを持つ。
- MPWのスクリプティング言語は正規表現によるパターンマッチをサポートし、複雑なテキスト処理作業を可能にする。
- MPWのスクリプティング言語はワイルドカード文字の使用によって特定のファイルのグループに対する操作を容易にする。
- 任意のコマンドを作成することによりMPWのスクリプティングシステムを簡単に拡張することが可能である。
- MPWのスクリプティングシステムは[実行速度が]速い。
- MPWはいかなるアプリケーションでも起動させ、AppleScript対応のアプリケーションをコントロールする能力を持つ。
- AppleScriptコマンドを送ることができる他のアプリケーションから遠隔操作によるMPWスクリプトの駆動が可能。
チーム開発
- MPWは統合されたソースコードコントロールシステムであるProjectorを持つ。
- MPWからPerforce、CVS、そしてSourceSafeといったサードパーティ製のソースコードコントロールシステムへとアクセスが可能である。
- ProjectorのスタンドアローンバージョンであるSourceServerは、AppleEventコマンドを送ることが可能ないかなる開発環境とも共同で利用することができる。
ヘルプシステム
- MPWはMacintosh Programmer's Assistantヘルプデータベースへの便利なホットキーによるアクセスを提供する。エディタ内でツールボックスルーチン名をハイライト[範囲選択]させ、ホットキーを押すだけでその項目に関する情報が表示される。
- MPWは選択されたツールボックス関数のためのテンプレートを返すホットキーを備える。
- MPWは装備するコマンド群のための包括的なヘルプマニュアル[man-page help]を持つ。
要約
MPWのサポートするツール群や自動処理能力の広範な装備はあらゆるものにとって有益であり、そのことはコンパイル-デバッグ-テストというサイクルに日夜明け暮れる他の開発環境を利用するものたちですら認めるところである。
参考資料として、"Building and Managing Programs in MPW"で紹介されている、MPWによる一般的なMacintoshアプリケーション(およびMPWツール)のプログラム構築手順を示した図を簡単にまとめてみました(P.47)。これからMPWに触れてみようと考えている方の参考になれば幸いです。等幅フォント推奨。 :-)
アプリケーションの[プログラム]構築手順 MPW Shell エディタ──────┐ ResEdit ↓ │ ↓ ソースファイル │ リソースファイル────┐ .a .c .cp │ .rsrc │ 'TEXT' │ ↓ │ ↓ │ リソースデコンパイラ DeRez │ コンパイラ または アセンブラ │ ↓ │ ↓ └─────→Rez ソースファイル │ オブジェクトファイル .r │ .a.o 'TEXT' │ .c.o ↓ │ 'OBJ ' または 'XCOF' リソースコンパイラ Rez←─┘ ↓ │ ┌──→リンカ────→実行形式プログラム←─────┘ │ ↑ 'APPL' ライブラリ └共有ライブラリ 'MPST' .o 'shlb' 'OBJ ' または 'XCOF'