http://people.fishpool.fi/~setok/sleberEid/liboil/ "Oil is an extension to [Tcl] which provides a high-level method to control graphics, effects and other media systems. My long-term goal is for Oil to do to [SDL]-coding what [Tk] did for [X]-coding." Provocative example: http://www.fishpool.com/~setok/sleberEid/managers.html Another, made in 2 hours: http://www.fishpool.com/~setok/sleberEid/twohours.html Announcement [http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&frame=right&th=86aafc1805ae950a] ---- [PT] 18-Jul-2003: Liboil can be built for windows using the mingw compiler. You need to get the SDL development library for mingw from the SDL site [http://www.libsdl.org/] and apply the following patch to the current Makefile in liboil. What you end up with is a ''oilsh'' shell. This isn't too good as an interactive shell under windows - but it does successfully run the oil scripts. Try the managers demo mentioned above. To use this patch, copy it to a file and delete the leading single space (for instance, in emacs use M-x replace-regexp^ ). You'll need to edit the location of your SDLDIR - and the SDL include directory needs to be renamed from include to SDL (because all the #includes are for ). --- Makefile.orig Mon Feb 17 02:29:28 2003 +++ Makefile Thu Jul 17 01:44:58 2003 @@ -4,16 +4,16 @@ ## $Header: /home/kennykb/Tcl/wiki/cvsroot/twhist/8347,v 1.9 2005-04-08 06:00:42 jcw Exp $ -SDL_CFLAGS = `sdl-config --cflags` -SDL_LIBS = `sdl-config --libs` +SDLDIR = /opt/SDL-1.2.5 +SDL_CFLAGS = -I$(SDLDIR) -Dmain=SDL_main #`sdl-config --cflags` +SDL_LIBS = -L$(SDLDIR)/lib -lmingw32 -lSDLmain -lSDL -CC = gcc +CC = gcc -DWIN32 -D_WINDOWS #FLAGS = $(SDL_CFLAGS) -O2 -ffast-math -Wall -DDEBUG -g FLAGS = $(SDL_CFLAGS) -O2 -ffast-math -Wall -finline-functions -funroll-loops -LIBS = $(SDL_LIBS) -ltcl8.4 +LIBS = $(SDL_LIBS) -L/opt/tcl/lib -ltcl84 -# RedHat doesn't need this -INCS = -I/usr/include/tcl8.4/ +INCS = -I. -I/opt/tcl/include/ SRCS = oilsh.c \ debug.c \ @@ -52,7 +52,7 @@ rm *.o oilsh: $(OBJS) - $(CC) $(FLAGS) $(LIBS) -o $@ $^ + $(CC) $(FLAGS) $^ $(LIBS) -o $@ $(OBJS): %.o: %.c $(CC) $(FLAGS) $(INCS) -c -o $@ $< ---- This has obviously nothing to do with libOil from http://www.schleef.org/liboil/ except the name collision (that seems to be their fault this time). Is there anything for Tcl to gain from optimized inner loops library? <> Graphics | Porting