The GNUstep Suite
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.
Licensing
GNUstep's libraries are licensed under LGPL2.1, or later; and the applications are under the GPLv3, or later.
The Core
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.
- GNUstep Makefile Package
- 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.
- GNUstep Base Library
- Our base library implements the FoundationKit part of
the OpenStep specification.
- GNUstep GUI Library
- This implements the ApplicationKit from the OpenStep spec.
- GNUstep Back-end
- 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.
Development Tools
- 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 6.0+ supports debugging Objective-C code natively. See our instructions for Objective-C debugging with gdb
- Test suite (testsuite)
- The GNUstep testsuite (available from the subversion repository) provides
regression testing scripts which can be run under both GNUstep and Mac-OSX to
check that the functionality implementated by the core GNUstep libraries is
complete and matches OSX behavior.
Anyone wishing to contribute code to the core libraries should start by familiarising themselves with the testsuite and contributing tests. - 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.
Auxiliary Libraries
- GNUstep Database Library Version 2 (GDL2) (see )
- GNUstep Web Applications Framework (GSWeb) (see www.gnustepweb.org)
- GNUstep WebServices (GSWS)
Other Projects
- 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.
- libFoundation
- 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.
