wxWidgets/docs/msw/gtk.txt
Vadim Zeitlin 5b608795d4 Use "MSW" and "Windows" more accurately to avoid confusion.
"MSW" is used as the name of toolkit using the standard Windows UI while
"Windows" is the name of the OS under which wxGTK can be now used too (in
addition to wxMSW).

This terminology is not perfect but at least let's keep it unambiguous.

Closes #15328.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74502 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-13 20:07:51 +00:00

98 lines
3.3 KiB
Plaintext

Building wxGTK port with Win32 GDK backend
------------------------------------------
GTK+ widget toolkit has multiple GDK backends and one of them is Win32.
It is a wrapper around Windows API.
See http://www.gtk.org/download/win32.php
These notes don't consider building wxGTK with X11 backend under Windows.
Building steps:
1. wxGTK/Win32 build is similar to wxMSW one and you should have configured
and be able to build wxWidgets as described in docs/msw/install.txt
2. wxGTK/Win32 is disabled by default in wxWidgets, you need to enable it
in bakefiles manually. TOOLKIT variable should not be a constantly MSW
for required bakefile formats.
diff build/bakefiles/config.bkl build/bakefiles/config.bkl
--- build/bakefiles/config.bkl
+++ build/bakefiles/config.bkl
@@ -67,9 +67,9 @@
</if>
<!-- We must make TOOLKIT a constant under Windows -->
- <if cond="FORMAT in ['borland','mingw','msvc','watcom', 'msvc6prj', 'msvs2003prj', 'msvs2005prj', 'msvs2008prj']">
+ <!--if cond="FORMAT in ['borland','mingw','msvc','watcom', 'msvc6prj', 'msvs2003prj', 'msvs2005prj', 'msvs2008prj']">
<set var="TOOLKIT">MSW</set>
- </if>
+ </if-->
</if>
<!--
Regenerate required make/project files:
cd build\bakefiles
bakefile_gen
3. Download GTK+ for Windows and uncompress files in the directory
without spaces in the name. We suppose later that GTK+/Win32 is
in the C:\gtk directory.
http://ftp.gnome.org/pub/gnome/binaries/win32/gtk+/2.24/gtk+_2.24.10-1_win32.zip
4. Building
4.1 If you are using Visual C++ project files you need to setup GTK+ 2 include directories
C:\gtk\lib\include\gtk-2.0
C:\gtk\lib\include\glib-2.0
C:\gtk\lib\include\cairo
C:\gtk\lib\include\pango-1.0
C:\gtk\lib\include\gdk-pixbuf-2.0
C:\gtk\lib\include\atk-1.0
C:\gtk\lib\glib-2.0\include
C:\gtk\lib\gtk-2.0\include
and library directory
C:\gtk\lib\
See http://msdn.microsoft.com/en-us/library/t9az1d21(v=vs.90).aspx
Open solution file in build\msw directory, select "GTK+ Debug" solution
configuration and build the solution. To be sure that everything is as expected
you can build minimal sample.
GTK+ is linked to wxWidgets always as DLL, so C:\gtk\bin directory should be
in %PATH% environment variable before application run.
4.2 You can also build using nmake:
set INCLUDE=C:\gtk\lib\glib-2.0\include\;C:\gtk\lib\gtk-2.0\include\;C:\gtk\include\cairo\;C:\gtk\include\pango-1.0\;C:\gtk\include\gtk-2.0\;C:\gtk\include\glib-2.0\;C:\gtk\include\gdk-pixbuf-2.0\;C:\gtk\include\atk-1.0\;
set LIB=C:\gtk\lib\;
set PATH=C:\gtk\bin\;%PATH%;
nmake -f makefile.vc "TOOLKIT=GTK" "TOOLKIT_VERSION=2"
or with MinGW:
set CXXFLAGS=%CXXFLAGS% -IC:\gtk\include\gtk-2.0
set CXXFLAGS=%CXXFLAGS% -IC:\gtk\include\glib-2.0
set CXXFLAGS=%CXXFLAGS% -IC:\gtk\include\cairo
set CXXFLAGS=%CXXFLAGS% -IC:\gtk\include\pango-1.0
set CXXFLAGS=%CXXFLAGS% -IC:\gtk\include\gdk-pixbuf-2.0
set CXXFLAGS=%CXXFLAGS% -IC:\gtk\include\atk-1.0
set CXXFLAGS=%CXXFLAGS% -IC:\gtk\lib\glib-2.0\include
set CXXFLAGS=%CXXFLAGS% -IC:\gtk\lib\gtk-2.0\include
set CFLAGS=%CXXFLAGS%
set LDFLAGS=%LDFLAGS% -LC:\gtk\lib
set PATH=C:\gtk\bin\;%PATH%;
mingw32-make -f makefile.gcc "TOOLKIT=GTK" "TOOLKIT_VERSION=2"
5. Now you can use wxGTK/Win32 as wxMSW in your applications.