Misc Change Log

`OpenBSD で scheme のアプリ開発' みたいなことをやってます。

2005-02-21

SoftWire

http://softwire.sf.net/

via: http://diary.okotama.org/?date=20050220#p07

OpenBSD でも普通に動くようだ。

ところで、ctime の第一引数は long* ではなく、const time_t* ですぞ。

Assembler.cpp:196
            const int t = time(0);
            fprintf(file, "\n;%s\n", ctime((long*)&t))

ここ。 というか、この間違いどっかでみたと思ったらちょっと前までの Bigloo だった。 今は直ってるみたいだけど。

あ、そうそう。 Makefile.gcc を

CC= libtool --tag=CXX --mode=compile g++
LINK= libtool --tag=CXX --mode=link g++
OBJEXT = .lo
...
$(OUTPUT): $(OBJECTS)
        $(LINK) -o $@ $(OBJECTS) -no-undefined -rpath ${prefix}/lib
...
$(TESTAPP): $(TESTOBJECTS)
        $(LINK) -L$(LIBDIR) -o $@ $(TESTOBJECTS) -lSoftWire
...
%.lo: %.cpp
        $(CC) $(CFLAGS) -c $<
...
clean:
    libtool --mode=clean rm -f $(OUTPUT)
    libtool --mode=clean rm -f $(TESTAPP)
    libtool --mode=clean rm -f *$(OBJEXT)

にすると libtool を使った .so なライブラリができる。 Makefile しかないときはいつでもこの方法が使える。おすすめ。

まあそれは置いといて、なかなかおもしろいっす。 Gauche へポートしてごにょごにょするかね。それこそ Bigloo とか chicken なら簡単にできそう。

Posted at 10:52 | Permalink | Category | Comments