[clam-devel] CLAM Plugin Installation
David García Garzón
david.garcia at upf.edu
Wed Aug 3 05:33:05 PDT 2011
(crossed mails and commits with Pau :-) )
A Dimecres 03 Agost 2011 04:18:13, Murray Meehan va escriure:
> Hello,
>
> I am an trying to set up CLAM/NetworkEditor (the latest svn version,
> so I can enjoy the plugins) such that they can be used as course tools
> for my Audio Signal Processing class. I've run into a few problems
> installing CLAM plugins, and have a few questions...
>
> Re: plugin installation
> Why does the default SConstruct file in CLAM not install additional
> plugins?
Each plugin has its own SConstruct. They are meant to be distributed each one
separatelly: some of the plugins come with their own dependencies we don't
want to add to the core, and they might have different levels of maturity and
release pace.
I think that the puzzling fact is that plugins are under the CLAM/ tree and
they should be at the same level than CLAM, NetworkEditor and chordata. Indeed
they are distributed in separate source tarballs. I would move them up right
now but that would break some scripts and testfarm and would require an
update.
While INSTALL documentation may get old, you can refer to testfarm script as
the ultimate executable documentation on how the whole thing can get compiled.
CLAM/scripts/clam_testfarm_client.py
Not an excuse for not updating INSTAL files, but might be usefull for you to
know.
> Why is there no mention of the seperate installation
> procedure for each plugin in the CLAM INSTALL file?
> If this is something I should submit a patch for, or am misunderstanding,
> please let me know.
Yes, that's a good idea while they are not moved. complementary to pau's
commit i added the plugins to the section that previously explained how to
compile applications. (commit r15122).
Also each plugin should have an INSTALL file for itself. When they don't it's a
fixable bug you can contribute without programming. So, yes, please, we want
patches coming through the list :-) It is easier for us to review those files
than to write them from scratch. So we would thank a lot such contribution.
(imagine if you provide source patches! :-) )
I just commited (r15120) an INSTALL file for 'spatialization' which you can use
as example for the others which i guess will be simpler but with different
dependencies. Few plugins that have INSTALL file is just a notice about the
required files to run the examples so they should be updated as well being that
a section at the end.
> Re: Expression plugin (depends on boost.spirit v2.3)
> Is the CLAM project using particular versions of each dependent
> library? If so, where can I find a list of these to use? If not, are
> newer versions being included arbitrarily? And why?
There are many dependencies in clam. The reason why some dependencies require
some versions is because those 3rd party libraries change their API and we
have to decide whether we should stick with the old one or eventually jumping
to the new one. These years we dealed with api jumps with qt, boost, xercesc,
sndfile, portaudio...
We try to use the newer apis as they become conveniently available (official
packages) for most of the platforms. Our rule of thumb: when the new api is
availabe to the latests stable release in our main platform (ubuntu) we take a
look to the other supported platforms (which normally are faster) and if they
are ready, we jump.
For the expression plugin, the author (hello Dirk) required a version of boost
that was not ready for ubuntu at the moment, and that's why he took care of
explaining how to compile it from sources and he provided jaunty backports
(from karmic, unreleased at that time). Maybe that note is not relevant
anymore, such version and newer ones are widely available in most distros.
If you have any suggestion on how to improve the whole thing, please make us
know.
David.
--
David García Garzón
(Work) david dot garcia at upf anotherdot edu
http://www.dtic.upf.edu/~dgarcia
More information about the clam-devel
mailing list