[kaffe] Re: [tritonus-user] Tritonus on kaffe

Dalibor Topic robilad at yahoo.com
Wed Dec 11 08:49:33 PST 2002

Hallo Matthias,

--- Matthias Pfisterer <matthias.pfisterer at web.de>
> > After playing around with tritonus, I think I saw
> the
> > bug myself. Our ArrayList.add(Obj) implementation
> uses
> > add(int, Obj) internally, and that one's not
> > implemented in tritonus' ArraySet. I've got a
> trivial
> > fix for that, and it will come into kaffe's source
> > this weekend.
> Yes. Exactly this was the problem.


> > My main problem at the moment is getting C++
> shared
> > libraries and libtool to work together. You are
> using
> > C++ to develop the shared libs (libtritonus*).
> Kaffe
> > on the other hand relies on libtool for dynamical
> > library loading. Libtool links the C++ libs with
> gcc,
> > and gcc doesn't automatically add -lstdc++ and
> -lg++.
> > So libtritonusesd can't resolve all symbols. Any
> idea
> > how to solve this in Makefile.am?
> As I'm not really happy with the C++ solution, too,
> I was already 
> thinking about switching back to C. Actually, the
> only reason to use C++ 
> is the template class HandleFieldHandler. I got
> bored of copying source 
> code, so I thought the template class would be more
> elegant. But I saw 
> that object code file sizes got bumped from 5 or 6
> kB to more than 30 
> kB. And with the GNU compiler, templates are not
> really elegant, too: I 
> still have to explicitely put a declaration of each
> template variant 
> into an implementation file. So this should also be
> possible with plain 
> old ugly C macros. As the usage of C++ seems to be
> one of the major 
> problems, I'm now checking if I can switch back
> soon.
> By the way: introducing libtool for Tritonus is also
> something on my 
> wishlist. Perhaps the "upstream sorce" can benefit
> from your work.

My fix for this is to use libtool from current CVS and
upgrade out build scripts to latest auto* tools. There
are some issues in going that way, mainly increasing
the bar for build system developers, and having to fix
all the bugs in the build scripts exposed by the

Of course, if the libraries could be switched to plain
old C, that would make my life much easier, I hope.
What is the HandleFieldHandler class used for?

> MidiShare is a low-level MIDI API. In theory, it is
> quite portable. It 
> evolved on Macintosh and has also versions for
> Windows and Linux. I was 
> not very happy with it. The windows version only
> worked for 16bit 
> Windows (including Win95, but not WinNT, Win2000,
> etc.). This is an old 
> state, perhaps newer versions have evolved. But the
> main reason I didn't 
> deal with it is that it is not comparative to ALSA's
> MIDI and sequencing 
> facilities. Plus, I think, some personal taste on
> API design. You can 
> get more information on MidiShare at
> http://www.grame.fr/MidiShare/

their web site mentions new versions for Win 200 & OS
X , so it might be worth a try. I'll see if I can get
it to work.

> > Are there any automake macros available for
> tritonus,
> > that would make the configuration easier?
> Something
> > like --with-sound=esd,alsa would be nice, and of
> > course macros to determine if esd or alsa is
> > installed.
> Did you have a look at configure.in in Tritonus'
> top-level directory?
> There are some thinks related to this.

thanks, I'll see what I can reuse.

best regards,

dalibor topic

Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.

More information about the kaffe mailing list