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

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

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1821 by persson, Sun Dec 28 09:51:50 2008 UTC revision 1949 by persson, Sun Jul 26 19:25:25 2009 UTC
# Line 10  Line 10 
10  <body>  <body>
11  <h2 align="center">Windows Build Instructions &nbsp; <img src="gfx/logos/msys.png" alt="msys logo"> &nbsp; HOWTO by Andreas Persson</h2>  <h2 align="center">Windows Build Instructions &nbsp; <img src="gfx/logos/msys.png" alt="msys logo"> &nbsp; HOWTO by Andreas Persson</h2>
12  <br>  <br>
13  <center>December&nbsp;28th,&nbsp;2008</center><br>  <center>July&nbsp;26th,&nbsp;2009</center><br>
14  <div style="background-color: #F4F4FF; margin: 1em 3em 1em 3em; padding: 1em 1em 1em 2.2em;">  <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>  <a href="#intro">1.&nbsp; Introduction</a><br>
16  <a href="#mingw">2.&nbsp; MinGW</a><br>  <a href="#mingw">2.&nbsp; MinGW</a><br>
# Line 22  Line 22 
22  <a href="#perl">8.&nbsp; Perl</a><br>  <a href="#perl">8.&nbsp; Perl</a><br>
23  <a href="#xslt">9.&nbsp; xsltproc</a><br>  <a href="#xslt">9.&nbsp; xsltproc</a><br>
24  <a href="#setup">10.&nbsp; MSYS setup</a><br>  <a href="#setup">10.&nbsp; MSYS setup</a><br>
25  <a href="#sndfile">11.&nbsp; Building libsndfile</a><br>  <a href="#sqlite">11.&nbsp; Building SQLite</a><br>
26  <a href="#gig">12.&nbsp; Building libgig</a><br>  <a href="#sndfile">12.&nbsp; Building libsndfile</a><br>
27  <a href="#ls">13.&nbsp; Building linuxsampler</a><br>  <a href="#gig">13.&nbsp; Building libgig</a><br>
28  <a href="#gigedit">14.&nbsp; Building gigedit</a><br>  <a href="#ls">14.&nbsp; Building linuxsampler</a><br>
29    <a href="#gigedit">15.&nbsp; Building gigedit</a><br>
30  </div>  </div>
31    
32    
# Line 38  the build procedure will be the same as Line 39  the build procedure will be the same as
39  ./configure ; make ; make install.</p>  ./configure ; make ; make install.</p>
40    
41  <p>The versions of the files to download are just the ones I used  <p>The versions of the files to download are just the ones I used
42  before writing this text. You can probably use later ones if  before updating this text. You can probably use later ones if
43  available.</p>  available.</p>
44    
45  <p>Some of the instructions below are marked with ** and ***:</p>  <p>Some of the instructions below are marked with ** and ***:</p>
# Line 66  download just GLib and pkg-config Line 67  download just GLib and pkg-config
67  from <a href="http://www.gtk.org">www.gtk.org</a>.)</p>  from <a href="http://www.gtk.org">www.gtk.org</a>.)</p>
68    
69  <p>Download the gtkmm windows installer,  <p>Download the gtkmm windows installer,
70  gtkmm-win32-devel-2.14.3-2.exe,  gtkmm-win32-devel-2.16.0-4.exe,
71  from <a href="http://www.gtkmm.org">www.gtkmm.org</a>, and run it. Let  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>  the installer adjust the PATH variable as it wants.</p>
73    
74    
75  <h3><a name="msys">4.&nbsp; MSYS</a></h3>  <h3><a name="msys">4.&nbsp; MSYS</a></h3>
76    
77  <p>I use the 1.0.11 Technology Preview version, as I had problems  <p>Download from "MSYS Base System, Current Release_ MSYS-1.0.11":</p>
78  building DLLs with the 1.0.10 current version.</p>  <pre>MSYS-1.0.11.exe</pre>
79    
80  <p>Download from "MSYS Base System, Technology Preview: MSYS-1.0.11":</p>  <p>Run the installer.</p>
81    
82  <pre>msysCORE-1.0.11-20080826.tar.gz</pre>  <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    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    perl-5.6.1-MSYS-1.0.11-1.tar.bz2 **</pre>
87    
88  <p>Unpack the file to a directory of your choice, for example C:\msys. As  <p>Extract these files to the msys root directory, by starting msys, do
89  1.0.11 doesn't have an installer yet, you need to have an unpacker  "cd /" followed by "tar xaf <i>filename</i>".</p>
 that supports tar.gz/tar.bz, for example 7-Zip. The rest of the files  
 you can unpack with the tar included in msysCORE.</p>  
