[Kde-accessibility] [Accessibility] Re: Common Public License (CPL)
Olaf Jan Schmidt
ojschmidt at kde.org
Mon Mar 6 10:13:36 CET 2006
[ Olaf Jan Schmidt ]
> You cannot use Epos or espeak in the same process as the IBM speech engine,
> because the license of proprietary libraries is incompatible with
> GPL-licensed speech engines. You also cannot link to a proprietary library
> from LGPL-licensed code (only the other way around)
I used misleading words for my comments, so I am trying again.
But please keep in kind that I am not a lawyer. I am trying to summaries my
understanding of the FSF's position, but I might be wrong. I am not writing
this to to give legal advice. I only wanted to explain why a stub library
(even BSD-licensed) would not work in this case, and why a common API for
speech engine drivers makes sense.
If you make free software dependent on a proprietary library, then it cannot
legally be distributed under the LGPL or GPL, at least according to the FSF.
Lawrence Rosen says that you can link to all libraries without legal problems,
which would mean that the GPL and the LGPL are more or less equal. But if the
FSF is right, then the LGPL only allows you to create a proprietary
application "that uses" the API of a LGPL library, not the other way around.
There are some exceptions:
a) The proprietary library is usually distributed with the operating system.
b) The library is dual- or triple-licensed (like Qt).
c) The author of the (L)GPL'ed code adds an exception clause to the GPL, as
KDE has done for Qt in the past. In the case of gnome-speech, this exception
can be assumed to be implied (as was the case for the first KDE
d) There is a GPL-compatible implementation of the API available, in addition
to the proprietary implementation. This could be the common driver API for
speech engines that I am suggesting.
In the last case, you are allowed to staticly link the software to the
proprietary library, but then you cannot distribute the resulting binary
under terms of the (L)GPL. You can also dynamically link the application to
the GPL-compatible binary and distribute it to someone who runs it with the
proprietary library, but you cannot legally combine them into a
pre-configured joint distribution.
Because of these additional hassles for distributors, it is a much cleaner
architecture to run the various speech engines in separate processes.
Olaf Jan Schmidt, KDE Accessibility co-maintainer, open standards
accessibility networker, Protestant theology student and webmaster of
http://accessibility.kde.org/ and http://www.amen-online.de/
More information about the kde-accessibility