Development
Getting started with Apache OpenOffice development
You are at the start of a long, but very exciting journey! Apache OpenOffice is a large and inclusive project. No matter what your interests are, there is always a place for you here. There are many ways to get started, but the easiest one is to:
Get the source code and start building
Build you own OpenOffice so that you are able to modify things Template:Documentation/Tip
Fix a bug or an annoyance
Pick up your favorite bug/annoyance, and try to fix that. Read how to Contribute a patch via Issue Tracker. Template:Documentation/Tip
Contribute more
When you see that hacking AOO pleases you, it's time to look for bigger tasks, get in contact on IRC or on the mailing list: mailto:ooo-dev@openoffice.apache.org The list is friendly and supportive; the people want to help.
Create an extension
Extensions are easy to write and fun to see in action. You can add features that millions of others will use by using Java, Python, StarBasic, or JavaScript. Find more on Extension development wiki page. The OpenOffice.org UNO component model is quite extensive and can be daunting at first. To help you, there is a comprehensive Development Guide. The easiest way to get started is by using the plugins for Netbeans and for Eclipse. Plus, you can get help from the [mailing list].
Development resources
- Building Guide
- Development Guide
- Opengrok - source browser
- OpenOffice.org API
- Bugtracker
- Environment Variables - a description of handy environment variables used at runtime
- A description of the source directories
- Localization for developers
- Build Bootstrapping
Further reading
- Meet the team on IRC
- Using C++ with OOo SDK
- Tutorials - hacker tutorials to get the hang of the code
- Hacking
- Debugging - for when it all goes wrong
- Contributing Patches - for when you have something to fold back
- Commit Rights - An overview of how to attain commit rights, and what to do with them once you get them
- Tips - misc. hints & tips.
- Compiler versions used by port maintainers and release engineers
- Warning-free Code and Correct C++