90    
91  <p>Run the postinstall\pi.bat file and specify your MinGW  <p>Download from "MinGW autoconf, autoconf2.5, autoconf2.5-2.63-1":</p>
92  directory.</p>  <pre>autoconf2.5-2.63-1-mingw32-bin.tar.lzma **</pre>
93    
94  <p>Download from "MSYS Supplementary Tools, Technology Preview: Tools for  <p>From "MinGW autoconf, wrapper, autoconf-6-1":</p>
95  MSYS-1.0.11":</p>  <pre>autoconf-6-1-mingw32-bin.tar.lzma **</pre>
96    
97  <pre>autoconf2.5-2.61-1-bin.tar.bz2 **  <p>From "MinGW automake, automake1.11, automake1.11-1.11-1":</p>
98  autoconf-4-1-bin.tar.bz2 **  <pre>automake1.11-1.11-1-mingw32-bin.tar.lzma **</pre>
99  automake1.10-1.10-1-bin.tar.bz2 **  
100  automake-3-1-bin.tar.bz2 **  <p>From "MinGW automake, wrapper, automake-4-1":</p>
101  bison-2.3-MSYS-1.0.11-1.tar.bz2 **  <pre>automake-4-1-mingw32-bin.tar.lzma **</pre>
102  crypt-1.1-1-MSYS-1.0.11-1.tar.bz2 **  
103  cvs-1.11.22-MSYS-1.0.11-1-bin.tar.gz **  <p>From "MinGW gettext, gettext-0.17-1":</p>
104  gettext-0.16.1-1-bin.tar.bz2 ***  <pre>gettext-0.17.1-1-mingw32-dev.tar.lzma ***
105  gettext-0.16.1-1-dll.tar.bz2 ***  libgettextpo-0.17-1-mingw32-dll-0.tar.lzma ***
106  libiconv-1.11-1-bin.tar.bz2 ***  libintl-0.17-1-mingw32-dll-8.tar.lzma ***</pre>
107  libiconv-1.11-1-dll.tar.bz2 ***  
108  libtool1.5-1.5.25a-1-bin.tar.bz2  <p>From "MinGW libiconv, libiconv-1.13.1-1":</p>
109  perl-5.6.1-MSYS-1.0.11-1.tar.bz2 ***</pre>  <pre>libiconv-1.13.1-1-mingw32-dll-2.tar.lzma ***</pre>
110    
111  <p>Extract all these files to the msys directory, by starting msys, do  <p>From "GCC Version 4, Current Release_ gcc-4.4.0":</p>
112  "cd /" followed by "tar xjf <i>filename</i>" for .tar.bz2 files and  <pre>gcc-core-4.4.0-mingw32-dll.tar.gz ***</pre>
113  "tar xzf <i>filename</i>" for .tar.gz files.</p>  
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  <h3><a name="asio">5.&nbsp; ASIO SDK</a></h3>  <h3><a name="asio">5.&nbsp; ASIO SDK</a></h3>
# Line 128  version 3). Extract it to msys $HOME.</p Line 137  version 3). Extract it to msys $HOME.</p
137  <p>Download intltool_0.40.4-1_win32.zip from  <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>  <a href="http://ftp.gnome.org/pub/GNOME/binaries/win32/intltool">http://ftp.gnome.org/pub/GNOME/binaries/win32/intltool</a></p>
139    
140  <p>Unzip this into the msys local directory, (C:\msys\local for  <p>Unzip this into the gtkmm directory (C:\Program Files\gtkmm)</p>
 example)</p>  
