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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2479 - (hide annotations) (download) (as text)
Sat Oct 26 11:51:13 2013 UTC (10 years, 6 months ago) by persson
File MIME type: text/html
File size: 27113 byte(s)
Google now supports https for ads
1 senoner 542 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2     <html>
3     <head>
4     <link rel="stylesheet" type="text/css" href="index.css">
5     <title>The Linux Sampler Project</title>
6    
7     <meta http-equiv="content-type"
8     content="text/html; charset=ISO-8859-1">
9    
10     <script language="javascript" type="text/javascript">
11     <!--
12     var dir = "gfx/";
13    
14     if(document.images) {
15    
16     newsover = new Image();
17     newsover.src = dir + "mnewshover.png";
18    
19     newsout = new Image();
20     newsout.src = dir + "mnews.png";
21    
22     aboutover = new Image();
23     aboutover.src = dir + "mabouthover.png";
24    
25     aboutout = new Image();
26     aboutout.src = dir + "mabout.png";
27    
28     featuresover = new Image();
29     featuresover.src = dir + "mfeatureshover.png";
30    
31     featuresout = new Image();
32     featuresout.src = dir + "mfeatures.png";
33    
34     screenshotsover = new Image();
35     screenshotsover.src = dir + "mscreenshotshover.png";
36    
37     screenshotsout = new Image();
38     screenshotsout.src = dir + "mscreenshots.png";
39    
40     demosover = new Image();
41     demosover.src = dir + "mdemoshover.png";
42    
43     demosout = new Image();
44     demosout.src = dir + "mdemos.png";
45    
46     downloadsover = new Image();
47     downloadsover.src = dir + "mdownloadshover.png";
48    
49     downloadsout = new Image();
50     downloadsout.src = dir + "mdownloads.png";
51    
52 senoner 1938 donationsover = new Image();
53     donationsover.src = dir + "mdonationshover.png";
54    
55     donationsout = new Image();
56     donationsout.src = dir + "mdonations.png";
57    
58 schoenebeck 1675 supportover = new Image();
59     supportover.src = dir + "msupporthover.png";
60     supportout = new Image();
61     supportout.src = dir + "msupport.png";
62    
63 senoner 542 developersover = new Image();
64     developersover.src = dir + "mdevelopershover.png";
65    
66     developersout = new Image();
67     developersout.src = dir + "mdevelopers.png";
68    
69     instrumentsover = new Image();
70     instrumentsover.src = dir + "minstrumentshover.png";
71    
72     instrumentsout = new Image();
73     instrumentsout.src = dir + "minstruments.png";
74    
75     linksover = new Image();
76     linksover.src = dir + "mlinkshover.png";
77    
78     linksout = new Image();
79     linksout.src = dir + "mlinks.png";
80    
81     documentationover = new Image();
82     documentationover.src = dir + "mdocumentationhover.png";
83    
84     documentationout = new Image();
85     documentationout.src = dir + "mdocumentation.png";
86    
87     creditsover = new Image();
88     creditsover.src = dir + "mcreditshover.png";
89    
90     creditsout = new Image();
91     creditsout.src = dir + "mcredits.png";
92    
93     faqover = new Image();
94     faqover.src = dir + "mfaqhover.png";
95    
96     faqout = new Image();
97     faqout.src = dir + "mfaq.png";
98    
99     bugsover = new Image();
100     bugsover.src = dir + "mbugshover.png";
101    
102     bugsout = new Image();
103     bugsout.src = dir + "mbugs.png";
104     }
105     -->
106     </script>
107    
108     </head>
109    
110     <body>
111    
112 persson 2033 <div id="mainwindow"><div class="lsbackground"><img name="LinuxSampler" src="gfx/lsbackground.jpg" alt="LinuxSampler"></div>
113 senoner 542
114     <h1><span class="hidden">The LinuxSampler Project</span></h1>
115    
116     <table border=0 cellspacing=0 cellpadding=0><tr><th colspan=2 align=left>
117     <img name="h1blank" src="gfx/h1blank.png" alt="blank"><span class="hidden">about</span></th></tr>
118     <tr><td valign=top>
119     <a id="news" href="index.php" onmouseover="javascript:if(document.images)document.news.src = newsover.src" onmouseout="javascript:if(document.images)document.news.src = newsout.src"><img name="news" src="gfx/mnews.png" alt="news"></a>
120     <a id="about" href="about.html" onmouseover="javascript:if(document.images)document.about.src = aboutover.src" onmouseout="javascript:if(document.images)document.about.src = aboutout.src"><img name="about" src="gfx/mabout.png" alt="about"></a>
121     <a id="features" href="features.html" onmouseover="javascript:if(document.images)document.features.src = featuresover.src" onmouseout="javascript:if(document.images)document.features.src = featuresout.src"><img name="features" src="gfx/mfeatures.png" alt="features"></a>
122     <a id="screenshots" href="screenshots.html" onmouseover="javascript:if(document.images)document.screenshots.src = screenshotsover.src" onmouseout="javascript:if(document.images)document.screenshots.src = screenshotsout.src"><img name="screenshots" src="gfx/mscreenshots.png" alt="screenshots"></a>
123     <a id="demos" href="demos.html" onmouseover="javascript:if(document.images)document.demos.src = demosover.src" onmouseout="javascript:if(document.images)document.demos.src = demosout.src"><img name="demos" src="gfx/mdemos.png" alt="demos"></a>
124     <a id="downloads" href="downloads.html" onmouseover="javascript:if(document.images)document.downloads.src = downloadsover.src" onmouseout="javascript:if(document.images)document.downloads.src = downloadsout.src"><img name="downloads" src="gfx/mdownloads.png" alt="download"></a>
125 senoner 1938 <a id="donations" href="donations.html" onmouseover="javascript:if(document.images)document.donations.src = donationsover.src" onmouseout="javascript:if(document.images)document.donations.src = donationsout.src"><img name="donations" src="gfx/mdonations.png" alt="donations"></a>
126 schoenebeck 1675 <a id="support" href="support.html" onmouseover="javascript:if(document.images)document.support.src = supportover.src" onmouseout="javascript:if(document.images)document.support.src = supportout.src"><img name="support" src="gfx/msupport.png" alt="support"></a>
127 senoner 542 <a id="developers" href="developers.html" onmouseover="javascript:if(document.images)document.developers.src = developersover.src" onmouseout="javascript:if(document.images)document.developers.src = developersout.src"><img name="developers" src="gfx/mdevelopers.png" alt="developers"></a>
128     <a id="faq" href="faq.html" onmouseover="javascript:if(document.images)document.faq.src = faqover.src" onmouseout="javascript:if(document.images)document.faq.src = faqout.src"><img name="faq" src="gfx/mfaq.png" alt="faq"></a>
129     <a id="documentation" href="documentation.html" onmouseover="javascript:if(document.images)document.documentation.src = documentationover.src" onmouseout="javascript:if(document.images)document.documentation.src = documentationout.src"><img name="documentation" src="gfx/mdocumentation.png" alt="documentation"></a>
130     <a id="bugs" href="http://bugs.linuxsampler.org" onmouseover="javascript:if(document.images)document.bugs.src = bugsover.src" onmouseout="javascript:if(document.images)document.bugs.src = bugsout.src"><img name="bugs" src="gfx/mbugs.png" alt="bugs"></a>
131     <a id="instruments" href="instruments.html" onmouseover="javascript:if(document.images)document.instruments.src = instrumentsover.src" onmouseout="javascript:if(document.images)document.instruments.src = instrumentsout.src"><img name="instruments" src="gfx/minstruments.png" alt="instruments"></a>
132     <a id="links" href="links.html" onmouseover="javascript:if(document.images)document.links.src = linksover.src" onmouseout="javascript:if(document.images)document.links.src = linksout.src"><img name="links" src="gfx/mlinks.png" alt="links"></a>
133     <a id="credits" href="credits.html" onmouseover="javascript:if(document.images)document.credits.src = creditsover.src" onmouseout="javascript:if(document.images)document.credits.src = creditsout.src"><img name="credits" src="gfx/mcredits.png" alt="credits"></a>
134 schoenebeck 1935
135 schoenebeck 1947 <div class="boxed">
136 schoenebeck 1935 <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
137     <input type="hidden" name="cmd" value="_s-xclick">
138     <input type="hidden" name="hosted_button_id" value="6746056">
139     <input type="image" src="https://www.paypal.com/en_US/i/btn/btn_subscribeCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
140     <img alt="" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
141     </form>
142     <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
143     <input type="hidden" name="cmd" value="_s-xclick">
144     <input type="hidden" name="hosted_button_id" value="6746149">
145     <input type="image" src="https://www.paypal.com/en_US/i/btn/btn_donateCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
146     <img alt="" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
147     </form>
148 schoenebeck 2379 <table><tr>
149     <td><a href="http://en.wikipedia.org/wiki/Bitcoin"><img src="gfx/logos/bitcoin32.png" alt="Bitcoins"></a></td>
150     <td>Or donate Bitcoins at:</td>
151     </tr></table>
152     <pre class="btcaddr">1Q9CK7xUhMNWryqYTZLbUTXbrjpYYtwvng</pre>
153     <hr>
154 schoenebeck 1947 <a href="donations.html">Why donate?</a>
155     </div>
156 senoner 1973 <p>
157     <div class="">
158     <center>
159     <script type="text/javascript"><!--
160     google_ad_client = "pub-3408196773880325";
161     /* 120x600, created 8/3/09 */
162     google_ad_slot = "2910827959";
163     google_ad_width = 120;
164     google_ad_height = 600;
165     //-->
166     </script>
167     <script type="text/javascript"
168 persson 2479 src="//pagead2.googlesyndication.com/pagead/show_ads.js">
169 senoner 1973 </script>
170     </center>
171     </div>
172 schoenebeck 1935
173 senoner 1973
174 senoner 542 </td><td valign=top width="100%">
175     <div id="contents">
176    
177     <h2>FAQ</h2>
178 schoenebeck 1468 <div class="groupbox">
179 senoner 542 Here is a collection of frequently asked questions. Please read them before asking on
180 schoenebeck 896 the mailing list.<br>
181 schoenebeck 1468 <br>
182     1.&nbsp;License<br>
183     &nbsp;&nbsp;&nbsp;&nbsp;1.1&nbsp;<a href="#commercial_products">Can I use LinuxSampler in commercial hardware or software products?</a><br>
184     &nbsp;&nbsp;&nbsp;&nbsp;1.2&nbsp;<a href="#commercial_music">Can I use LinuxSampler for commercial music production?</a><br>
185     &nbsp;&nbsp;&nbsp;&nbsp;1.3&nbsp;<a href="#open_source">LinuxSampler is not open source, you are evil!</a><br>
186 schoenebeck 1469 &nbsp;&nbsp;&nbsp;&nbsp;1.4&nbsp;<a href="#closed_source">Will LinuxSampler turn closed-source?</a><br>
187     &nbsp;&nbsp;&nbsp;&nbsp;1.5&nbsp;<a href="#ls_license_change">I've heard the commercial exception of LinuxSampler was added at a certain version?</a><br>
188     &nbsp;&nbsp;&nbsp;&nbsp;1.6&nbsp;<a href="#ls_breaking_libgig_license">Doesn't LinuxSampler illegally link against libgig?</a><br>
189     &nbsp;&nbsp;&nbsp;&nbsp;1.7&nbsp;<a href="#ls_breaking_license">Doesn't LinuxSampler illegally link against other libraries?</a><br>
190 schoenebeck 1468 2.&nbsp;General Questions<br>
191     &nbsp;&nbsp;&nbsp;&nbsp;2.1&nbsp;<a href="#aga">linuxsampler? qsampler? jsampler? libgig? liblscp? jlscp? ... hu?</a><br>
192     &nbsp;&nbsp;&nbsp;&nbsp;2.2&nbsp;<a href="#no_gui">Can I use linuxsampler without a GUI as well?</a><br>
193     3.&nbsp;Compilation / Installation<br>
194     &nbsp;&nbsp;&nbsp;&nbsp;3.1&nbsp;<a href="#install">What do I need to compile and install?</a><br>
195     &nbsp;&nbsp;&nbsp;&nbsp;3.2&nbsp;<a href="#compilarion_error">Compilation of LinuxSampler aborts with ...</a><br>
196 persson 2178 &nbsp;&nbsp;&nbsp;&nbsp;3.3&nbsp;<a href="#svn_checkout">How do I checkout from Subversion?</a><br>
197     &nbsp;&nbsp;&nbsp;&nbsp;3.4&nbsp;<a href="#compile_svn">How do I compile from Subversion?</a><br>
198 schoenebeck 1468 4.&nbsp;Setup<br>
199     &nbsp;&nbsp;&nbsp;&nbsp;4.1&nbsp;<a href="#examples_lscp">Are there example LSCP script files somewhere?</a><br>
200     &nbsp;&nbsp;&nbsp;&nbsp;4.2&nbsp;<a href="#dropouts">I get dropouts (click sounds, noise), what can I do about it?</a><br>
201 schoenebeck 1586 &nbsp;&nbsp;&nbsp;&nbsp;4.3&nbsp;<a href="#runtime_error">LinuxSampler aborts at runtime with ...</a><br>
202 schoenebeck 1468 <br>
203     </div>
204 schoenebeck 896
205     <a name="commercial_products"></a>
206     <h3>Can I use LinuxSampler in commercial hardware or software products?</h3>
207 senoner 702 <p class="default">
208 schoenebeck 703 You are NOT ALLOWED to use LinuxSampler source code, libraries or applications in
209     COMMERCIAL hardware or software products without prior written authorization by the
210     <a href="developers.html">authors</a>. <A HREF="downloads.html">See here</A>
211 schoenebeck 896 </p>
212 senoner 542
213 schoenebeck 896 <a name="commercial_music"></a>
214     <h3>Can I use LinuxSampler for commercial music production?</h3>
215     <p class="default">
216     Hell, yes! Every indirect commercial usage of LinuxSampler, which essentially means
217     using its audio output, can of course be used in commercial applications like music
218     productions, live shows, etc. Don't get us wrong, with the mentioned commercial
219     exception we don't want to restrict the normal user / musician, we just want to avoid
220     somebody to directly make money with our work, that is by selling our software in a
221     sampler product like a sampler + sample library bundle, a hardware sampler or
222     something equivalent, at least not without giving something back to the open source
223     Community.
224     </p>
225    
226     <a name="open_source"></a>
227     <h3>LinuxSampler is not open source, you are evil!</h3>
228     <p class="default">
229     There are of course many definitions of the term "open source", but according to the
230     <a href="http://en.wikipedia.org/wiki/Open_source">definition on Wikipedia</a>
231     LinuxSampler is in fact open source, since you've got complete access to its source
232     code. So due to this fact, a normal user / musician is free to do with LinuxSampler
233     what he likes to do, he can even adjust and tweak every single part of the software
234     by modifying and compiling its source code. And just the fact that we want to avoid
235     our work to be directly exploited in commercial software or hardware products is
236 schoenebeck 897 definitely not an "evil" intention. For the normal user / musician the commercial
237 schoenebeck 896 restriction is even an advantage, since that way commercial actors are forced to
238     support this or another open source project either directly by coding or indirectly
239     by funding and thus increase development speed.
240     </p>
241    
242 schoenebeck 1468 <a name="closed_source"></a>
243     <h3>Will LinuxSampler turn closed-source?</h3>
244     <p class="default">
245     No, LinuxSampler will remain open source. Again, the commercial exception is just to
246     prevent commercial exploitation by third parties that haven't contributed anything to
247     open source projects.
248     </p>
249    
250     <a name="ls_license_change"></a>
251     <h3>I've heard the commercial exception of LinuxSampler was added at a certain version?</h3>
252     <p class="default">
253     No, the commercial exception in LinuxSampler's license terms were there since day one.
254     Even further it's not only there since the very first publicly available CVS
255     (developer) version of LinuxSampler, that commercial exception was even already in
256     Benno Senoner's proof of concept code called "EVO", which LinuxSampler was based on.
257     There was even a rumour that we would have manipulated CVS history to "pretend" this
258     exception wasn't added at a later point. Needless to say that this rumour is completely
259     false as well. Think about it! We're a group of developers spread around the world who
260     work on this project for fun and ideology in our spare time. Most of us contributed to
261     various other open source / free software projects. Do you seriously think we would
262     cheat on such an issue? Beside that you certainly find various people completely
263     unrelated to this project who still have early versions of LinuxSampler and / or EVO
264     and thus can confirm that this commercial exception was always there.
265     </p>
266    
267     <a name="ls_breaking_libgig_license"></a>
268     <h3>Doesn't LinuxSampler illegally link against libgig?</h3>
269     <p class="default">
270     No! LinuxSampler does not "illegally" link against libgig, since the copyright holder
271     (in this case of libgig) has all rights of his work and thus is not bound to his own
272     license terms. The sole purpose of license terms is to grant other people certain
273     rights to use the work.
274     </p>
275    
276     <a name="ls_breaking_license"></a>
277     <h3>Doesn't LinuxSampler illegally link against other libraries?</h3>
278     <p class="default">
279     No, the only library LinuxSampler links to that has license restrictions regarding
280     linking is libgig (<a href="#ls_breaking_libgig_license">see above</a>). Especially
281     LinuxSampler does not break Qt's license terms, since it does not link against Qt at
282     all.
283     </p>
284    
285 schoenebeck 896 <a name="aga"></a>
286 schoenebeck 1404 <h3>linuxsampler? qsampler? jsampler? gigedit? libgig? liblscp? jlscp? ... hu?</h3>
287 senoner 542 <p class="default">
288 schoenebeck 1404 There are currently seven subprojects in the LinuxSampler project; jlscp, jsampler,
289     libgig, liblscp, linuxsampler, gigedit and qsampler. linuxsampler is the core of the sampler, it includes the
290 senoner 542 sampler engines and audio and MIDI drivers. linuxsampler itself is decoupled from any
291 schoenebeck 895 user interface. It offers a native C++ API as well as a network server (LSCP server) to allow to be controlled by
292 schoenebeck 585 an arbitrary user frontend from an arbitrary place over a network connection or
293 schoenebeck 1404 (of course) locally from the same machine as well. This decoupled /
294     <a href="http://en.wikipedia.org/wiki/Backend">"backend"</a> design
295     of the sampler allows to run it even on a machine without any graphical interface,
296     without a Desktop, the machine doesn't even have to have a graphics card!
297     qsampler is the first <a href="http://en.wikipedia.org/wiki/Graphical_user_interface">GUI</a>
298     <a href="http://en.wikipedia.org/wiki/Frontend">frontend</a>
299     written for linuxsampler, it is written in C++ using the Qt
300 senoner 542 GUI library and thus can be compiled for various architectures and operating systems
301 schoenebeck 895 without modifications of the source code.
302 schoenebeck 1404 gigedit is an instruments editor application for Gigasampler format files. You can
303     run it as stand-alone application or in conjunction with LinuxSampler. In the latter
304     case you can play and immediately hear all your modifications made with gigedit in
305     realtime.
306 schoenebeck 895 libgig is a C++ library written for accessing Gigasampler files and DLS Level 1 and 2
307 schoenebeck 897 files, that is for reading and (since version 3.0.0) also writing of those files.
308 schoenebeck 1404 libgig is used by linuxsampler to load Gigasampler files, it is used by gigedit to
309     load, modify and create new Gigasampler files and it <b>can</b> be
310 senoner 542 used by qsampler to retrieve additional informations about Gigasampler files. liblscp
311     is a C library written as a wrapper around the LSCP network protocol, thus to control
312     linuxsampler. It was originally designed to be used on both sides, that is on server /
313     backend side (linuxsampler) and on client / frontend side (e.g. qsampler). But it's now
314 schoenebeck 895 only used on client side by qsampler at the moment. jsampler is another GUI frontend for
315     linuxsampler, it's written in Java and thus platform independent. jlscp is a library which
316     can be compared with liblscp, with the only difference that jlscp is written in Java and
317     liblscp in C. jsampler requires jlscp.
318 schoenebeck 897
319 senoner 542 </p>
320    
321 schoenebeck 896 <a name="install"></a>
322 senoner 542 <h3>What do I need to compile and install?</h3>
323     <p class="default">
324 schoenebeck 585 You should compile and install at least libgig and linuxsampler. As a beginner you should
325 schoenebeck 895 definitely as well compile and install a convenient GUI frontend like either qsampler or
326     jsampler, whatever you prefer. qsampler depends on liblscp, so you have to
327 schoenebeck 1404 compile and install liblscp before starting to build qsampler. Also if you like to be
328     able to edit instruments, you should compile and install gigedit as well. The recommended
329     order to compile and install is:
330 schoenebeck 585 <ol class="default">
331     <li>libgig</li>
332     <li>linuxsampler</li>
333 schoenebeck 1404 <li>gigedit</li>
334 schoenebeck 585 <li>liblscp</li>
335     <li>qsampler</li>
336     </ol>
337 senoner 542 </p>
338 schoenebeck 1404 <p class="default">
339     Of course you can also install QSampler and JSampler side by side. So you can test and use
340     both at the same time.
341     </p>
342 senoner 542
343 schoenebeck 896 <a name="compilarion_error"></a>
344 schoenebeck 616 <h3>Compilation of LinuxSampler aborts with ... </h3>
345 schoenebeck 1404
346 schoenebeck 616 <p class="default">
347 schoenebeck 1404 &bull;&nbsp;&nbsp;&nbsp;"<code>Required libgig version not found...</code>"<br>
348     <br>
349     This error might occur when running LinuxSampler's configure script. Make sure
350 persson 2178 you have the required libgig version installed. If you're compiling a Subversion
351 schoenebeck 1404 version of LinuxSampler you usually have to compile and install the current
352 persson 2178 Subversion version of libgig as well. Also note there are couple common mistakes
353     which let this error occur even after having compiled and installed the required
354 schoenebeck 1404 libgig version. Read
355     <a href="https://bugs.linuxsampler.org/cgi-bin/show_bug.cgi?id=29">this bug report</a>
356     about common mistakes and how you can fix them.
357     </p>
358    
359     <p class="default">
360 schoenebeck 895 &bull;&nbsp;&nbsp;&nbsp;"<code>can't find a register in class `GENERAL_REGS' while reloading `asm'</code>"<br>
361     <br>
362     This is caused by the inline assembly code for
363     <a href="http://en.wikipedia.org/wiki/SIMD">SIMD</a> optimization in older versions of
364     linuxsampler. You have to compile older versions of LinuxSampler (v0.3.3 and older) with
365     -O2 or -O3 to avoid this problem. Usually this is done by default, if not try:
366     <br>
367 schoenebeck 1279 </p>
368     <pre class="code">CXXFLAGS="-O3" ./configure
369 schoenebeck 618 make</pre>
370 schoenebeck 1279 <p class="default">
371 schoenebeck 618 Alternatively you could also disable all hand-crafted assembly optimization code by:
372 schoenebeck 1279 </p>
373     <pre class="code">./configure --disable-asm
374 schoenebeck 618 make</pre>
375 schoenebeck 1279 <p class="default">
376     but the latter is definitely not recommended, as it will increase CPU usage a lot!
377 schoenebeck 618 </p>
378 schoenebeck 895
379 schoenebeck 807 <p class="default">
380 schoenebeck 895 &bull;&nbsp;&nbsp;&nbsp;"<code>../common/Resampler.h:142: error: memory input 2 is not directly addressable</code>"<br>
381     <br>
382 schoenebeck 807 This was reported (<a href="http://sourceforge.net/mailarchive/forum.php?thread_id=9018347&forum_id=12792">1</a>,
383     <a href="http://sourceforge.net/mailarchive/forum.php?thread_id=9019467&forum_id=12792">2</a>)
384 schoenebeck 895 to be a gcc/g++ version problem, in conjunction with the inline assembly code for
385     <a href="http://en.wikipedia.org/wiki/SIMD">SIMD</a> optimization in older versions of
386     linuxsampler. Make sure you got gcc and g++, both of version 3.3 or higher installed.
387     You can check this with:
388 schoenebeck 1279 </p>
389     <pre class="code">gcc --version
390 schoenebeck 807 g++ --version</pre>
391 schoenebeck 1279 <p class="default">
392 schoenebeck 807 In case you already got gcc and g++ of version 3.3 or higher
393     installed and it still causes the compilation error mentioned
394     above, try the following:
395 schoenebeck 1279 </p>
396     <pre class="code">export CC=`which gcc`
397 schoenebeck 807 export CXX=`which g++`</pre>
398 schoenebeck 1279 <p class="default">
399 schoenebeck 895 On certain systems however you still get this error in conjunction with older
400     versions of LinuxSampler (v0.3.3 and older). Fortunately newer versions of
401     linuxsampler are not affected anymore
402     (<a href="https://bugs.linuxsampler.org/cgi-bin/show_bug.cgi?id=34">read this for details</a>).
403     </p>
404 schoenebeck 616
405 persson 2178 <a name="svn_checkout"></a>
406     <h3>How do I checkout from Subversion?</h3>
407 senoner 542 <p class="default">
408 persson 2178 The procedure of checking out the newest version from Subversion is described on the
409     <a href="downloads.html#svn">Downloads</a> site and on the
410     <a href="http://svn.linuxsampler.org/cgi-bin/viewvc.cgi/">web interface site
411     of our Subversion server</a>.
412 senoner 542 </p>
413    
414 persson 2178 <a name="compile_svn"></a>
415     <h3>How do I compile from Subversion?</h3>
416 senoner 542 <p class="default">
417 persson 2178 The procedure for compiling from Subversion is the same for all subprojects, that is no matter
418     if you are compiling linuxsampler, qsampler, libgig or liblscp from Subversion, you need to
419 senoner 542 have the autotools (automake, autoconf and libtool) installed and compile it that way:
420 schoenebeck 1279 <pre class="code">make -f Makefile.cvs
421 senoner 542 ./configure
422     make</pre>
423 schoenebeck 895 </p>
424 senoner 542
425 schoenebeck 896 <a name="no_gui"></a>
426 senoner 542 <h3>Can I use linuxsampler without a GUI as well?</h3>
427     <p class="default">
428 schoenebeck 895 Yes, but unfortunately there is no console based frontend for linuxsampler (yet).
429     You have to write LSCP scripts and send it to the running linuxsampler application. But
430     don't worry, if you don't know how to write LSCP scripts, you can also start by saving
431     a sampler session with QSampler, because the session files qsampler writes are actually
432     real LSCP scripts. You can send a LSCP script to linuxsampler on the console with the
433     following command:
434 schoenebeck 1279 </p>
435 schoenebeck 1404 <pre class="code">netcat localhost 8888 &lt; yourscript.lscp</pre>
436 schoenebeck 1279 <p class="default">
437     or on certain systems (like Debian) you have to provide the -t switch:
438     </p>
439 schoenebeck 1404 <pre class="code">netcat -t localhost 8888 &lt; yourscript.lscp</pre>
440 schoenebeck 1279 <p class="default">
441 senoner 542 Of course you can also replace localhost by the IP address of the machine where
442     linuxsampler is running. Alternatively you can also make a telnet connection (port 8888)
443     to linuxsampler's LSCP server and type commands manually.
444     </p>
445    
446 schoenebeck 896 <a name="examples_lscp"></a>
447 senoner 542 <h3>Are there example LSCP script files somewhere?</h3>
448     <p class="default">
449     Yes, have a look on the <a href="documentation.html">Documentation</a> site for some
450     common LSCP script examples. For details about LSCP read the
451     <a href="api/draft-linuxsampler-protocol.html">LSCP reference</a>. Be welcome to ask
452 schoenebeck 895 questions for details about LSCP on the
453     <a href="http://lists.sourceforge.net/lists/listinfo/linuxsampler-devel">mailing list</a>.
454 senoner 542 </p>
455    
456     <a name="dropouts"></a>
457     <h3>I get dropouts (click sounds, noise), what can I do about it?</h3>
458     <p class="default">
459     In order to achieve good results under Linux you need to have a
460     <a href="http://www.linuxdj.com/audio/lad/resourceslatency.php3">patched kernel</a>.
461     There are different patches available depending on what version (2.4.x or 2.6.x) of kernel you use.
462 schoenebeck 1045 The <a href="http://jackaudio.org/faq">JACK FAQ site</a>
463     (or the <a href="http://jackit.sourceforge.net/docs/faq.php">old JACK FAQ site</a>)
464     is also a good resource for
465 senoner 542 how to configure a realtime stable kernel. But note; LinuxSampler currently has not support for
466     libcap yet, that means if you are still using a 2.4.x Linux kernel you most probably have to run
467 schoenebeck 895 LinuxSampler with root priviliges. As a rule of thumb: if you don't get warnings like "cannot
468     mlockall() memory" on the console, you are safe to run it as ordinary user as well.
469 senoner 542 </p>
470    
471 schoenebeck 1586 <a name="runtime_error"></a>
472     <h3>LinuxSampler aborts at runtime with ... </h3>
473 schoenebeck 1595 <p class="default">
474     Note: For <b>Windows specific runtime errors</b>, please have a
475     look at the
476     <a href="windows.html#houston">Trouble Shooting</a> section of
477     the LinuxSampler Windows HOWTO.
478     </p>
479 schoenebeck 1586
480     <p class="default">
481     &bull;&nbsp;&nbsp;&nbsp;"<code>gig::Engine error: Failed to
482     load instrument, cause: Unknown exception while trying to
483     parse gig file.</code>"<br>
484     <br>
485     Usually LS gives you a meaningful error message in case it
486     failed to load an instrument. However there might be rare
487     cases where LS cannot resolve the reason and you get an
488     error message like above. In this case make sure security /
489     user limits aren't set too low. You can list your current
490     limits with:
491     </p>
492     <pre class="code">ulimit -a</pre>
493     <p class="default">
494     Usually most of those settings are set to "unlimited" on
495     most boxes. If this is not the case on yours, make sure that
496     at least the limits for "max locked memory", "virtual
497     memory" and "data seg size" are sufficiently high enough.
498     The exact value depends on the instruments you want to load.
499     If your security policy allows it, you could simply set
500     those limits to "unlimited" (see also config file
501     /etc/security/limits.conf and
502     <a href="https://bugs.linuxsampler.org/cgi-bin/show_bug.cgi?id=41">bug report #41</a>).
503     </p>
504    
505 senoner 542 </div>
506     </td></tr></table>
507    
508     </div>
509    
510     </body>
511     </html>

  ViewVC Help
Powered by ViewVC