/[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 1949 - (hide annotations) (download) (as text)
Sun Jul 26 19:25:25 2009 UTC (14 years, 8 months ago) by persson
File MIME type: text/html
File size: 9208 byte(s)
* new MSYS and MinGW packages and structure
* new versions of gtkmm and SQLite

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

  ViewVC Help
Powered by ViewVC