Building LibreOffice from an IDE

bjoern bjoern.michaelsen at
Tue Nov 19 04:08:08 PST 2013


so I just pushed:;a=commitdiff;h=ba99e296077e6bc6d6a153d01a45bd9ebe1a1d35

to master. As it says, this allows building LibreOffice conveniently from an
IDE -- kdevelop in this case -- with most of the usual features:

- autocompletion
- building a module from the IDE
- building all of LibreOffice from the IDE
- nondebug and debug build configs for the above
- starting LibreOffice from the IDE
- running unitchecks, slowchecks and subsequentchecks from the IDE

It doesnt yet allow debugging from the IDE, but I guess it wouldnt be too hard to add.

a few canveats:
- autocompletion works, but:
  * you should have a full build before starting with this as otherwise generated
    headers (that is all of UNO) is missing
  * for high level modules, parsing all of the header takes a _lot_ of time,
     once that is done though, it seems to be working rather snappy
- our toplevel with all its "you tell me to do foo, but I rather do
  bar"-wrapping logic, does not handle "make unitcheck slowcheck
  subsequentcheck" correctly, but that needs fixing there.
- building objects for different libraries and targets (with different defines
  and include paths) from one directory isnt something that kdevelop handles
  well, but I dont yet know if that is of realpractical relevance for the
  This is a historic abomination anyway and should be killed with fire, see:

If you want to try it out, do:

 make kdevelop-ide-integration

and open one of the *.kdev4 projects with kdevelop. Note that the kdevelop
specific part of this is a mere ~150 lines of Python (half of that config
templates), so this is a call to arms too:

 You prefer Eclipse, Netbeans, MS Visual Studio, $YOURIDE? 

 Well, then add the same for those IDEs! ;)

TBH I did this mostly to prove a point on how easy it is to get this IDE stuff
out of gbuild, not because I crave to develop LibreOffice in a IDE.

OTOH, now that I see the potential there ...



More information about the LibreOffice mailing list