手元に glscwin_0.82.lzh というファイルがある。
まずはばらす |
mkdir glscwin_0.82 cd glscwin_0.82 lha x ../glscwin_0.82.lzh |
glsc_ext.c の修正
mathpc% diff -c glsc_ext.c.org glsc_ext.c
*** glsc_ext.c.org Mon Jun 28 03:30:28 1999
--- glsc_ext.c Tue May 20 23:32:29 2008
***************
*** 797,803 ****
g_area_rgb(c.r, c.g, c.b);
}
/***************************************/
! double g_color_gen_func(x)
/***************************************/
G_FLOAT x;
{
--- 797,803 ----
g_area_rgb(c.r, c.g, c.b);
}
/***************************************/
! G_FLOAT g_color_gen_func(x)
/***************************************/
G_FLOAT x;
{
mathpc%
コンパイルしてライブラリィ・アーカイブ・ファイルを作る
mathpc% cat make.sh
#!/bin/sh
#CFLAGS=-W -Wall
gcc $CFLAGS -c -O glsc.c
gcc $CFLAGS -c -O glsc_ext.c
#gcc $CFLAGS -c -O glsc_win.c
gcc $CFLAGS -c glsc_win.c
gcc $CFLAGS -c -O ezfont.c
ar cru libglscs.a glsc.o glsc_ext.o glsc_win.o ezfont.o
ranlib libglscs.a
gcc $CFLAGS -c -O -DG_DOUBLE glsc.c
gcc $CFLAGS -c -O -DG_DOUBLE glsc_ext.c
#gcc $CFLAGS -c -O -DG_DOUBLE glsc_win.c
gcc $CFLAGS -c -DG_DOUBLE glsc_win.c
gcc $CFLAGS -c -O ezfont.c
ar cru libglscd.a glsc.o glsc_ext.o glsc_win.o ezfont.o
ranlib libglscd.a
mathpc%
glsc_win.c だけコンパイルに -O をつけていないが、
while (TRUE) { if (w_lbutton_down == G_YES) { break ; } } |
倍精度ライブラリィとコンパイル&リンクするためのスクリプト例
-- cglscd
#!/bin/sh
GLSCDIR=/usr/local/glscwin-ver0.82
KANJI="-finput-charset=cp932 -fexec-charset=cp932"
#CFLAGS="-W -Wall -O -DG_DOUBLE -I$GLSCDIR/include"
CFLAGS="-O -DG_DOUBLE -I$GLSCDIR/include"
LDFLAGS="-L$GLSCDIR/lib -lglscd -luser32 -lgdi32 -lwinmm -lcomdlg32 -lcomctl32 -lm"
prog=`basename $1 .c`
gcc $KANJI $CFLAGS -o $prog "$@" $LDFLAGS
桂田 祐史