Difference between revisions of "Installation on Windows"
Line 219: | Line 219: | ||
* answer following questions. | * answer following questions. | ||
* Test the installation. | * Test the installation. | ||
− | == Prepare your gnustep | + | == Prepare your Win32 gnustep WiX packaging environment == |
=== List of depended software === | === List of depended software === | ||
* WiX Win32 MSI package creation tool. | * WiX Win32 MSI package creation tool. |
Revision as of 15:21, 30 November 2007
GNUstep .exe installer using Nullsoft's NSIS
Using the binary installer is the easiest way to get the GNUstep development libraries to your PC. Unfortunately the releases are very sporadic.
Install instructions
- Download gnustep installer and run it.
- 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 Development → MSYS for GNUstep" and begin programming.
To start you could download the gnustep examples package:
svn co svn://svn.gna.org/svn/gnustep/modules/usr-apps/examples
alternatively download the gnustep-example package from here and unpack with tar zxf gnustep-examples-1.1.0.tar.gz
. To compile/run an example type:
cd examples/gui/GSTest make openapp ./GSTest.app
Have much fun!
Install Windows GNUstep Manually
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:
mkdir install cd install svn co svn://svn.gna.org/svn/gnustep/modules/core
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
cd ~/install #or where you put it tar zxf gnustep-startup-0.16.1.tar.gz
After these steps you have the most recent installation instructions in the file 'core/make/Documentation/README.MinGW'
Install GNUstep make
cd gnustep/core/make ./configure --with-layout=fhs make make install
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
rm -Rf /mingw/lib/gcc/mingw32/3.4.2/include/objc rm -Rf /mingw/lib/libobjc.a rm -Rf /mingw/lib/libobjc.la
Then get GNUstep's libobjc and install it.
svn co svn://svn.gna.org/svn/gnustep/modules/dev-libs/libobjc cd libobjc make make install
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:
cd ~/install/gnustep/core/make make distclean ./configure --with-layout=fhs make make install
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:
cd ~/install tar -zxvf ffcall-1.10.tar.gz cd ffcall-1.10 ./configure
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:
configure: creating ./config.status config.status: creating Makefile config.status: creating config.h
Type the following:
make make install
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
Alternatively, a zip containing a precompiled copy of ffcall-1.9 is availabe here: ftp://ftp.gnustep.org/pub/gnustep/binaries/windows/mingw-libs/ffcall-1.9-gnustep.zip
Unzip it into $GNUSTEP_SYSTEM_ROOT/Library.
Install additional libs
Download the following packages:
- libintl-0.11.5-2-bin.zip
- libintl-0.11.5-2-lib.zip
- libiconv-1.9.2-1-bin.zip
- libiconv-1.9.2-1-lib.zip
- zlib-1.2.2-bin.zip
- zlib-1.2.2-lib.zip
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 [1].
./configure make make install
Do not install libxslt. It is broken on Windows.
Install GNUstep base
Enter the gnustep-base directory, and type
cd ~/install/gnustep/core/base ./configure make make install
If you didn't install libxml,
./configure --disable-xml make make install
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:
cd ~/install/gnustep/core/gui ./configure make make install
Install GNUstep back
cd to core/back and type:
./configure make make install
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
export GNUSTEP_MAKEFILES=/usr/local/share/GNUstep/Makefiles
before compiling.
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.
Install GNUstep MSI installer
- Download the msi from here.
- answer following questions.
- Test the installation.
Prepare your Win32 gnustep WiX packaging environment
List of depended software
- WiX Win32 MSI package creation tool.
- candle.exe
C:\tmp>candle Microsoft (R) Windows Installer Xml Compiler version 2.0.4221.0 Copyright (C) Microsoft Corporation 2003. All rights reserved. usage: candle.exe [-?] [-nologo] [-out outputFile] sourceFile [sourceFile ...] -d<name>=<value> define a parameter for the preprocessor -p<file> preprocess to a file (or stdout if no file supplied) -I<dir> add to include search path -nologo skip printing candle logo information -out specify output file (default: write to current directory) -pedantic:<level> pedantic checks (levels: easy, heroic, legendary) <snip> For more information see: http://wix.sourceforge.net C:\tmp>
- light.exe
C:\tmp>light Microsoft (R) Windows Installer Xml Linker version 2.0.4221.0 Copyright (C) Microsoft Corporation 2003. All rights reserved. usage: light.exe [-?] [-b basePath] [-nologo] [-out outputFile] objectFile [o jectFile ...] -ai allow identical rows, identical rows will be treated as a warning -au (experimental) allow unresolved references, will not create a val d output -b base path to locate all files (default: current directory) -cc path to cache built cabinets (will not be deleted after linking) <snip> For more information see: http://wix.sourceforge.net C:\tmp>
- makefile for nmake.
- gcc win32 compiler from MingW.