Trac is being migrated to new services! Issues can be found in our new
YouTrack instance and WIKI pages can be found on our
website.
- Timestamp:
-
May 15, 2007, 10:09:32 PM (17 years ago)
- Author:
-
datallah
- Comment:
-
Avoid mentioning local.mak in the basic instructions, most users don't need to mess with it and it adds unnecessary confusion.
Legend:
- Unmodified
- Added
- Removed
- Modified
-
v14
|
v15
|
|
31 | 31 | You do not want to use any of Cygwin's build tools, with one exception; you need to use Cygwin's make utility. If typing `which make` produces MinGW's make utility, then just rename the `make.exe` in the MinGW bin directory to something else so that cygwin's make utility will be used instead. This shouldn't be a problem with recent versions of MinGW. |
32 | 32 | |
33 | | 3. The following instructions were written under the assumption that you checkout Pidgin from monotone to `$PIDGIN_DEV_ROOT/pidgin` and that you install all of Pidgin's build dependencies under `$PIDGIN_DEV_ROOT/win32-dev` (the point being that the pidgin source root and `win32-dev` directories should be on the same level). It is not required to actually define `$PIDGIN_DEV_ROOT`, it is simply mentioned here to show which parts of the process are up to your personal choice.[[BR]][[BR]] |
34 | | ** Note: You should avoid using a `$PIDGIN_DEV_ROOT` path that contains spaces as that can cause unnecessary complications.[[BR]][[BR]] |
35 | | The location of win32-dev and it's contents can be changed by creating a `local.mak` file in the `$PIDGIN_DEV_ROOT/pidgin` directory and overriding the various Makefile variables. While this is not necessary, it allows you the freedom to install dependencies wherever you please. The variables that can be overridden with this method are listed in the source archive in [/viewmtn/revision/file/8c0ef1cb63204eeb0e5cda5501300c62d11bf89e/libpurple/win32/global.mak libpurple/win32/global.mak]. For example, to install Pidgin over `C:\Program Files\Pidgin` instead of `$PIDGIN_DEV_ROOT/pidgin/win32-install-dir`, create a `$PIDGIN_DEV_ROOT/pidgin/local.mak` containing: |
36 | | {{{ |
37 | | PIDGIN_INSTALL_DIR = /cygdrive/c/Program\ Files/Pidgin |
38 | | PURPLE_INSTALL_DIR = /cygdrive/c/Program\ Files/Pidgin |
39 | | }}} |
40 | | People are sometimes confused about the directory structure, so here is an example that will build without any local.mak overrides (`$PIDGIN_DEV_ROOT` is `c:/development/pidgin_dev` in this example): |
| 33 | 3. The following instructions were written under the assumption that [#GetthePidginsourcecode the Pidgin source] will be extracted or checked out into `$PIDGIN_DEV_ROOT/pidgin` and that you install all of Pidgin's build dependencies under `$PIDGIN_DEV_ROOT/win32-dev` (the point being that the pidgin source root and `win32-dev` directories should be on the same level). |
| 34 | Some users may find the [#CustomizingtheBuildEnvironment instructions for customizing their build environment] useful. |
| 35 | |
| 36 | You don't have to actually define an environment variable called `PIDGIN_DEV_ROOT`, it is simply used here as a placeholder. |
| 37 | |
| 38 | ** Note: You should avoid using a `$PIDGIN_DEV_ROOT` path that contains spaces as that can cause unnecessary complications. |
| 39 | |
| 40 | People are sometimes confused about the directory structure, so here is an example structure after all the dependencies have been installed (`$PIDGIN_DEV_ROOT` is `c:/development/pidgin_dev` in this example): |
41 | 41 | {{{ |
42 | 42 | C:\development\pidgin_dev |
… |
… |
|
113 | 113 | }}} |
114 | 114 | |
| 115 | == Customizing the Build Environment == |
| 116 | Most people will find that the standard build evironment directory is completely adequate. |
| 117 | It is, however, possible to override the locations of the various dependencies and target directories. |
| 118 | This is often useful to test against a development version of a library dependency or to override compiler flags. |
| 119 | |
| 120 | This done is by overridding the various Makefile variables in a `local.mak` file in the `$PIDGIN_DEV_ROOT/pidgin` directory. |
| 121 | This file does not exist by default. |
| 122 | |
| 123 | Most of the variables that can be overridden with this method are defined in the [/viewmtn/revision/file/8c0ef1cb63204eeb0e5cda5501300c62d11bf89e/libpurple/win32/global.mak libpurple/win32/global.mak] file. |
| 124 | For example, to install Pidgin over `C:\Program Files\Pidgin` instead of `$PIDGIN_DEV_ROOT/pidgin/win32-install-dir`, create a `$PIDGIN_DEV_ROOT/pidgin/local.mak` containing: |
| 125 | {{{ |
| 126 | #Override the install location |
| 127 | PIDGIN_INSTALL_DIR = /cygdrive/c/Program\ Files/Pidgin |
| 128 | PURPLE_INSTALL_DIR = /cygdrive/c/Program\ Files/Pidgin |
| 129 | }}} |
| 130 | |
| 131 | One nice use of the `local.mak` file is for cross compiling, there is an additional example in the [#CrossCompiling section below]. |
| 132 | |
115 | 133 | == Debugging == |
116 | 134 | There is a quite good '''Just In Time''' debugger for MinGW: [http://jrfonseca.planetaclix.pt/projects/gnu-win32/software/drmingw/index.html drmingw]. |
… |
… |
|
144 | 162 | |
145 | 163 | ** Note: I haven't been able to get the NSIS installer to build correctly on my 64-bit Linux system. |
146 | | |
All information, including names and email addresses, entered onto this website or sent to mailing lists affiliated with this website will be public. Do not post confidential information, especially passwords!