mieki256's diary



2010/08/23(月) [n年前の日記]

#2 [gnustep] WindowsにGNUstepなるものをインストールしてみたり

Windows上でもObjective-Cを使える、という記事を見かけたので、Windows XP Home SP3上で試しみた。

_GNUstep Windows Installer から、以下のファイルをDLして、尚且つ、以下の順番でインストール。今回は C:\GNUstep にインストールすることにした。 Calculator-1.0.0-2-setup.exe だけは、 _http://ftpmain.gnustep.org/pub/gnustep/binaries/windows/ からDLした。

各setup.exeを実行したところ、システム環境変数側ではなく、ユーザ環境変数側に、
PATH=C:\GNUstep\mingw\bin;C:\GNUstep\GNUstep\System\Tools
という環境変数が作られてしまった…。システム環境変数側の Path に件の内容を追加して、ユーザ環境変数側のPATHは削除した。

それはともかく、Pathの記述順に気をつけないと、Windows標準の各コマンドではなく、UNIX文化圏のコマンドが先に呼ばれてしまって、何かしらで不具合が起きる場面があるかもしれず。ひょっとすると、別途、Pathに追加するバッチファイルを作成して、それを起動してから作業する、等のほうがいいのかもしれない。

SystemPreferences や gorm なるものを動かしたら、なんだかそれっぽいGUIアプリが起動した。たぶん、gorm なるもので、GUIアプリのUIをデザインするのだろうな。

Calculator は、「gnustep-base-1_15.dllが見つからなかったため〜」とエラーが出て実行できず。SystemだかCoreだか、そのへんとバージョンが合ってないのかもしれない。

Objective-Cとやらでコンパイルできるかどうか試す。 :

後述の参考記事中で見かけた hello*.m の類を作成。作成には NTEmacs を使用。一応、NTEmacs上で、M-x objc-mode とすれば該当モードになってくれるらしい。

コンパイル?用のバッチファイルも作成。
@set HEADER=c:/GNUstep/GNUstep/System/Library/Headers
@set LIB=c:/GNUstep/GNUstep/System/Library/Libraries
@set OPT=-lobjc -lgnustep-base -fconstant-string-class=NSConstantString -enable-auto-import
@echo Compiling Now [%1]
gcc -o %1 %1.m -I %HEADER% -L %LIB% %OPT%
@echo.
@echo Compiled.
cc.bat というファイル名で保存して、cc hello みたいな感じで実行。hello.m がコンパイル?されて、hello.exe が出来た。実行するとメッセージも表示されたので、おそらくコンパイルできたのだろう。

シェルらしきものを動かしてみた。 :

スタートメニュー中にある、GNUstep -> Shell を実行したところ、おそらくは sh.exe が起動した。ls -al とか pwd とかそのへんが実行できたので、おそらくUNIX系のコマンドが使える…のだろう。たぶん。

ただ、何かするたびにbeep(M/Bに接続してあるブザー)が鳴って気に障る。~/.inputrc に、
set bell-style none
と書いたら鳴らなくなった。ちなみに自分の環境では、環境変数 HOME を定義してあるので、他環境では「~」がどこらへんになるのかは知らない。

which make と打ったら、/bin/make.exe と表示されたので、make も使えそう。

参考記事。 :


以上です。

過去ログ表示

Prev - 2010/08 - Next
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project