5b608795d4
"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
98 lines
3.3 KiB
Plaintext
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.
|