The GNUstep suite consists of the core packages, the development tools and some auxiliary libraries. You can see a representation of how they are related on the library map.
The core packages of libraries and tools are the basis of GNUstep. There are four parts at present: makefiles, base library, GUI library and the back-end. All four are available in the Startup package from the downloads pages.
- Make: The GNUstep Makefile Package is a configuration system and set of rules that makes compilation of GNUstep source as easy as simply listing the files.
- Base Library: Our base library implements the FoundationKit part of the OpenStep specification.
- GUI Library: This implements the ApplicationKit from the OpenStep spec.
- Backend: The back-end provides a small set of functions used by the GUI library to interface to the actual window system (X11, etc). It also has a drawing engine which emulates common PostScript functions.
- GNU Objective-C Compiler (GCC): To produce applications, we compile source code to make executable binaries. The GNU C compiler has supported Objective-C for years, and it has been ported to almost every operating system.
- GNU Debugger (GDB): GDB version 6.0, and higher, supports debugging Objective-C code natively. See our instructions for Objective-C debugging with gdb.
- ProjectCenter: Good development systems always build on project management. Project Center lets you search, edit, debug and design your applications and libraries with a range of tools.
- Gorm: The Graphical Object Relationship Modeller lets you graphically design a user interface for your application.
- A list of currently available libraries and frameworks can be found here.
- GNUstep Database Library Version 2 (GDL2)
- GNUstep Web Applications Framework (GSWeb): The GNUstepWeb library is a logic extension of the GNUstep project designed to be compatible with NeXT's WebObjects 4.x.
Foundation Extensions Library (extensions)
This library contains some classes and extensions that are not required for GNUstep, but provide some useful functions none the less.
An alternate implementation of FoundationKit. libFoundation is more slim than gnustep-base, but still lacks several features of Foundation. It implements some extensions to Foundation that are also available separately for use with gnustep-base.