141    
142    
143  <h3><a name="perl">8.&nbsp; Perl ***</a></h3>  <h3><a name="perl">8.&nbsp; Perl ***</a></h3>
# Line 144  install it.</p> Line 152  install it.</p>
152    
153  <p>The gigedit Makefile wants to build the gigedit quick start  <p>The gigedit Makefile wants to build the gigedit quick start
154  documentation, so it needs the xsltproc command. Download from  documentation, so it needs the xsltproc command. Download from
155  <a href="ftp://ftp.zlatkovic.com/pub/libxml/">ftp://ftp.zlatkovic.com/pub/libxml/</a>:</p>  <a href="http://www.zlatkovic.com/pub/libxml/">http://www.zlatkovic.com/pub/libxml/</a>:</p>
156    
157  <pre>libxml2-2.7.2+.win32.zip  <pre>libxml2-2.7.3.win32.zip
158  libxslt-1.1.24.win32.zip</pre>  libxslt-1.1.24.win32.zip</pre>
159    
160  <p>Copy the contents of the bin directories from both zip files to a  <p>Copy the contents of the bin directories from both zip files to a
# Line 163  used by autoconf. (Make sure the gtkmm p Line 171  used by autoconf. (Make sure the gtkmm p
171  installed it. The space in "Program Files" causes problems, so the  installed it. The space in "Program Files" causes problems, so the
172  short file name form is used here):</p>  short file name form is used here):</p>
173    
174  <pre>echo "/c/Progra~1/gtkmm/share/aclocal" >> /usr/local/share/aclocal/dirlist</pre>  <pre>echo "/c/Progra~1/gtkmm/share/aclocal" >> /mingw/share/aclocal/dirlist</pre>
175    
176  <p>Add the gtkmm bin directory first in your PATH (the installer has  <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"  already added gtkmm to the PATH, but it may have used "Program Files"
# Line 171  with a space in it, which causes configu Line 179  with a space in it, which causes configu
179    
180  <pre>export PATH=/c/Progra~1/gtkmm/bin:$PATH</pre>  <pre>export PATH=/c/Progra~1/gtkmm/bin:$PATH</pre>
181    
182  <p>Make sure pkg-config will find the LinuxSampler libraries:</p>  <p>Make sure pkg-config will find the libraries you build:</p>
183    
184  <pre>export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig</pre>  <pre>export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig</pre>
185    
# Line 185  ln -s /c/Perl/bin/perl.exe /opt/perl/bin Line 193  ln -s /c/Perl/bin/perl.exe /opt/perl/bin
193  export PATH=/c/Perl/bin:$PATH</pre>  export PATH=/c/Perl/bin:$PATH</pre>
194    
195    
196  <p>*** MSYS gettext and gtkmm both include libintl. We want the gtkmm  <p>*** MinGW gettext and gtkmm both include libintl. We want the gtkmm
197  version. Remove the MSYS files so the gettext configure tools don't  version. Remove the MinGW files so the gettext configure tools don't
198  choose the wrong version:</p>  choose the wrong version:</p>
199    
200  <pre>rm /usr/local/include/libintl.h /usr/local/lib/libintl*</pre>  <pre>rm /mingw/include/libintl.h /mingw/lib/libintl*</pre>
201    
202    
203  <p>*** The gettext configure tools also need:</p>  <p>*** The gettext configure tools also need:</p>
# Line 198  choose the wrong version:</p> Line 206  choose the wrong version:</p>
206  export LDFLAGS="-L/c/Progra~1/gtkmm/lib"</pre>  export LDFLAGS="-L/c/Progra~1/gtkmm/lib"</pre>
207    
208    
209  <h3><a name="sndfile">11.&nbsp; Building libsndfile</a></h3>  <h3><a name="sqlite">11.&nbsp; Building SQLite</a></h3>
210    
211    <p>The windows precompiled version of SQLite doesn't include the
212    neccessary development files, so it's best to build SQLite yourself.
213    Download sqlite-amalgamation-3.6.16.tar.gz
214    from <a href="http://www.sqlite.org">www.sqlite.org</a>
215    and extract it to your $HOME:</p>
216    
217    <pre>cd
218    tar xzf sqlite-amalgamation-3.6.16.tar.gz</pre>
219    
220    <p>Build and install:</p>
221    
222    <pre>cd sqlite-3.6.16
223    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  <p>The windows precompiled version of libsndfile doesn't include the  <p>The windows precompiled version of libsndfile doesn't include the
233  neccessary pkg-config file, so it's best to build libsndfile  neccessary pkg-config file, so it's best to build libsndfile
234  yourself. Download libsndfile-1.0.17.tar.gz  yourself. Download libsndfile-1.0.20.tar.gz
235  from <a href="http://www.mega-nerd.com/libsndfile/">www.mega-nerd.com</a> and  from <a href="http://www.mega-nerd.com/libsndfile/">www.mega-nerd.com</a> and
236  extract it to your $HOME:</p>  extract it to your $HOME:</p>
237    
238  <pre>cd  <pre>cd
239  tar xzf libsndfile-1.0.17.tar.gz</pre>  tar xzf libsndfile-1.0.20.tar.gz</pre>
   
 <p>To prevent a compilation error for the test cases, add</p>  
240    
241  <pre>#include &lt;stdint.h></pre>  <p>Build and install:</p>
242    
243  <p>to tests/utils.h.</p>  <pre>cd libsndfile-1.0.20
244    ./configure
 <pre>./configure  
245  make  make
246  make install</pre>  make install</pre>
247    
248    
249  <h3><a name="gig">12.&nbsp; Building libgig</a></h3>  <h3><a name="gig">13.&nbsp; Building libgig</a></h3>
250    
251  <p>Just use the same commands as you would in linux:</p>  <p>Just use the same commands as you would in linux:</p>
252    
# Line 230  make Line 256  make
256  make install</pre>  make install</pre>
257    
258    
259  <h3><a name="ls">13.&nbsp; Building linuxsampler</a></h3>  <h3><a name="ls">14.&nbsp; Building linuxsampler</a></h3>
260    
261  <pre>make -f Makefile.cvs    (if you build from CVS)  <pre>make -f Makefile.cvs    (if you build from CVS)
262  ./configure --enable-asiosdk-dir=$HOME --enable-vstsdk-dir=$HOME/vstsdk2.4  ./configure --enable-asiosdk-dir=$HOME --enable-vstsdk-dir=$HOME/vstsdk2.4
# Line 238  make Line 264  make
264  make install</pre>  make install</pre>
265    
266    
267  <h3><a name="gigedit">14.&nbsp; Building gigedit</a></h3>  <h3><a name="gigedit">15.&nbsp; Building gigedit</a></h3>
268    
269  <pre>make -f Makefile.cvs    (if you build from CVS)  <pre>make -f Makefile.cvs    (if you build from CVS)
270  ./configure  ./configure

Legend:
Removed from v.1821  
changed lines
  Added in v.1949

  ViewVC Help
Powered by ViewVC