annotate README.mingw @ 4853:fbfdacf7c611

[gaim-migrate @ 5180] This is better auto-getting of icons for oscar. Ethan made me write a tobase16 fucntion and a from16 function (and he done gave me some good advice for that, too) which convert to and from arbitrary data and a null terminated string of hex. I use these to get and store the md5 checksum for each icon sent to you. This way, Gaim will request the icon when the md5sum differs. Er, so the md5sum is stored in blist.xml. Previously, Gaim would only request the icon if you did not have any buddy icon for the other person. Now it will request it if the local md5sum differs from the server md5sum. To sum it up again, if their icon changes, gaim will request the new one. I tried using the base64 functions, but they look like they want to work with null terminated strings, rather than arbitrary data. committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Sat, 22 Mar 2003 07:29:34 +0000
parents 1de97e584d32
children 53718dbe8d0d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3630
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
1 How to build Gaim using MinGw
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
2 =============================
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
3
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
4 Set Up Build Environment
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
5 ------------------------
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
6
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
7 - Install Cygwin bash shell (www.cygwin.com).
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
8
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
9 - Install MinGw v1.1 (http://www.mingw.org)
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
10 Make sure to read the installation instructions. Make sure to set MinGw's
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
11 bin directory in your PATH (in .bash_login), before Cygwin's bin dir
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
12 (so that mingw's build tools are used over cygwin's).
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
13
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
14 Install LIBs, DLLs and headers used by GAIM
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
15 -------------------------------------------
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
16
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
17 Assuming you have the gaim sources in ~/gaim, you will need to do the
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
18 fowllowing:
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
19
4066
fd764830519c [gaim-migrate @ 4278]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3932
diff changeset
20 GTK & GLIB (v 2.0.9 as of writing)
3630
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
21 ----------------------------------
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
22
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
23 $ mkdir -p ~/win32-dev/gtk_2_0/zips
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
24
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
25 Download the following from thw win32 download page at www.gtk.org to the
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
26 zips dir you just created:
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
27
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
28 atk-1.0.3-20020821.zip
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
29 atk-dev-1.0.3-20020821.zip
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
30 gettext-dev-0.10.40-20020904.zip
4128
1de97e584d32 [gaim-migrate @ 4346]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 4066
diff changeset
31 glib-2.0.6-20020802.zip
1de97e584d32 [gaim-migrate @ 4346]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 4066
diff changeset
32 glib-dev-2.0.6-20020802.zip
1de97e584d32 [gaim-migrate @ 4346]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 4066
diff changeset
33 gtk+-2.0.6-20020921.zip
1de97e584d32 [gaim-migrate @ 4346]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 4066
diff changeset
34 gtk+-dev-2.0.6-20020921.zip
3630
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
35 libiconv-1.7-w32.bin.zip
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
36 libintl-0.10.40-tml-20020904.zip
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
37 libjpeg-6b-bin.zip
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
38 libpng-1.2.4-1-bin.zip
4128
1de97e584d32 [gaim-migrate @ 4346]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 4066
diff changeset
39 pango-1.0.4-20020921.zip
1de97e584d32 [gaim-migrate @ 4346]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 4066
diff changeset
40 pango-dev-1.0.4-20020921.zip
3630
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
41 tiff-3.5.7-bin.zip
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
42 zlib-1.1.4-bin.zip
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
43
4066
fd764830519c [gaim-migrate @ 4278]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3932
diff changeset
44 Make sure that after unziping, the binaries (dlls and exes) have the correct
fd764830519c [gaim-migrate @ 4278]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3932
diff changeset
45 executable permissions (e.g. "chmod 755 iconv.dll"):
fd764830519c [gaim-migrate @ 4278]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3932
diff changeset
46
3630
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
47 $ cd ~/win32-dev/gtk_2_0/zips
4128
1de97e584d32 [gaim-migrate @ 4346]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 4066
diff changeset
48 $ unzip -d .. "*.zip"
3630
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
49 $ cd ..
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
50 $ cp lib/libintl-1.dll ./bin
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
51 $ cd libiconv-1.7-w32.bin
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
52 $ cp iconv.exe ../bin
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
53 $ cp iconv.lib ../lib
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
54 $ cp localcharset.dll ../lib
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
55 $ cp iconv.dll ../lib
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
56 $ cp iconv.dll ../bin
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
57 $ cp iconv.h ../include/
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
58 $ cp libcharset.h ../include/
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
59
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
60 NOTE: If you use a more recent versions of any of these packages, you may
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
61 need to move files around so that they can be found when Gaim is built.
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
62
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
63 Perl56
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
64 ------
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
65
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
66 Download perl-5.6.1 from www.cpan.org. You can build perl56 yourself if
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
67 you have MS Visual C++, or you can download a win32 binary distribution
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
68 (I tried SiePerl successfully). In either case make sure you do the
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
69 following:
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
70
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
71 $ mkdir -p ~/win32-dev/perl56
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
72
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
73 Copy Perl's "CORE" directory to ~/win32-dev/perl56 as well as "perl56.dll"
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
74 and "perl56.lib".
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
75
3857
ce2ed064d393 [gaim-migrate @ 4009]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3648
diff changeset
76 Aspell-15
ce2ed064d393 [gaim-migrate @ 4009]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3648
diff changeset
77 ---------
ce2ed064d393 [gaim-migrate @ 4009]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3648
diff changeset
78
3909
c98beec22f39 [gaim-migrate @ 4068]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3857
diff changeset
79 Download the dev package (aspell-15.tar.gz) from http://gaim.sf.net/win32,
3857
ce2ed064d393 [gaim-migrate @ 4009]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3648
diff changeset
80 and untar it under ~/win32-dev.
ce2ed064d393 [gaim-migrate @ 4009]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3648
diff changeset
81
4128
1de97e584d32 [gaim-migrate @ 4346]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 4066
diff changeset
82 Gtkspell 2.0.3
3857
ce2ed064d393 [gaim-migrate @ 4009]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3648
diff changeset
83 --------------
ce2ed064d393 [gaim-migrate @ 4009]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3648
diff changeset
84
4128
1de97e584d32 [gaim-migrate @ 4346]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 4066
diff changeset
85 Download the dev package (gtkspell-2.0.3-20021223.tar.gz) from
4066
fd764830519c [gaim-migrate @ 4278]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3932
diff changeset
86 http://gaim.sf.net/win32, and untar it under ~/win32-dev.
3932
912a580f09dd [gaim-migrate @ 4104]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3909
diff changeset
87
3630
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
88 Build Gaim
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
89 ----------
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
90
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
91 $ cd ~/gaim
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
92 $ make -f Makefile.mingw install
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
93
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
94 Run Gaim
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
95 --------
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
96
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
97 $ cd ~/gaim/win32-install-dir
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
98 $ ./gaim.exe
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
99
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
100 That's it..
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
101
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
102 Note: If you wish to build an install exe of Gaim, then you need to install
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
103 NSIS from http://www.nullsoft.com/free/nsis/ making sure to place its
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
104 binary dir in your PATH. Then...
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
105
3648
1e8c10125558 [gaim-migrate @ 3772]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3630
diff changeset
106 $ cd ~/gaim
3630
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
107 $ make -f Makefile.mingw installer
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
108
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
109 Debugging
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
110 ---------
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
111
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
112 There is quite a good "Just In Time" debugger for MinGw:
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
113 http://mefriss1.swan.ac.uk/~jfonseca/gnu-win32/software/drmingw/
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
114
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
115
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
116 Happy Gaiming...
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
117 Herman Bloggs <hermanator12002@yahoo.com>
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
118
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
119
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
120
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
121
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
122
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
123