SoftWire
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 なら簡単にできそう。