/[svn]/web/trunk/www.linuxsampler.org/msys.html
ViewVC logotype

Annotation of /web/trunk/www.linuxsampler.org/msys.html

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2056 - (hide annotations) (download) (as text)
Sun Jan 31 09:39:18 2010 UTC (14 years, 3 months ago) by persson
File MIME type: text/html
File size: 9780 byte(s)
* new versions of msys, mingw, xsltproc, sqllite and libsndfile. A
newer m4 is needed (again). xsltproc doesn't need or work with the new
libxml.

1 persson 1807 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2     <html>
3     <head>
4     <meta content="text/html; charset=ISO-8859-1"
5     http-equiv="content-type">
6     <title>Windows Build Instructions</title>
7     <link rel="shortcut icon" href="http://download.linuxsampler.org/favicon.ico" type="image/x-icon">
8     <link rel="stylesheet" type="text/css" href="libgig/css/content.css" title="content" media="all">
9     </head>
10     <body>
11     <h2 align="center">Windows Build Instructions &nbsp; <img src="gfx/logos/msys.png" alt="msys logo"> &nbsp; HOWTO by Andreas Persson</h2>
12     <br>
13 persson 2056 <center>January&nbsp;31th,&nbsp;2010</center><br>
14 persson 1807 <div style="background-color: #F4F4FF; margin: 1em 3em 1em 3em; padding: 1em 1em 1em 2.2em;">
15     <a href="#intro">1.&nbsp; Introduction</a><br>
16     <a href="#mingw">2.&nbsp; MinGW</a><br>
17     <a href="#pkg">3.&nbsp; pkg-config and gtkmm</a><br>
18     <a href="#msys">4.&nbsp; MSYS</a><br>
19     <a href="#asio">5.&nbsp; ASIO SDK</a><br>
20     <a href="#vst">6.&nbsp; VST SDK</a><br>
21     <a href="#intl">7.&nbsp; intltool</a><br>
22     <a href="#perl">8.&nbsp; Perl</a><br>
23     <a href="#xslt">9.&nbsp; xsltproc</a><br>
24     <a href="#setup">10.&nbsp; MSYS setup</a><br>
25 persson 1918 <a href="#sqlite">11.&nbsp; Building SQLite</a><br>
26     <a href="#sndfile">12.&nbsp; Building libsndfile</a><br>
27     <a href="#gig">13.&nbsp; Building libgig</a><br>
28     <a href="#ls">14.&nbsp; Building linuxsampler</a><br>
29     <a href="#gigedit">15.&nbsp; Building gigedit</a><br>
30 persson 1807 </div>
31 senoner 1983 <p>
32     <center>
33     <script type="text/javascript"><!--
34     google_ad_client = "pub-3408196773880325";
35     /* 728x90, created 8/3/09 */
36     google_ad_slot = "7744776541";
37     google_ad_width = 728;
38     google_ad_height = 90;
39     //-->
40     </script>
41     <script type="text/javascript"
42     src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
43     </script>
44     </center>
45     </p>
46 persson 1807
47     <h3><a name="intro">1.&nbsp; Introduction</a></h3>
48    
49     <p>These are instructions for building libgig, linuxsampler and
50     gigedit on Windows (32 bit) with help of MinGW and MSYS. After the
51     MinGW and MSYS environment and the other prerequisites are installed,
52     the build procedure will be the same as in Linux, that is, basically:
53     ./configure ; make ; make install.</p>
54    
55     <p>The versions of the files to download are just the ones I used
56 persson 1918 before updating this text. You can probably use later ones if
57 persson 1807 available.</p>
58    
59     <p>Some of the instructions below are marked with ** and ***:</p>
60    
61     <p>** = only needed if you are going to build from CVS, not if you are
62     using the tar file releases</p>
63    
64     <p>*** = only needed if you are going to build gigedit</p>
65    
66    
67     <h3><a name="mingw">2.&nbsp; MinGW</a></h3>
68    
69 persson 2056 <p>Download the MinGW installer, MinGW-5.1.6.exe,
70     from <a href="http://www.mingw.org">www.mingw.org</a>, "Automated
71     MinGW Installer, MinGW 5.1.6", and run it. The installer will
72     automatically download and install further packages. Choose the base
73     tools and the g++ compiler.</p>
74 persson 1807
75    
76     <h3><a name="pkg">3.&nbsp; pkg-config and gtkmm</a></h3>
77    
78     <p>The pkg-config tool is needed by the configure script in all the
79     LinuxSampler packages. pkg-config is included in gtkmm, which is
80     needed by gigedit. (If you are not going to build gigedit, you can
81     download just GLib and pkg-config
82     from <a href="http://www.gtk.org">www.gtk.org</a>.)</p>
83    
84     <p>Download the gtkmm windows installer,
85 persson 1949 gtkmm-win32-devel-2.16.0-4.exe,
86 persson 1807 from <a href="http://www.gtkmm.org">www.gtkmm.org</a>, and run it. Let
87     the installer adjust the PATH variable as it wants.</p>
88    
89    
90     <h3><a name="msys">4.&nbsp; MSYS</a></h3>
91    
92 persson 2056 <p>Download from "MSYS Base System, msys-1.0.11":</p>
93 persson 1949 <pre>MSYS-1.0.11.exe</pre>
94 persson 1807
95 persson 1918 <p>Run the installer.</p>
96 persson 1807
97 persson 2056 <p>Download from "MSYS bison, bison-2.4.1-1":</p>
98     <pre>bison-2.4.1-1-msys-1.0.11-bin.tar.lzma **</pre>
99 persson 1807
100 persson 2056 <p>From "MSYS crypt, crypt-1.1_1-2":</p>
101     <pre>libcrypt-1.1_1-2-msys-1.0.11-dll-0.tar.lzma **</pre>
102    
103     <p>From "MSYS cvs, cvs-1.12.13-1":</p>
104     <pre>cvs-1.12.13-1-msys-1.0.11-bin.tar.lzma **</pre>
105    
106     <p>From "MSYS perl, perl-5.6.1_2-1":</p>
107     <pre>perl-5.6.1_2-1-msys-1.0.11-bin.tar.lzma **</pre>
108    
109     <p>From "MSYS m4, m4-1.4.13-1":</p>
110     <pre>m4-1.4.13-1-msys-1.0.11-bin.tar.lzma **</pre>
111    
112 persson 1949 <p>Extract these files to the msys root directory, by starting msys, do
113 persson 2056 "cd /" followed by "tar -x --lzma -f <i>filename</i>".</p>
114 persson 1807
115 persson 2056 <p>Download from "MinGW autoconf, autoconf2.5, autoconf2.5-2.64-1":</p>
116     <pre>autoconf2.5-2.64-1-mingw32-bin.tar.lzma **</pre>
117 persson 1807
118 persson 2056 <p>From "MinGW autoconf, wrapper, autoconf-7-1":</p>
119     <pre>autoconf-7-1-mingw32-bin.tar.lzma **</pre>
120 persson 1949
121     <p>From "MinGW automake, automake1.11, automake1.11-1.11-1":</p>
122     <pre>automake1.11-1.11-1-mingw32-bin.tar.lzma **</pre>
123    
124     <p>From "MinGW automake, wrapper, automake-4-1":</p>
125     <pre>automake-4-1-mingw32-bin.tar.lzma **</pre>
126    
127     <p>From "MinGW gettext, gettext-0.17-1":</p>
128     <pre>gettext-0.17.1-1-mingw32-dev.tar.lzma ***
129     libgettextpo-0.17-1-mingw32-dll-0.tar.lzma ***
130     libintl-0.17-1-mingw32-dll-8.tar.lzma ***</pre>
131    
132     <p>From "MinGW libiconv, libiconv-1.13.1-1":</p>
133     <pre>libiconv-1.13.1-1-mingw32-dll-2.tar.lzma ***</pre>
134    
135     <p>From "GCC Version 4, Current Release_ gcc-4.4.0":</p>
136     <pre>gcc-core-4.4.0-mingw32-dll.tar.gz ***</pre>
137    
138 persson 2056 <p>From "MinGW libtool, libtool-2.2.7a-1":</p>
139 persson 1949 <pre>libtool-2.2.7a-1-mingw32-bin.tar.lzma</pre>
140    
141     <p>Extract all these files to the MinGW directory, by starting msys, do
142     "cd /mingw" followed by "tar -x --lzma -f <i>filename</i>" for the
143     .tar.lzma files and "tar xaf <i>filename</i>" for the .tar.gz file.</p>
144    
145    
146 persson 1807 <h3><a name="asio">5.&nbsp; ASIO SDK</a></h3>
147    
148     <p>Download asiosdk2.2.zip from Steinberg. Extract it to your msys
149     $HOME.</p>
150    
151    
152     <h3><a name="vst">6.&nbsp; VST SDK</a></h3>
153    
154     <p>If you want to build the LinuxSampler VST plugin, download
155     vst_sdk2_4_rev2.zip from Steinberg (note that you should not choose
156     version 3). Extract it to msys $HOME.</p>
157    
158    
159     <h3><a name="intl">7.&nbsp; intltool ***</a></h3>
160    
161     <p>Download intltool_0.40.4-1_win32.zip from
162     <a href="http://ftp.gnome.org/pub/GNOME/binaries/win32/intltool">http://ftp.gnome.org/pub/GNOME/binaries/win32/intltool</a></p>
163    
164 persson 1949 <p>Unzip this into the gtkmm directory (C:\Program Files\gtkmm)</p>
165 persson 1807
166    
167     <h3><a name="perl">8.&nbsp; Perl ***</a></h3>
168    
169     <p>The perl in MSYS is lacking an XML parser which is needed by
170     intltool. Download ActivePerl
171     from <a href="http://www.activestate.com">www.activestate.com</a> and
172     install it.</p>
173    
174    
175     <h3><a name="xslt">9.&nbsp; xsltproc ***</a></h3>
176    
177     <p>The gigedit Makefile wants to build the gigedit quick start
178     documentation, so it needs the xsltproc command. Download from
179 persson 1949 <a href="http://www.zlatkovic.com/pub/libxml/">http://www.zlatkovic.com/pub/libxml/</a>:</p>
180 persson 1807
181 persson 2056 <pre>libxslt-1.1.26.win32.zip</pre>
182 persson 1807
183 persson 2056 <p>Copy the contents of the bin directory from the zip file to a
184 persson 1807 directory of your choice. Add this directory last in your msys PATH,
185     for example:</p>
186    
187     <pre>export PATH=$PATH:$HOME/xsltproc</pre>
188    
189    
190     <h3><a name="setup">10.&nbsp; MSYS setup</a></h3>
191    
192 persson 1811 <p>Add the gtkmm aclocal directory to the list of extra directories
193     used by autoconf. (Make sure the gtkmm path is the one where you
194     installed it. The space in "Program Files" causes problems, so the
195     short file name form is used here):</p>
196 persson 1807
197 persson 1949 <pre>echo "/c/Progra~1/gtkmm/share/aclocal" >> /mingw/share/aclocal/dirlist</pre>
198 persson 1807
199 persson 1811 <p>Add the gtkmm bin directory first in your PATH (the installer has
200     already added gtkmm to the PATH, but it may have used "Program Files"
201     with a space in it, which causes configure to fail):</p>
202 persson 1807
203 persson 1811 <pre>export PATH=/c/Progra~1/gtkmm/bin:$PATH</pre>
204    
205 persson 1949 <p>Make sure pkg-config will find the libraries you build:</p>
206 persson 1807
207     <pre>export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig</pre>
208    
209    
210     <p>*** The intltool scripts expect perl to be in /opt/perl/bin, so
211     make a link to the ActivePerl installation. Also add ActivePerl to
212     PATH:</p>
213    
214     <pre>mkdir -p /opt/perl/bin
215     ln -s /c/Perl/bin/perl.exe /opt/perl/bin
216     export PATH=/c/Perl/bin:$PATH</pre>
217    
218    
219 persson 1949 <p>*** MinGW gettext and gtkmm both include libintl. We want the gtkmm
220     version. Remove the MinGW files so the gettext configure tools don't
221 persson 1807 choose the wrong version:</p>
222    
223 persson 1949 <pre>rm /mingw/include/libintl.h /mingw/lib/libintl*</pre>
224 persson 1807
225    
226     <p>*** The gettext configure tools also need:</p>
227    
228 persson 1811 <pre>export CPPFLAGS="-I/c/Progra~1/gtkmm/include"
229     export LDFLAGS="-L/c/Progra~1/gtkmm/lib"</pre>
230 persson 1807
231    
232 persson 1918 <h3><a name="sqlite">11.&nbsp; Building SQLite</a></h3>
233 persson 1807
234 persson 1918 <p>The windows precompiled version of SQLite doesn't include the
235     neccessary development files, so it's best to build SQLite yourself.
236 persson 2056 Download sqlite-amalgamation-3.6.22.tar.gz
237 persson 1918 from <a href="http://www.sqlite.org">www.sqlite.org</a>
238     and extract it to your $HOME:</p>
239    
240     <pre>cd
241 persson 2056 tar xzf sqlite-amalgamation-3.6.22.tar.gz</pre>
242 persson 1918
243     <p>Build and install:</p>
244    
245 persson 2056 <pre>cd sqlite-3.6.22
246 persson 1918 CFLAGS=-O2 ./configure
247     make
248     make install</pre>
249    
250     <p>(Without CFLAGS=-O2, the build will fail. The MinGW compiler has
251     some problems with creating the debug info for some reason.)</p>
252    
253     <h3><a name="sndfile">12.&nbsp; Building libsndfile</a></h3>
254    
255 persson 1807 <p>The windows precompiled version of libsndfile doesn't include the
256     neccessary pkg-config file, so it's best to build libsndfile
257 persson 2056 yourself. Download libsndfile-1.0.21.tar.gz
258 persson 1807 from <a href="http://www.mega-nerd.com/libsndfile/">www.mega-nerd.com</a> and
259     extract it to your $HOME:</p>
260    
261     <pre>cd
262 persson 2056 tar xzf libsndfile-1.0.21.tar.gz</pre>
263 persson 1807
264 persson 1861 <p>Build and install:</p>
265 persson 1807
266 persson 2056 <pre>cd libsndfile-1.0.21
267 persson 1861 ./configure
268 persson 1807 make
269     make install</pre>
270    
271    
272 persson 1918 <h3><a name="gig">13.&nbsp; Building libgig</a></h3>
273 persson 1807
274     <p>Just use the same commands as you would in linux:</p>
275    
276     <pre>make -f Makefile.cvs (if you build from CVS)
277     ./configure (add any configuration parameters as you wish)
278     make
279     make install</pre>
280    
281    
282 persson 1918 <h3><a name="ls">14.&nbsp; Building linuxsampler</a></h3>
283 persson 1807
284     <pre>make -f Makefile.cvs (if you build from CVS)
285     ./configure --enable-asiosdk-dir=$HOME --enable-vstsdk-dir=$HOME/vstsdk2.4
286     make
287     make install</pre>
288    
289    
290 persson 1918 <h3><a name="gigedit">15.&nbsp; Building gigedit</a></h3>
291 persson 1807
292     <pre>make -f Makefile.cvs (if you build from CVS)
293     ./configure
294     make
295     make install</pre>
296     </body>
297     </html>

  ViewVC Help
Powered by ViewVC