PDA

View Full Version : LGPL and distributing QT database drivers



BitRogue
6th July 2011, 13:07
I'm building an app which relies heavily on the QOCI Oracle database driver which is distributed in the non-free version of QT, since the QOCI dirver is not distributed with the free version. The QOCI driver, I have noticed according to the source code, is considered LGPL.

The app I'm building will, to all intents and purposes, be considered free software, Im building it in my own time for non profit purposes. Once its stable enough, I will probably put it on GITHub and open it up for collaboration if anyone takes an interest. And also, probably, I would like to have a website where people can download pre-built or compilable versions of it.

How does the LGPL licence allow me to bundle the QOCI driver with my distribution package? I've tried getting my head around the requirements, but most of the jargon is targeted at commercial value, which Im staying away from. Basically, none of it makes sense, Im just looking at keeping things as simple as possible, both for me, the developer, and for any users out there who feel inclined to use it.

mcosta
6th July 2011, 17:55
I'm NOT a lawyer but IMHO there are things to take in count:

The QOCI driver sources are available in LGPL Qt version, so you can compile it
Using "plugin" paradigm you don't link directly the OCI client, so you can use in commercial software
QOCI depends on OCI client (oci.dll or libclntsh.so)


So you can deploy compiled QOCI driver but you have to deploy OCI client too.
You must check if you can provide the OCI client in your installation KIT

BitRogue
6th July 2011, 23:41
So let me get this straight, to distribute the QOCI plugin, I would have to distribute libclntsh (on linux) and oci.dll (on windows) bundled up in my tarball? These are proprietary files belonging to Oracle and they would sue me through nine hells if they caught me distributing pieces of their software.

The thing is though, there's typically no need to bundle them because anyone who would be interested in running the app will probably already have an Oracle client of some sort installed, even if its the Oracle Instantclient, which is free to download from Oracle's site anyway. But what very few people have is the QT OCI driver, and thats the main part Im worried about. If I can't give that out, then I might as well stop development. Its dead in the water. (Or at least its time to brush up on my OCI api skills and code my own driver, painful as that sounds)

mcosta
7th July 2011, 07:40
No,

what I said means that the problem should be to dstribuite OCI libraries. So you need to specify that the user have to install it by himself.

BitRogue
7th July 2011, 09:32
OK, I see what you are saying now. Thanks. So in theory it should be fine for me to distribute the QOCI plugin object/source but need to make it clear that they will need the Oracle appropriate files installed in order for the app to work or compile against.

Thanks for your input. I will study up a bit further on this, but it gives me a good basis to go forward on.