もう一度環境づくりをする
もう一度環境作りからはじめます。
パソコンがなくなってしまってからもうそろそろ1年くらいたつのでしょうか?
とりあえず、マウスの使い方は忘れていないようであります。プログラムはじぇんじぇんしていません。
こんなときは何かプログラムを書いてみるのが一番ですが、環境がないです・・・・。
では作ろう。
(自分ようのパソコンがほしい〜〜〜。)
MinGWとMSYSをまずゲットすることにしよう。
MinGW-3.1.0-1.exe
ダウンロード・・・・。
けっこう時間がかかれそうだ。
・・・・面倒。
・・・98%?
そして、ダブルクリックでインストール。
#include<stdio.h>
int main()
{
printf("Get?");
return 0;
}
としてa.exe
>>Get?
うまくいったようだ。
次はw32api-3.1.tar.gzだ。・・・
フレーズしているのだろうか。いや回線が遅いだけだろう。
・・・
待っている間に・・・・
#include
int WINAPI WinMain( HINSTANCE hInst,HINSTANCE preInst,PSTR lpCmdLine,int nCmdShow)
{
MessageBox(NULL,TEXT("ゲットだよーん"),TEXT("タイトルだったかな?"),MB_OK);
return 0;
}
とかいて gcc a.c
そして a.exe
とりあえず動いたからOK。
となると今ダウンロードしようとしているのなんなのだろうか。?
次はmingw-utils-0.3.tar.gzをゲットだぜ。
ありり・・・。これもインストールされている
MinGW-3.1.0-1.exeだけでよいのだろうか
次はMSYS-1.0.10.exeをダウンードだ
そしてインスートル、ダブルクリックするだけでできてしまいます。
ついでにmsysDTK-1.0.1.exeもゲットだぜ
ところで、DTKってなに?
けっこう時間がかかる
相当かかってる?
とりあえずMingをMake
Ming本家へ
ためしにMing0.3aをMakeしてみよう。
もちろんエラーが出ます。
探しにいこうツールたちを
まずはzlibがないといっているようである
とりあえずGnuWinにいく
zlib-1.2.1-1.exeをゲットする。
そしてMakeもちろんエラーだらけです。
MakeFileをいじります。
とりあえずpng もgifも使わないぞっと心にきめる。
そして以下のようにする。
もconfig.makeをかきかえる。
# set to your choice of png and / or gif formats
EXTRA_OBJS =
# gifdbl.o pngdbl.o
# zlib required for both image formats and for compressed swf6
LIBS = -lz
# -lungif -lpng12
EXTRA_LIBS = ${LIBS}
もちろんまだまだエラーがたくさん出ます。
次の敵はbisonです。
もちろんbisonもGnuWinで手に入ります(確かあったと思うのだけれども?)。
ありました。
ダウンロード間にもうひとつ変更
/src/ming_config.hを変える
#define USE_ZLIB 1
#define USE_GIF 0
#define USE_PNG 0
#if USE_GIF
#undef USE_ZLIB
#define USE_ZLIB 1
#endif
#if USE_PNG
#undef USE_ZLIB
#define USE_ZLIB 1
#endif
まだまだダウンロードが70%の状態ですね・・・
そして95%です
そしてGetだぜ!!
そしてMakeするとわけのわからないえらーがたくさん
C:\ming-0.3beta1\src>make dynamic
gcc -O2 -Wall -I. -c -o blocklist.o blocklist.c
gcc -O2 -Wall -I. -c -o displaylist.o displaylist.c
gcc -O2 -Wall -I. -c -o fill.o fill.c
gcc -O2 -Wall -I. -c -o font_util.o font_util.c
gcc -O2 -Wall -I. -c -o ming.o ming.c
gcc -O2 -Wall -I. -c -o movie.o movie.c
In file included from /mingw/include/unistd.h:13,
from c:/MinGW/include/unistd.h:13,
from c:/MinGW/include/zconf.h:280,
from c:/MinGW/include/zlib.h:34,
from movie.c:25:
/mingw/include/unistd.h:13:27: unistd.h: No such file or directory
movie.c: In function `SWFMovie_toOutput':
movie.c:522: warning: `tempbuffer' might be used uninitialized in this function
make: *** [movie.o] Error 1
とりあえず 私はflexを入れるとよくなることを私は知っているのでFlexをゲット。
そしてmakeするとlibming.aが作成されます。
何か書く
を
#include "ming.h"
main() {
SWFShape s;
SWFMovie m;
SWFFill f;
s = newSWFShape();
m = newSWFMovie();
Ming_setScale(20.0);
SWFMovie_setBackground(m, 12,12, 50);
SWFMovie_setDimension(m, 100,100);
f = SWFShape_addSolidFill(s,255,0,0,150);
SWFShape_setRightFill(s,f);
SWFShape_drawCircle(s,2.1);
SWFMovie_add(m,(SWFBlock)s);
SWFMovie_save(m, "a.swf",2);
}
gcc a.c libming.a -lz
よし完成・・・。
(gcc a.c -lz libming.a だと動きません)
libPng
libPngをゲットする
#define USE_ZLIB 1
#define USE_GIF 0
#define USE_PNG 1
#if USE_GIF
#undef USE_ZLIB
#define USE_ZLIB 1
#endif
#if USE_PNG
#undef USE_ZLIB
#define USE_ZLIB 1
#endif
# set to your choice of png and / or gif formats
EXTRA_OBJS = pngdbl.o
# gifdbl.o
# zlib required for both image formats and for compressed swf6
LIBS = -lz -lpng12
# -lungif
EXTRA_LIBS = ${LIBS}
そして make clean そしてmake
するとすばらしいエーラーのエーラー
しかし私は知っているので
ここを変えてみる
/src/Makefile
dynamic: ${OFILES}
cd blocks && make
cd actioncompiler && make
${CC} ${OFILES} ${COMPILEROFILES} ${LDFLAGS} ${EXTRA_LIBS} blocks/*.o ${EXTRA_LIBS} -shared -o libming.so
cp libming.so ..
どこかわかる?
おしまい。
とうぶん、勘を取り戻したいのでJAVAでなんか作って見る予定
PS. Zlib や libpngはsetupしたのち、フォルダーごとMinGWにコピーするだけでよい(includeだとかのことですよ!!)
パスはとおすのですよ(MinGWとMSYSのBinにですよ)