[Pidgin] BuildingWinPidgin/3.0.0 modified
Eion Robb
eion at robbmob.com
Sat Apr 26 02:07:42 EDT 2014
Wait, building Pidgin for Windows on Windows is no longer the preferred
option? Did I miss something?
On 26 April 2014 03:26, Pidgin <trac at pidgin.im> wrote:
> Page "BuildingWinPidgin/3.0.0" was changed by tomkiewicz
> Diff URL: <
> https://developer.pidgin.im/wiki/BuildingWinPidgin/3.0.0?action=diff&version=6
> >
> Revision 6
> Comment: mention 3.0.0 cross-compiling
> Changes:
> -------8<------8<------8<------8<------8<------8<------8<------8<--------
> Index: BuildingWinPidgin/3.0.0
> =========================================================================
> --- BuildingWinPidgin/3.0.0 (version: 5)
> +++ BuildingWinPidgin/3.0.0 (version: 6)
> @@ -2,7 +2,55 @@
>
> Note: These instructions are for 3.0.0 branch. The current instructions
> for 2.x.y are found [wiki:BuildingWinPidgin here].
>
> -== Set up your build environment ==
> +== Get the Pidgin source code ==
> +{{{
> +#!comment
> + The source for Pidgin 3.x.y is available [
> http://prdownloads.sourceforge.net/pidgin/pidgin-3.x.y.tar.bz2 here] (use
> the latest release if this isn't updated yet).[[BR]][[BR]]
> +}}}
> + The 3.0.0 branch isn't released yet, so there are no source packages
> for this at the moment.[[BR]][[BR]]
> + The development source is available via mercurial. See
> [wiki:UsingPidginMercurial] for more information.
> +
> +
> +== Cross Compiling (the easy way) ==
> + It is quite easy to cross compile Pidgin for Windows on a Linux machine.
> +
> + To begin, you'll need to install MinGW. On !Debian/Ubuntu, this
> involves installing packages `mingw32`, `mingw32-binutils`,
> `mingw32-runtime`, `mingw32-cross-pkg-config`. On other distributions, the
> packages may be named differently.
> +
> + When compiling from hg, you'll need to generate `configure` script:
> +{{{
> +NOCONFIGURE=indeed ./autogen.sh
> +}}}
> +
> + Set up pkgconfig (this may vary, depending on Linux distribution):
> +{{{
> +export
> PKG_CONFIG_PATH=/usr/i686-w64-mingw32/sys-root/mingw/lib/pkgconfig:\
> +
> /usr/i686-w64-mingw32/sys-root/mingw/share/pkgconfig
> +export PKG_CONFIG=/usr/bin/i686-w64-mingw32-pkg-config
> +}}}
> +
> + Run configure with cross-compile option. You may choose FHS or classic
> directory layout (default is classic). For now (when installer is missing),
> FHS will be easier to install and run. Then - build it.
> +{{{
> +./configure --host=i686-w64-mingw32 --with-win32-dirs=<fhs|classic>
> +make
> +}}}
> +
> + At last, install Pidgin, Finch and its dependencies.
> +{{{
> +make DESTDIR=/path/to/install-dir install
> +cd /path/to/install-dir
> +cd usr/local # it may depend on your configured $prefix
> +wget https://pidgin.im/~twasilczyk/win32/gtk-runtime-2.24.18.0.zip
> +unzip gtk-runtime-2.24.18.0.zip
> +cp -r Gtk/* .
> +rm -rf Gtk gtk-runtime-2.24.18.0.zip
> +}}}
> +
> +
> +== Compiling directly on Windows with Cygwin (the hard way) ==
> +
> + This method was used for 2.x.y branch and most probably will be
> dropped, when cross-compilation was fully functional (including the
> installer).
> +
> +=== Set up your build environment ===
>
> 1. Install the [http://cygwin.com Cygwin] Bash shell. Make sure to
> select Unix file mode during setup.
> Also make sure you install bash, bzip2, '''ca-certificates''',
> coreutils, gawk, '''gnupg''', grep, gzip, '''libiconv''', '''make''',
> '''mercurial''', '''patch''', sed, tar, '''unzip''', '''wget''', '''xxd'''
> and '''zip''' (several of these are selected by default, those in bold are
> not). Be sure to add Cygwin versions of any programs you may use that
> require Cygwin path names (for example, if you want to use vim to edit
> monotone commit messages, you need to install the Cygwin version of vim --
> native Win32 vim will be unable to read Cygwin-style paths). [[BR]]
> @@ -43,15 +91,7 @@
> ./prepare-workspace.sh
> }}}
>
> -== Get the Pidgin source code ==
> -{{{
> -#!comment
> - The source for Pidgin 3.x.y is available [
> http://prdownloads.sourceforge.net/pidgin/pidgin-3.x.y.tar.bz2 here] (use
> the latest release if this isn't updated yet).[[BR]][[BR]]
> -}}}
> - The 3.0.0 branch isn't released yet, so there are no source packages
> for this at the moment.[[BR]][[BR]]
> - The development source is available via mercurial. See
> [wiki:UsingPidginMercurial] for more information.
> -
> -== Build Pidgin ==
> +=== Build Pidgin ===
>
> Run the following:
> {{{
> @@ -61,7 +101,7 @@
> }}}
> Now just wait and let your compiler do its thing. When finished,
> Pidgin will be in `$PIDGIN_DEV_ROOT/pidgin-<version>/win32-install-dir`.
>
> -== Build the Pidgin Installer ==
> +=== Build the Pidgin Installer ===
>
> If you want to sign the executables (not necessary for personal use),
> you'll need to get an appropriate code signing certificate, generate a GPG
> key if you don't already have one, then download and install [
> http://www.mono-project.com/Download Mono]. In your `local.mak` file (see
> [#CustomizingtheBuildEnvironment below]), define the `SIGN_EXECUTABLES`
> variable to 1, `MONO_SIGNCODE` to the fully qualified path to the
> `signcode` batch file in the Mono `bin` directory, and the `SIGNCODE_SPC`
> and `SIGNCODE_PVK` variables to the appropriate files from your
> certificate. E.g.:
> {{{
> @@ -84,7 +124,7 @@
> }}}
> When it finishes, your installer(s) should be in
> `$PIDGIN_DEV_ROOT/pidgin-<version>/`.
>
> -== Customizing the Build Environment ==
> +=== Customizing the Build Environment ===
> Most people will find that the standard build environment directory is
> completely adequate.
> It is, however, possible to override the locations of the various
> dependencies and target directories.
> This is often useful to test against a development version of a library
> dependency or to override compiler flags.
> @@ -109,55 +149,3 @@
> == Debugging ==
> There is a quite good '''Just In Time''' debugger for MinGW: [
> http://code.google.com/p/jrfonseca/wiki/DrMingw drmingw].[[BR]]
> There is also a version of `gdb` available from MinGW, if you prefer.
> -
> -
> -{{{
> -#!comment
> -== Cross Compiling ==
> - It is quite easy to cross compile Pidgin for Windows on a Linux machine.
> -
> - To begin, you'll need to install MinGW. On !Debian/Ubuntu, this
> involves installing packages `mingw32`, `mingw32-binutils`, and
> `mingw32-runtime`. On other distributions, the packages may be named
> differently.
> -
> - Set up a build environment as described [#Themanualway above], skipping
> steps 1 and 3.
> -
> - Create a `local.mak` file in the source directory root to override the
> Makefile variables - mine looks like this:
> -{{{
> -SHELL := /bin/bash
> -CC := /usr/bin/i586-mingw32msvc-cc
> -GMSGFMT := msgfmt
> -MAKENSIS := /usr/bin/makensis
> -WINDRES := /usr/bin/i586-mingw32msvc-windres
> -STRIP := /usr/bin/i586-mingw32msvc-strip
> -INTLTOOL_MERGE := /usr/bin/intltool-merge
> -
> -INCLUDE_PATHS := -I$(PIDGIN_TREE_TOP)/../win32-dev/w32api/include
> -LIB_PATHS := -L$(PIDGIN_TREE_TOP)/../win32-dev/w32api/lib
> -}}}
> -
> - If your distribution doesn't include a recent enough win32api, you can
> download it from the [http://www.mingw.org/ MinGW site], extract it into
> your `win32-dev` directory, and override the `INCLUDE_PATHS` and
> `LIB_PATHS` variables in your `local.mak` as I have done.
> -
> - NSIS version 2.46 or greater is required to cross-compile. If
> compiling NSIS from source, the [http://www.scons.org/ scons] package is
> a dependency. This can usually be installed through your linux
> distribution's package archive. An example of how to install the NSIS
> package is given below (Assuming use of the NSIS 2.46 version):
> -
> - `.tar.bz2` file contains latest source[[BR]]
> - `.zip` file contains libraries
> -{{{
> -#!sh
> -mkdir nsis; cd nsis
> -wget
> http://prdownloads.sourceforge.net/nsis/nsis-2.46-src.tar.bz2?download
> -wget http://prdownloads.sourceforge.net/nsis/nsis-2.46.zip?download
> -tar -jxvf nsis-2.46-src.tar.bz2
> -cd nsis-2.46
> -scons SKIPSTUBS=all SKIPPLUGINS=all SKIPUTILS=all SKIPMISC=all
> NSIS_CONFIG_CONST_DATA_PATH=no
> -sudo scons install-compiler
> -cd ..
> -sudo unzip nsis-2.46 -d /usr/local/share
> -sudo mv /usr/local/share/nsis-2.46/ /usr/local/share/nsis
> -}}}
> - If following the above instructions, the local.mak file
> ([#CrossCompiling listed above]) should be modified[[BR]]
> -{{{
> -MAKENSIS := /usr/local/bin/makensis
> -}}}
> -
> -
> - Once this is all set up, you should be able to follow the [#BuildPidgin
> building instructions above].
> -}}}
> -------8<------8<------8<------8<------8<------8<------8<------8<--------
>
> --
> Page URL: <https://developer.pidgin.im/wiki/BuildingWinPidgin/3.0.0>
> Pidgin <https://pidgin.im>
> Pidgin
>
> This is an automated message. Someone added your email address to be
> notified of changes on 'BuildingWinPidgin/3.0.0' page.
> If it was not you, please report to datallah at pidgin.im.
> _______________________________________________
> Wikiedit mailing list
> Wikiedit at pidgin.im
> https://pidgin.im/cgi-bin/mailman/listinfo/wikiedit
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://pidgin.im/pipermail/devel/attachments/20140426/4ccaa6ae/attachment-0001.html>
More information about the Devel
mailing list