Difference between revisions of "Installation on Windows"
(→Install the ObjC runtime: also needed under xp) |
|||
(47 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
+ | = Binary installer = | ||
+ | Using the binary [http://www.gnustep.org/experience/Windows.html installer] (created using Nullsoft's [http://nsis.sourceforge.net/Main_Page NSIS]) is the easiest way to get the GNUstep development libraries to your PC. | ||
+ | |||
+ | == Install instructions == | ||
+ | * Download installers from [ftp://ftp.gnustep.org/pub/gnustep/binaries/windows 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. | ||
+ | |||
+ | <small>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 [ftp://ftp.gnustep.org/pub/gnustep/core/ here] and unpack with <code>tar zxf gnustep-examples-1.3.0.tar.gz</code>. To compile/run an example type: | ||
+ | cd examples/gui/GSTest | ||
+ | make | ||
+ | openapp ./GSTest.app | ||
+ | </small> | ||
+ | Have much fun! | ||
+ | |||
+ | == 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 = | = Install Windows GNUstep Manually = | ||
+ | Building and installing GNUstep on windows is a "lengthy but painless process." Below is the detailed recipe. | ||
== Install MinGW == | == Install MinGW == | ||
− | Download MinGW- | + | Download [http://sourceforge.net/project/showfiles.php?group_id=2435&package_id=82721 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 <tt>C:\''xxx''\msys\1.0\mingw</tt> |
− | |||
− | |||
− | (where | + | (where ''xxx'' is the top-level path you want to use, I use Nicola/GNUstep so I install it into <tt>C:\Nicola\GNUstep\msys\1.0\mingw</tt>) |
== Install msys == | == Install msys == | ||
− | Download MSYS-1.0.10 or later from the same site. Install it into C: | + | Download MSYS-1.0.10 or later from the same site. Install it into <tt>C:\''xxx''\msys\1.0</tt> |
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. | 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 == | == Install msys developer toolkit == | ||
− | Download msysDTK-1.0.1 or later from the same site. Install it into | + | Download msysDTK-1.0.1 or later from the same site. Install it into <tt>C:\''xxx''\msys\1.0</tt> |
− | |||
− | |||
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. | 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. | ||
Line 25: | Line 48: | ||
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. | 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 | + | In windows, go to 'Start → All Programs → mingw → MSYS → Msys'. |
− | |||
The MINGW32 window appears. | The MINGW32 window appears. | ||
Line 38: | Line 60: | ||
=== Release tarball === | === 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\ | + | 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 | 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 | tar zxf gnustep-startup-0.16.1.tar.gz | ||
+ | |||
+ | <p style="color:red; background-color:yellow;">After these steps you have the most recent installation instructions in the file 'core/make/Documentation/README.MinGW'</p> | ||
== Install GNUstep make == | == Install GNUstep make == | ||
cd gnustep/core/make | cd gnustep/core/make | ||
− | ./configure --with-layout= | + | ./configure --with-layout=fhs |
make | make | ||
make install | make install | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Install the ObjC runtime == | == Install the ObjC runtime == | ||
Line 65: | Line 80: | ||
First make sure to delete the old libobjc files | 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. | Then get GNUstep's libobjc and install it. | ||
Line 78: | Line 94: | ||
== Reinstall GNUstep make (with ObjC this time) == | == 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 | cd ~/install/gnustep/core/make | ||
make distclean | make distclean | ||
− | ./configure --with-layout= | + | ./configure --with-layout=fhs |
make | make | ||
make install | make install | ||
Line 132: | Line 148: | ||
:zlib-1.2.2-lib.zip | :zlib-1.2.2-lib.zip | ||
− | from http://gnuwin32.sourceforge.net, and install them. To install them, simply unzip them into ' | + | from http://gnuwin32.sourceforge.net, and install them. To install them, simply unzip them into <tt>C:\''xxx''\msys\1.0\mingw</tt>. |
== Install XML support == | == Install XML support == | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Download the latest version of libxml from [ftp://xmlsoft.org/libxml2/]. | Download the latest version of libxml from [ftp://xmlsoft.org/libxml2/]. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
./configure | ./configure | ||
make | make | ||
make install | make install | ||
− | < | + | |
+ | <p style="color:red; background-color:yellow;">Do not install libxslt. It is broken on Windows.</p> | ||
== Install GNUstep base == | == Install GNUstep base == | ||
− | + | Enter the gnustep-base directory, and type | |
− | |||
cd ~/install/gnustep/core/base | cd ~/install/gnustep/core/base | ||
./configure | ./configure | ||
Line 200: | Line 168: | ||
If you didn't install libxml, | If you didn't install libxml, | ||
− | |||
./configure --disable-xml | ./configure --disable-xml | ||
make | make | ||
Line 224: | Line 191: | ||
:libpng-1.2.8-lib.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 ' | + | The process is always the same: download the zip file from the gnuwin32 website, then unzip them into <tt>C:''xxx''\msys\1.0\mingw</tt>. |
== Install GNUstep gui == | == Install GNUstep gui == | ||
Line 236: | Line 203: | ||
== Install GNUstep back == | == Install GNUstep back == | ||
− | + | cd to core/back and type: | |
./configure | ./configure | ||
Line 245: | Line 212: | ||
go in a simple gui application (examples/gui a very good starting point), compile and run it. :-) | 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'' | ''based on a mail from Nicola Pero'' | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
= GNUstep MSI installer created by [http://wix.sourceforge.net/ WiX] = | = GNUstep MSI installer created by [http://wix.sourceforge.net/ WiX] = | ||
Line 271: | Line 229: | ||
* 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. | ||
Line 323: | Line 281: | ||
=== Checkout gnustep.wxs === | === Checkout gnustep.wxs === | ||
=== overview of gnustep.wxs === | === overview of gnustep.wxs === | ||
+ | |||
+ | [[Category:Microsoft Windows]] |
Latest revision as of 21:27, 9 December 2013
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:
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.3.0.tar.gz
. To compile/run an example type:
cd examples/gui/GSTest make openapp ./GSTest.app
Have much fun!
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:
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.