From 7ff50ac3eb91c1bddb9e4f16f39af9c9ad96a739 Mon Sep 17 00:00:00 2001 From: Chun-wei Fan Date: Mon, 13 Aug 2012 16:14:29 +0800 Subject: [PATCH] Add README.txt files for Visual C++ builds Add instructions to tell people how to build gobject-introspection with Visual C++, especially as there are special steps and additional requirements for a successful build. https://bugzilla.gnome.org/show_bug.cgi?id=681820 --- build/win32/vs10/README.txt | 86 +++++++++++++++++++++++++++++++++++++ build/win32/vs9/README.txt | 86 +++++++++++++++++++++++++++++++++++++ 2 files changed, 172 insertions(+) create mode 100644 build/win32/vs10/README.txt create mode 100644 build/win32/vs9/README.txt diff --git a/build/win32/vs10/README.txt b/build/win32/vs10/README.txt new file mode 100644 index 00000000..a3d97061 --- /dev/null +++ b/build/win32/vs10/README.txt @@ -0,0 +1,86 @@ +Please do not compile this package (gobject-introspection) in paths that contain +spaces in them-as strange problems may occur during compilation or during +the use of the library. + +Please refer to the following GNOME Live! page for more detailed +instructions on building gobject-introsecption and its dependencies +with Visual C++: + +https://live.gnome.org/GTK%2B/Win32/MSVCCompilationOfGTKStack + +This VS10 solution and the projects it includes are intented to be used +in a gobject-introspection source tree unpacked from a tarball. In a git checkout you +first need to use some Unix-like environment, which will do the work for you. + +The required dependencies are Python 2.6 or later, GLib and LibFFI. It is recommended +that GLib is built with Visual C++ 2010 to avoid problems cause by usage of different CRTs + +Please refer to the README.txt file in $(GLib_src_root)\build\win32\vs10 on how to build +GLib using Visual C++ 2010 + +For LibFFI, please get version 3.0.10 or later, as Visual C++ build support +was added in the 3.0.10 release series. Please see the README file that +comes with the LibFFI source package for more details on how to build LibFFI +on Visual C++-please note that the mozilla-build package from Mozilla is needed +in order to build LibFFI on Windows. + +For Python, retrieving the official Windows binaries for 2.6 or later from +http://www.python.org will do the job-be sure that the Python version that +you downloaded matches the configuration of your build (win32 or x64/amd64). + +For building the Regress test project, cairo (and possibly cairo-gobject support) +is needed. + +Set up the source tree as follows under some arbitrary top +folder : + +\ +\vs10\ + +*this* file you are now reading is thus located at +\\build\win32\vs10\README. + + is either Win32 or x64, as in VS10 project files. + +For LibFFI, one should also put the generated ffi.h and ffitarget.h +into \vs10\\include\ and the compiled static libffi.lib +(or copy libffi-convenience.lib into libffi.lib) into +\vs10\\lib\. + +The libintl.h that is used for building GLib needs to be in +\vs10\\include, if not already done so + +You will also need a working GCC/MinGW compiler installation +in order to generate the .gir and .typelib files. One may be +obtained from the mingw or the mingw64 project. + +A working pkg-config tool is also required-it may be obtained from +http://www.gtk.org/download/win32.php [32-bit] +http://www.gtk.org/download/win64.php [64-bit] + +*** Note! *** +Please note that due to numerous possible configurations on Python, some environmental +variables need to be set before launching the gobject-introsection.sln solution file. + +These variables are namely: +PYTHONDIR: Root installation folder of your Python interpretor. + It must match your build configuration (Win32 or x64/amd64) +PKG_CONFIG_PATH: Location of the .pc (pkg-config) files, especially for the GLib .pc files. +MINGWDIR: Root installation folder for your Windows GCC (such as MinGW). +*** End of Note! *** + +The "install" project will copy build results and headers into their +appropriate location under \vs10\. For instance, +built DLLs go into \vs10\\bin, built LIBs into +\vs10\\lib and gobject-introspection headers into +\vs10\\include\gobject-introsection-1.0. + +The generated .gir files will end up in \vs10\\share\gir-1.0 +and .typelib files will end up in \vs10\\lib\girepository-1.0 + +This is then from where +project files higher in the stack are supposed to look for them, not +from a specific gobject-introspection source tree. + +--Tor Lillqvist +--Updated by Chun-wei Fan diff --git a/build/win32/vs9/README.txt b/build/win32/vs9/README.txt new file mode 100644 index 00000000..6872a236 --- /dev/null +++ b/build/win32/vs9/README.txt @@ -0,0 +1,86 @@ +Please do not compile this package (gobject-introspection) in paths that contain +spaces in them-as strange problems may occur during compilation or during +the use of the library. + +Please refer to the following GNOME Live! page for more detailed +instructions on building gobject-introsecption and its dependencies +with Visual C++: + +https://live.gnome.org/GTK%2B/Win32/MSVCCompilationOfGTKStack + +This VS9 solution and the projects it includes are intented to be used +in a gobject-introspection source tree unpacked from a tarball. In a git checkout you +first need to use some Unix-like environment, which will do the work for you. + +The required dependencies are Python 2.6 or later, GLib and LibFFI. It is recommended +that GLib is built with Visual C++ 2008 to avoid problems cause by usage of different CRTs + +Please refer to the README.txt file in $(GLib_src_root)\build\win32\vs9 on how to build +GLib using Visual C++ 2008 + +For LibFFI, please get version 3.0.10 or later, as Visual C++ build support +was added in the 3.0.10 release series. Please see the README file that +comes with the LibFFI source package for more details on how to build LibFFI +on Visual C++-please note that the mozilla-build package from Mozilla is needed +in order to build LibFFI on Windows. + +For Python, retrieving the official Windows binaries for 2.6 or later from +http://www.python.org will do the job-be sure that the Python version that +you downloaded matches the configuration of your build (win32 or x64/amd64). + +For building the Regress test project, cairo (and possibly cairo-gobject support) +is needed. + +Set up the source tree as follows under some arbitrary top +folder : + +\ +\vs9\ + +*this* file you are now reading is thus located at +\\build\win32\vs9\README. + + is either Win32 or x64, as in VS9 project files. + +For LibFFI, one should also put the generated ffi.h and ffitarget.h +into \vs9\\include\ and the compiled static libffi.lib +(or copy libffi-convenience.lib into libffi.lib) into +\vs9\\lib\. + +The libintl.h that is used for building GLib needs to be in +\vs9\\include, if not already done so + +You will also need a working GCC/MinGW compiler installation +in order to generate the .gir and .typelib files. One may be +obtained from the mingw or the mingw64 project. + +A working pkg-config tool is also required-it may be obtained from +http://www.gtk.org/download/win32.php [32-bit] +http://www.gtk.org/download/win64.php [64-bit] + +*** Note! *** +Please note that due to numerous possible configurations on Python, some environmental +variables need to be set before launching the gobject-introsection.sln solution file. + +These variables are namely: +PYTHONDIR: Root installation folder of your Python interpretor. + It must match your build configuration (Win32 or x64/amd64) +PKG_CONFIG_PATH: Location of the .pc (pkg-config) files, especially for the GLib .pc files. +MINGWDIR: Root installation folder for your Windows GCC (such as MinGW). +*** End of Note! *** + +The "install" project will copy build results and headers into their +appropriate location under \vs9\. For instance, +built DLLs go into \vs9\\bin, built LIBs into +\vs9\\lib and gobject-introspection headers into +\vs9\\include\gobject-introsection-1.0. + +The generated .gir files will end up in \vs9\\share\gir-1.0 +and .typelib files will end up in \vs9\\lib\girepository-1.0 + +This is then from where +project files higher in the stack are supposed to look for them, not +from a specific gobject-introspection source tree. + +--Tor Lillqvist +--Updated by Chun-wei Fan -- 2.34.1