- Installation on Windows
- From GNUstepWiki
- Contents
- Binary installer
- Install instructions
- Installer Troubleshooting
- Install Windows GNUstep Manually
- Install MinGW
- Install msys
- Install msys developer toolkit
- Download gnustep
- Via subversion
- Release tarball
- Install GNUstep make
- Install the ObjC runtime
- Reinstall GNUstep make (with ObjC this time)
- Install ffcall
- Precompiled library
- Install additional libs
- Install XML support
- Install GNUstep base
- Install additional GUI libs
- Install GNUstep gui
- Install GNUstep back
- Check the installation
- GNUstep MSI installer created by WiX
- Gnu on windows installer
- Introduction
- Download
- Applications, Frameworks and other Libraries
- Packaging Your Own Applications
- Developers
- Troubleshooting
- State
Installation on Windows
From GNUstepWiki
Contents
Binary installer
Using the binary installer (created using Nullsoft’s NSIS) is the easiest way to get the GNUstep development libraries to your PC.
Install instructions
- Download installers from the ftp site (i.e. gnustep-msys-system-0.X.X-setup.exe + gnustep-core-0.X.X-setup.exe) and run them.
- Also download gnustel-devel-X.X.X-setup.exe if you want to compile applications.
- select install binaries
Now you have an MSYS environment (minimal GNU with shell and basic programs). You can start the shell via «Start → Programs → GNUstep → Shell» and begin programming.
To start you could download the gnustep examples package:
alternatively download the gnustep-example package from here and unpack with tar zxf gnustep-examples-1.3.0.tar.gz . To compile/run an example type:
Installer Troubleshooting
- I installed gnustep-msys-system and tried to start Shell, but nothing happened (or I got an error).
There could be a number of issues here
- Try to reinstall (uninstall gnustep-msys-system and install again)
- Do you have a previous CYGWIN install? Remove it and any CYGWIN environment variable
- You might need to rebase the msys.dll. Instructions coming soon.
Install Windows GNUstep Manually
Building and installing GNUstep on windows is a «lengthy but painless process.» Below is the detailed recipe.
Install MinGW
Download MinGW (MinGW-5.1.3.exe or later) (cygwin works with a little tweaking; see talk page) from http://sourceforge.net/projects/mingw Install it into C:\xxx\msys\1.0\mingw
(where xxx is the top-level path you want to use, I use Nicola/GNUstep so I install it into C:\Nicola\GNUstep\msys\1.0\mingw)
Install msys
Download MSYS-1.0.10 or later from the same site. Install it into C:\xxx\msys\1.0 The postinstall script should ask you for the mingw location, then detect it and be happy that it’s there and all is setup properly.
Install msys developer toolkit
Download msysDTK-1.0.1 or later from the same site. Install it into C:\xxx\msys\1.0
Now your MSYS/MinGW system should be setup! Go around and make sure you know how to use the Unix-like shell. Log into it and work in it.
Download gnustep
Via subversion
If you have a copy of SVN (http://subversion.tigris.org/) installed on your system and want to have the most up-to-date version just being worked on, do the following.
In windows, go to ‘Start → All Programs → mingw → MSYS → Msys’. The MINGW32 window appears.
Type the following:
This will download the core GNUstep libraries (make, base, gui and back).
Release tarball
Otherwise download from the main site http://www.gnustep.org (or ftp://ftp.gnustep.org/pub/gnustep/core/) the file gnustep-startup-x.yy.z.tar.gz. It contains the core libraries. Put it somewhere in your MSYS home folder, i.e. under C:\xxx\msys\1.0\home\Nicola\install
To unpack the file type the following into the MSYS window
After these steps you have the most recent installation instructions in the file ‘core/make/Documentation/README.MinGW’
Install GNUstep make
Install the ObjC runtime
Actually, recent versions of gcc (3.2+) have a working libobjc on Windows. Nevertheless this step is necessary unless you want some strange errors concerning NSAutoreleasePool etc.
First make sure to delete the old libobjc files
Then get GNUstep’s libobjc and install it.
If you don’t use SVN, download gnustep-libobjc from ftp://ftp.gnustep.org/pub/gnustep/libs/
Reinstall GNUstep make (with ObjC this time)
Enter the core/make directory and reconfigure/recompile again so that gnustep-objc is detected:
gnustep-make should have detected your custom libobjc.
Install ffcall
Download ffcall from the GNUstep website into c:/xxx/msys/1.0/home/Nicola/install or from here: ftp://ftp.santafe.edu/pub/gnu/ffcall-1.10.tar.gz, and type:
A windows prompt may appear (several times) stating that conftest.exe has encountered a problem and needs to close. Click the [Don’t Send] button.
After much output, the following will be displayed:
Type the following:
Note: The configure script of ffcall-1.10 is broken for Windows 2000. You have to apply a patch: http://lists.gnu.org/archive/html/discuss-gnustep/2005-03/msg00258.html
Precompiled library
Unzip it into $GNUSTEP_SYSTEM_ROOT/Library.
Install additional libs
Download the following packages:
from http://gnuwin32.sourceforge.net, and install them. To install them, simply unzip them into C:\xxx\msys\1.0\mingw.
Install XML support
Download the latest version of libxml from ftp://xmlsoft.org/libxml2/.
Do not install libxslt. It is broken on Windows.
Install GNUstep base
Enter the gnustep-base directory, and type
If you didn’t install libxml,
Install additional GUI libs
for the gui, download and install the following packages:
jpeg-6b-3-bin.zip jpeg-6b-3-dep.zip jpeg-6b-3-lib.zip
tiff-3.7.1-bin.zip tiff-3.7.1-dep.zip tiff-3.7.1-lib.zip
libpng-1.2.8-bin.zip libpng-1.2.8-dep.zip libpng-1.2.8-lib.zip
The process is always the same: download the zip file from the gnuwin32 website, then unzip them into C:xxx\msys\1.0\mingw.
Install GNUstep gui
Type the following:
Install GNUstep back
cd to core/back and type:
Check the installation
go in a simple gui application (examples/gui a very good starting point), compile and run it. 🙂
Some older makefiles may require that you type
based on a mail from Nicola Pero
GNUstep MSI installer created by WiX
There are three sub packages
- user : To minimize the footprint of gnustep system on Windows machines.
- developer : include WiX,gcc and package sources.
- gnustep applications : include a broad suite of GNUstep applications.
Gnu on windows installer
This page describes the installer for loading GNUstep on Windows systems and various other apps that have an installer for Windows. After installing the GNUstep Windows installer, you will have a complete system for compiling and running GNUstep applications.
Introduction
The GNUstep Windows installer is based on the MinGW system and consists of the basic MSYS and MinGW libraries, other library dependancies and the GNUstep Core packages (gnustep-make, gnustep-base, gnustep-gui, and gnustep-back.) The installer installs GNUstep onto most varieties of Windows (see below for tested installations) and sets up the computer to make it easy to run GNUstep applications. It was created with the NSIS installer.
Read the Release Notes for the current packages.
We recommend you uninstall any previous installers first so you don’t have extra unecessary files hanging around, although this is not necessary (although make sure you kill the gdnc and gpbs processes if you don’t use the uninstaller). The installer has been tested on Window 7, XP and Win 2K and 10. It also works on 64-bit systems. Administrator access may be needed to install. It also only sets things up correctly for the current user, not for any other users on the system. Please report any other bugs or issues to us.
Download
For the full environment for compiling and running GNUstep. Install the following packages in order. First install the gnustep-msys-system package, which contains all the packages required to run GNUstep (shell, graphics libraries, etc). Then install gnustep-core, which contains the core GNUstep libraries. If you want to compile and develop your own GNUstep applications, also install the gnustep-devel package.
Package | Required? | Stable | Unstable | Notes |
---|---|---|---|---|
GNUstep MSYS System | Required | 0.30.0 | — | MSYS/MinGW System |
GNUstep Core | Required | 0.35.0 | — | GNUstep Core |
GNUstep Devel | Optional | 1.4.0 | — | Developer Tools |
GNUstep Cairo | Optional | 0.35.0 | — | Cairo Backend |
ProjectCenter | Optional | 0.6.2-35 | — | IDE (Like Xcode, but not as complex) |
Gorm | Optional | 1.2.22-35 | — | Interface Builder (Like Xcode NIB builder) |
Applications, Frameworks and other Libraries
This is just a sample of GNUstep applications that can be packaged on Windows. Please request additional ones if you are interested. Note that application installers will only work with the GNUstep installers they have been compiled against. Do not try to install an application unless you know it is compatible with a particular GNUstep installation.
For the 0.34.0 series:
Packaging Your Own Applications
- First download and install the NSIS installer
- Edit the top-level makefile of your project and add the line: Also be sure to define PACKAGE_NAME and VERSION in the makefile.
- In an MSYS Shell, go to your project and do the following
- Compile your app: make
- Create the nsis script: make nsis
- Now in Windows navigate to your project folder, right-click on the resulting .nsi file, and select the «Compile NSIS Script» option
- That’s all!
Developers
The installer sources are located in SVN at:
Please send any patches or improvements to the normal bugs locations.
Troubleshooting
Q: I tried to test the installation by running Shell, but it pops up for a second then dies.
A: Do you have cygwin installed on the machine as well? That sometimes conflicts with the mingw libraries. It’s also possible that some antivirus software is causing problems. It might be easier if you could try to see the error message that occurs before the window disappears. Probably the best way is to start a Windows CMD window:
It might be possible to solve the issue by running the rebase command. You can download from here:
and in the same CMD window try something like
State
Jul 22, 2016 : New Gorm binaries
Jul 5, 2016 (0.35.0): New stable release cairo backend, gorm and ProjectCenter
Jun 19, 2016 (0.35.0): New stable release of the core libraries
Jan 9, 2014 (0.34.0): New stable release of the core libraries and cairo backend.
Dec 6, 2013 (0.33.0): New snapshot release of the core libraries and cairo backend. Be sure to read the notes in the README file.
Aug 21, 2012 (0.31.0): New snapshot release of the core libraries. Brand new cairo backend release — this has been fixed up by Marcian Lytwyn and works great now! Be sure to read the notes in the README file though.
Jul 14, 2012 (0.30.0): Fixed a compilation bug by adding -fno-omit-frame-pointer to jpeg and the GNUstep GUI library. This could cause crashes on XP and other previous Windows releases.
Feb 17, 2012 (0.29.1): New stable releases of GNUstep core libraries
Nov 22, 2011 (0.29.0): Updated MinGW to Nov 2011 toolchain. Includes GCC 4.6. GNUstep Core includes the ObjC-2 library as well, so this release has mostly complete Objective-C 2.0 support. Core libraries updated to latest SVN as of Nov 2011.
Apr 23, 2011: Fix issue with icu library in gnustep-msys-system.
Apr 20, 2011: Updated gnustep-core with the latest core libraries
Apr 11, 2011: Updated gnustep-msys-system with new openssl 1.0.0 library. Fixes issue using ssh (in gnustep-devel package).
Feb 20, 2011: Completely new mingw installation based on the mingw-get package manager. Files are now installed in different locations to better match the MinGW default layout. Although as a practical matter this doesn’t change much, as the files can still be accessed the same way inside the msys shell, due to mount points. And files locations don’t matter much anyway when used with GNUstep apps. Also added libao, libsndfile and icu libraries. gnustep-core contains a recent snapshot release of the GNUstep source code. (Version 0.27.0)
Jul 15, 2010: Rebased msys-1.0.dll in gnustep-msys-system which might cure problems some people have starting a Shell, etc. m4 (gnustep-msys-system) and autoconf (gnustep-devel) were upgraded and now work. (Version 0.25.X)
May 20, 2010: gnustep-devel-1.1.0 Includes the gcc compiler which was previously in gnustep-msys-system.
May 14, 2010: The gnustep system package was renamed to gnustep—msys-system (gnustep-msys-system-0.25.0). gnustep-core-0.25.0 has updated core libraries.
Apr 22, 2010: gnustep-core-0.24.3 adds some files that were mistakenly left out.
Apr 19, 2010: gnustep-system-0.24.2 has updated MSYS and MinGW packages. gnustep-code-0.24.2 is a preview release. It’s not an official release, just the latest code from SVN. It includes the new WinUXTheme which can be activated via the installer.
Oct 28, 2009: gnustep-system-0.24.0 is a new system installer with all new MinGW libraries, GCC 4.4 and pthreads. There’s no core installer for this, so this is only for people who want to compile the latest GNUstep code from SVN themselves.
Aug 27, 2009: gnustep-core-0.23.1 Includes the latest updates to the core libraries.
May 26, 2009: gnustep-system-0.23.0 Now has the crypt library, which was formerly in the gnustep-cairo package. gnustep-core-0.23.0 has the latest release of the core libraries.
Feb 19, 2009: A new developer tools package was released that includes useful tools for developing with GNUstep. These include ssh, svn and cvs for getting source code, as well as autoconf, libtool and other developer tools. Also, we’ve make a Cairo Backend available. Don’t use it though. It does not work. However, if you are itching to figure out why it doesn’t work, this package will give you everything you need to install and start debugging!
Dec 22, 2008: The system package has been upgraded to the latest MSYS/MinGW release (as of around Sep 19, 2008), which is rumored to work better on Vista. It also includes a few more libraries such as openssl and gnutls which can be used by GNUstep Base. The 0.22.0 release of the core installer includes the latest core packages (Make 2.0.7, Base 1.18.0, GUI 0.16.0, Back 0.16.0). We have also switch to using libffi instead of ffcall. This is a stable releases for Windows, so future releases in this series should be binary compatible with this one. You may need to recompile/reinstall any GNUstep applications based on older releases.