gpsimWin32
gpsim native WIN32 port
Introduction
This document describes how to compile and install gpsim on WIN32 platforms.
Gpsim can be compiled in a CLI - command line interface mode (no gui), or in
GUI - graphical user interface mode.
Which tools are required, where to get them
Native WIN32 gpsim port can be compiled with
- MinGW gcc or
Cygwin
gcc -mno-cygwin compiler using makefile.mingw make files ("Official" builds)
or with
- Microsoft Visual Studio .NET 2003 using VS .NET project files
Some additional GNU tools are required to build gpsim:
- bison (or some other yacc compatible parser generator)
- flex (or some other lex compatible lexical analyzer generator). The
recommended flex version is 2.5.4.
- gawk (or some other awk compatible interpreter)
- GNU make for MinGW compilation
The recommended installation for bison, flex and gawk is from
Cygwin environment. The other possibility
is to use nativeWIN32 ports of bison, flex and gawk, which are part of
UnxUtils project
and GnuWin32 project.
Cygwin environment is required (or at least recommended) for WIN32 native
compilation of additional packages.
How to set up development environment for WIN32 port of gpsim
Cygwin installation:
Select DOS as the Default Text File type. In the Devel Category
select bison, flex, gawk, make, gcc, gcc-g++, gcc-mingw-core and gcc-mingw-g++
packages.
You have to have C:\cygwin\bin specified in the PATH environment variable, but I
think that this is done by default from the Cygwin installation.
In Microsoft Visual Studio .NET 2003 select Tools/Options...
In the Options dialog select Projects VC++ Directories and add C:\cygwin\bin
path.
Which additional packages are required, where to get them,
how to to install them
CLI (supported only by VS .NET
compilation):
The CLI WIN32 version of gpsim requires 2 additional packages: popt and glib.
GUI:
The GUI WIN32 version of gpsim requires the following additional packages, in
addition to popt and glib, mentioned in the CLI section:
- readline - The
Readline
library provides a set of functions for use by applications that allow users
to edit command lines as they are typed in.
- gtkextra-2 - GtkExtra is a
useful set of widgets for creating GUI's for the Xwindows system using GTK+.
You can use it complementary to GTK+ and it is written in C. It is also Free
Software and released under the LGPL license.
- pthreads - The
pthreads-win32 package implements Posix Threads on Win32. Note, pthreads are only currently used in modules and in particular the usart module.
-
pthreads-*-*-*.exe: sources, header files, static
libraries and DLLs, required for gpsim modules development and by gpsim
modules runtime.
The WIN32 ports of following packages are a part of Tor Lillqvist's GTK+ (and GIMP)
for Windows project.
The latest version of developer, runtime and source packages can be found at
Tor
Lillqvist--GTK+ (and GIMP) for Windows--Downloads.
- gtk - GTK+ is a multi-platform toolkit
for creating graphical user interfaces.
- pango - Pango is a library for layout
and rendering of text, with an emphasis on internationalization. It forms
the core of text and font handling for GTK+-2.0.
- atk - The ATK library provides a set of
interfaces for accessibility.
Setting up the development environment
- Create the gpsim_proj directory for the complete gpsim project
- Create the gpsim subdirectory for the gpsim package and download the
latest gpsim version from
CVS
CLI (supported only by VS .NET
compilation):
- Create the readline subdirectory and extract readline-*-mswin32.zip
into it
- Create the popt subdirectory and extract popt-*-lib.zip
into it
- Create the glib subdirectory and extract
glib-dev-*.zip
into it
- For the development of CLI mode, only header files from glib package
are required. The only functionality needed from the library for the
command line mode is slist (Singly-Linked Lists), which is currently
replaced with the implementation in plat/win32/glist.cpp.
- For the development of GUI mode, the complete glib library is
required.
- Double-click on gpsim.sln to start the Microsoft Visual Studio .NET 2003,
select Debug or Release solution configuration and rebuild the solution.
GUI:
- Execute steps, described in previous CLI section
- Create the gtk+ subdirectory and extract gtk+-dev-*.zip
into it
- Create the pango subdirectory and extract pango-dev-*.zip
into it
- Create the atk subdirectory and extract atk-dev-*.zip
into it
- Create the fontconfig subdirectory and extract fontconfig-dev-*.zip
into it
- Use precompiled
gtk+extra-2.1.1-dev-*.zip:
or compile
gtk+extra-2.1.1-src-*.zip:
- Create the gtkextra-2 subdirectory and extract the content of
gtk+extra-1.1.0 directory from
gtk+extra-2.1.1-src-*.zip
into it
- Go to gtkextra-2\gtkextra directory, run bash and execute
make -f Makefile.win32
create gtkextra-2\lib directory and copy gtkextra-2\gtkextra\libgtkextra-win32-2.0.a
to gtkextra-2\lib\libgtkextra-win32-2.1.lib
- Unpack pthreads-*-*-*.exe self extracting archive
to some directory and copy the contents of the Pre-built directory to pthreads.
-
Compile gpsim native WIN32 port:
-
For MinGW compilation, you have to compile the radline DLL. Run the
shell, go to the readline/win32/shlib subdirectory and execute:
make -f GNUmakefile
Go to the gpsim subdirectory and execute:
make -f makefile.mingw
- For VS .NET compilation double-click on gpsim.sln to start the Microsoft Visual Studio .NET 2003, select Debug GUI or Release GUI solution configuration and rebuild the solution.
gpsim_proj
|
+- gpsim
+- readline
+- popt
+- glib
+- gtk+
+- pango
+- atk
+- gtkextra-2
+- fontconfig
+- pthreads (for modules).
Setting up the runtime
CLI:
- Extract popt1.dll from popt-*-bin.zip
package, bin directory o the same directory where gpsim.exe resides.
- Extract libintl-2.dll from libintl-*-bin.zip
package, bin directory to the same directory where gpsim.exe resides.
- Extract libiconv-2.dll from libiconv-*-bin.zip
package, bin directory to the same directory where gpsim.exe resides.
GUI:
- Extract bin\libglib-2.0-0.dll, bin\libgobject-2.0-0.dll and
bin\libgmodule-2.0-0.dll from
glib-*.zip
package to the same directory where gpsim.exe resides.
- Extract bin\iconv.dll from libiconv-*.bin.woe32.zip
package to the same directory where gpsim.exe resides.
- Extract bin\intl.dll from gettext-runtime-*.zip
package to the same directory where gpsim.exe resides.
- Extract everything in bin directory, complete etc and complete lib
directory from gtk+-*.zip package
to the same directory where gpsim.exe resides.
- Extract bin\libpango-1.0-0.dll and bin\libpangowin32-1.0-0.dll, complete
etc and complete lib directory from
pango-*.zip
package to the same directory where gpsim.exe resides.
- Extract bin\libatk-1.0-0.dll from
atk-*.zip package to the same directory where gpsim.exe resides.
Modules:
- Unpack pthreads-*-*-*.exe self extracting archive
to some directory and copy file Pre-built\lib\pthreadVC1.dll to the same
directory where gpsim.exe resides.
gpsimWin32 snapshots
gpsimWin32 snapshots can be found at http://gpsim.sourceforge.net/snap.php.
Document status
If you have questions / comments / other experiences about WIN32 gpsim port,
post them to the gnupic mailing list: gnupic@linuxhacker.org.
Package versions
Packages from GnuWin32
project:
Packages from Tor Lillqvist's
GTK+ (and GIMP)
for Windows project:
Other packages:
Last update: July 23, 2005 by Borut Ražem
This site is hosted by

|
|