Create mingw + msys compiling environment
There are many methods on the network. After experiment, I chose a simple and convenient installation method.
1. Download The mingw installation file from the following website
Http://www.tdragon.net/recentgcc/
TDM/mingw Installer
The installation file on the mingw website is not required because the mingw installer cannot manually select a fast sf.net download website.
During installation, check for updates and then select the installation part. Because the purpose is only to compile Pidgin, only TDM recommanded C/C ++ is selected and the downloaded backup storage is selected, in a mainland China network environment, it is usually faster to select servers in North America.
Installation location. Select D:/mingw.
Ii. Download and install msys and msysdtk
Google MSYS-1.0.10.exe
Get:
Http://sourceforge.net/project/downloading.php? Groupnamedomainmingw&filename=msys-1.0.10.exe
Google msysDTK-1.0.1.exe
Get:
Http://sourceforge.net/project/downloading.php? Groupnamedomainmingw&filename=msysdtk-1.0.1.exe
After the download is complete, install the two files to the installation directory: D:/msys/1.0.
At the end of msys installation, a DOS window appears. Select y for all the windows. When you ask about the mingw installation path:
Please answer the following in the form of C:/msys where is your mingw installation?
Enter mingw installation path D:/mingw
Note:
Do not install msys on D:/mingw. Otherwise, an error occurs during compilation:
Gcc.exe: no input files
However, compilation cannot be performed.
3. modify windows environment variables
Go to "Control Panel-system-advanced-environment variables-system variables", find the path column, click "edit", and add the following new path to the end.
D:/mingw/bin; D:/msys/1.0/bin;
Compile pidgin
1. Download pidgin source code and various library files required for compilation
Refer to the following pidgin documents
Http://developer.pidgin.im/wiki/BuildingWinPidgin
Create a pidgin Development Directory, for example:
F:/pidgin
Store the pidgin's source file, such as pidgin-2.5.1.tar.bz2, to F:/pidgin.
The following library files are saved to the F:/pidgin/win32-dev directory:
GTK +,Gtk-dev-2.6.10-rev-a.tar.gz
Libxml2,Libxml2-2.6.30.tar.gz
Perl 5.10,Perl_5-10-0.tar.gz
TCL 8.4.5,Tcl-8.4.5.tar.gz
Gtkspell/Aspell,Aspell-dev-0-50-3-3.zip,Gtkspell-2.0.11-daa1.tar.gz
Mozilla NSS,Network Security Services (NSS),Netscape Portable Runtime (NSPR)
SILC toolkit,Silc-toolkit-1.1.7.tar.gz
Meanwhile,Meanwhile-1.0.2_daa1-win32.zip
Bonjour SDK,The apple developer website, Note that the installation directory must be modified to F:/pidgin/win32-dev/bonjour_sdk
Cyrus SASL,Cyrus-sasl-2.1.22-daa1.zip
The directory structure after installation is as follows:
F :.
└ ── Pidgin
2017-pidgin-2.5.1
└-Win32-dev
├-Aspell-dev-0-50-3-3
├-Cyrus-sasl-2.1.22-daa1
─ ── Gtk_2_0
├-Gtkspell-2.0.11-daa1
├-Libxml2-2.6.30
├-Meanwhile-1.0.2_daa1
├-Nspr-4.6.4
├-Nss-3.11.4
├-Perl-5.10.0
├-Silc-toolkit-1.1.7
├-Tcl-8.4.5
Javas── bonjour_sdkIi. Start Compilation
Go to the doscommand window and switch to the directory:
F:/pidgin-2.5.1
Enter the command and press enter to execute:
Make-F makefile. mingw
If Perl and Tcl are not installed, you do not need to download and install them as described on the website. Modify them directly:
Libpurple/plugins/makefile. mingw
Pidgin/plugins/makefile. mingw
Use # To comment out the lines related to Perl and Tcl to continue compilation.
Compilation problems and options
1. A small problem with windres
When pidgin/Win32/pidgin_dll_rc.rc and pidgin_exe_rc.rc are compiled, the compiler prompts:
Windress cannot open 'pixmap/tray/16/'. The access permission is incorrect.
Check pidgin_exe_rc.rc to find the following two statements:
# Define pixmapdir "pixmaps /"
Pidgin_icon icon pixmapdir "pidgin. ICO"
We suspect that the used windres version does not support this dir definition method. Change it:
Pidgin_icon "pixmaps/pidgin. ICO"
Compiled.
2. Compile the debug version
Modify config. h and add a line:
# Define debug
Recompile.
3. Installation File
Execute Command
Make-F makefile. mingw install
Automatically generate directories and installation files
Win32-install-dir