Changeset 20929 for juggler/trunk/INSTALL.html
- Timestamp:
- 11/18/07 13:05:25 (10 months ago)
- Files:
-
- juggler/trunk/INSTALL.html (modified) (8 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
juggler/trunk/INSTALL.html
r20738 r20929 1 1 <html><head> 2 2 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 3 <title>Building and Installing the Juggler Project (Version 2.3)</title><link rel="stylesheet" href="base_style.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.73. 0"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="article" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="d0e1"></a>Building and Installing the Juggler Project (Version 2.3)</h2></div><div><div class="authorgroup"><div class="author"><h3 class="author"><span class="othername">The Juggler Team</span></h3></div></div></div><div><p class="pubdate">$Date$</p></div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="#d0e15">Introduction</a></span></dt><dd><dl><dt><span class="section"><a href="#d0e32">Important Notes for IRIX Users</a></span></dt><dt><span class="section"><a href="#d0e116">Important Note for Windows Users</a></span></dt></dl></dd><dt><span class="section"><a href="#d0e124">Build Tools</a></span></dt><dt><span class="section"><a href="#source.code.section">Getting the Source Code and the Dependencies</a></span></dt><dd><dl><dt><span class="section"><a href="#section.cvs.access">How to Get the Juggler Suite from Subversion</a></span></dt><dt><span class="section"><a href="#d0e250">Downloading Third-Party Dependencies</a></span></dt></dl></dd><dt><span class="section"><a href="#compile.section">Compiling</a></span></dt><dd><dl><dt><span class="section"><a href="#d0e332">Important Note Regarding Compiling</a></span></dt><dt><span class="section"><a href="#d0e343">Compiling the Juggler Suite of Tools</a></span></dt><dt><span class="section"><a href="#compile.individual.section">Tips for Compiling Individual Tools in the Juggler3 <title>Building and Installing the Juggler Project (Version 2.3)</title><link rel="stylesheet" href="base_style.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.73.2"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="article" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="d0e1"></a>Building and Installing the Juggler Project (Version 2.3)</h2></div><div><div class="authorgroup"><div class="author"><h3 class="author"><span class="othername">The Juggler Team</span></h3></div></div></div><div><p class="pubdate">$Date$</p></div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="#d0e15">Introduction</a></span></dt><dd><dl><dt><span class="section"><a href="#d0e32">Important Notes for IRIX Users</a></span></dt><dt><span class="section"><a href="#d0e116">Important Note for Windows Users</a></span></dt></dl></dd><dt><span class="section"><a href="#d0e124">Build Tools</a></span></dt><dt><span class="section"><a href="#source.code.section">Getting the Source Code and the Dependencies</a></span></dt><dd><dl><dt><span class="section"><a href="#section.cvs.access">How to Get the Juggler Suite from Subversion</a></span></dt><dt><span class="section"><a href="#d0e250">Downloading Third-Party Dependencies</a></span></dt></dl></dd><dt><span class="section"><a href="#compile.section">Compiling</a></span></dt><dd><dl><dt><span class="section"><a href="#d0e332">Important Note Regarding Compiling</a></span></dt><dt><span class="section"><a href="#d0e343">Compiling the Juggler Suite of Tools</a></span></dt><dt><span class="section"><a href="#compile.individual.section">Tips for Compiling Individual Tools in the Juggler 4 4 Suite</a></span></dt></dl></dd></dl></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e15"></a>Introduction</h2></div></div></div><p>You have downloaded the source code for Version 2.3 of the Juggler 5 5 Project. This is the code that will become VR Juggler 3.0, and it is the … … 216 216 software. Sonix itself cannot play audio, but it includes 217 217 plug-ins based on popular interfaces for playing audio. Each 218 plug-in depends on a specific audio software library.</p><div class="itemizedlist"><ul type="disc"><li><p>VPR</p></li><li><p>GMTL 0.4.12</p></li></ul></div><div class="section" lang="en"><div class="titlepage"><div><div><h6 class="title"><a name="d0e475"></a>Sonix OpenAL Plug-in</h6></div></div></div><div class="itemizedlist"><ul type="disc"><li><p>Sonix</p></li><li><p>OpenAL</p></li><li><p>Free ALUT</p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h6 class="title"><a name="d0e488"></a>Sonix Audiere Plug-in</h6></div></div></div><div class="itemizedlist"><ul type="disc"><li><p>Sonix</p></li><li><p>Audiere</p></li></ul></div></div>< div class="section" lang="en"><div class="titlepage"><div><div><h6 class="title"><a name="d0e498"></a>Sonix AudioWorks Plug-in</h6></div></div></div><div class="itemizedlist"><ul type="disc"><li><p>Sonix</p></li><li><p>AudioWorks</p></li></ul></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="d0e508"></a>Gadgeteer</h5></div></div></div><p>Gadgeteer handles all input devices that can be used by219 VR Juggler applications.</p><div class="itemizedlist"><ul type="disc"><li><p>VPR</p></li><li><p>JCCL</p></li><li><p>GMTL 0.4.12</p></li><li><p>X Window System (non-Windows platforms)</p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="d0e5 26"></a>Gadgeteer Device Driver Plug-ins</h5></div></div></div><p>The device driver plug-ins for Gadgeteer are independent218 plug-in depends on a specific audio software library.</p><div class="itemizedlist"><ul type="disc"><li><p>VPR</p></li><li><p>GMTL 0.4.12</p></li></ul></div><div class="section" lang="en"><div class="titlepage"><div><div><h6 class="title"><a name="d0e475"></a>Sonix OpenAL Plug-in</h6></div></div></div><div class="itemizedlist"><ul type="disc"><li><p>Sonix</p></li><li><p>OpenAL</p></li><li><p>Free ALUT</p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h6 class="title"><a name="d0e488"></a>Sonix Audiere Plug-in</h6></div></div></div><div class="itemizedlist"><ul type="disc"><li><p>Sonix</p></li><li><p>Audiere</p></li></ul></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="d0e498"></a>Gadgeteer</h5></div></div></div><p>Gadgeteer handles all input devices that can be used by 219 VR Juggler applications.</p><div class="itemizedlist"><ul type="disc"><li><p>VPR</p></li><li><p>JCCL</p></li><li><p>GMTL 0.4.12</p></li><li><p>X Window System (non-Windows platforms)</p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="d0e516"></a>Gadgeteer Device Driver Plug-ins</h5></div></div></div><p>The device driver plug-ins for Gadgeteer are independent 220 220 components that are discovered and used at run time based on 221 221 the application configuration. Drivers with dependencies are 222 222 optional.</p><div class="itemizedlist"><ul type="disc"><li><p>Gadgeteer</p></li><li><p>VRPN 07.03 for the VRPN driver plug-in</p></li><li><p>TrackD API 4 for the TrackD API driver 223 223 plug-in</p></li><li><p>Microsoft Speech API for the MS Speech API driver 224 plug-in</p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="d0e5 44"></a>Gadgeteer Cluster Plug-ins</h5></div></div></div><p>The cluster plug-ins extend the functionality of the225 clustering infrastructure built into Gadgeteer.</p><div class="itemizedlist"><ul type="disc"><li><p>Gadgeteer</p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="d0e5 53"></a>VR Juggler</h5></div></div></div><p>The VR Juggler module is the unifying piece that pulls224 plug-in</p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="d0e534"></a>Gadgeteer Cluster Plug-ins</h5></div></div></div><p>The cluster plug-ins extend the functionality of the 225 clustering infrastructure built into Gadgeteer.</p><div class="itemizedlist"><ul type="disc"><li><p>Gadgeteer</p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="d0e543"></a>VR Juggler</h5></div></div></div><p>The VR Juggler module is the unifying piece that pulls 226 226 all the other Juggler modules together. It provides a virtual 227 227 platform for VR application development. Real-time rendering is … … 229 229 is optional.</p><div class="itemizedlist"><ul type="disc"><li><p>Gadgeteer</p></li><li><p>Sonix</p></li><li><p>OpenGL</p></li><li><p>OpenGL Performer for the 230 230 <span class="emphasis"><em>optional</em></span> OpenGL Performer Draw 231 Manager</p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="d0e5 74"></a>VR Juggler Run-Time Performance Monitoring Plug-in231 Manager</p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="d0e564"></a>VR Juggler Run-Time Performance Monitoring Plug-in 232 232 (C++)</h5></div></div></div><p>The C++ VR Juggler Run-Time Performance Monitoring 233 233 Plug-in provides an optional extension to VR Juggler for remote 234 234 visualization of performance metrics that are captured while 235 235 running a VR Juggler application. Communication is performed 236 using the Tweek C++ API on top of CORBA.</p><div class="itemizedlist"><ul type="disc"><li><p>Tweek C++ API</p></li><li><p>VR Juggler</p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="d0e5 86"></a>VR Juggler Run-Time Performance Monitoring Plug-in236 using the Tweek C++ API on top of CORBA.</p><div class="itemizedlist"><ul type="disc"><li><p>Tweek C++ API</p></li><li><p>VR Juggler</p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="d0e576"></a>VR Juggler Run-Time Performance Monitoring Plug-in 237 237 (Java)</h5></div></div></div><p>The Java VR Juggler Run-Time Performance Monitoring 238 238 Plug-in is an optional extension that provides the features … … 241 241 another JavaBean handled by the Tweek JavaBean Loader, and it 242 242 uses CORBA to communicate with the C++ VR Juggler Run-Time 243 Performance Monitoring Plug-in.</p><div class="itemizedlist"><ul type="disc"><li><p>JCCL Java API</p></li><li><p>JFreeChart (included with Juggler source)</p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="d0e5 98"></a>VRJConfig</h5></div></div></div><p>VRJConfig is the graphical editor for Juggler243 Performance Monitoring Plug-in.</p><div class="itemizedlist"><ul type="disc"><li><p>JCCL Java API</p></li><li><p>JFreeChart (included with Juggler source)</p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="d0e588"></a>VRJConfig</h5></div></div></div><p>VRJConfig is the graphical editor for Juggler 244 244 configurations. It is a JavaBean loaded by the Tweek JavaBean 245 245 Loader, and it makes use of the editor Beans provided by the 246 JCCL Java API.</p><div class="itemizedlist"><ul type="disc"><li><p>JCCL Java API</p></li><li><p>JGraph (included with Juggler source)</p></li></ul></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e6 10"></a>Preparing Flagpoll</h4></div></div></div><p>The Flagpoll software has a default search path where it246 JCCL Java API.</p><div class="itemizedlist"><ul type="disc"><li><p>JCCL Java API</p></li><li><p>JGraph (included with Juggler source)</p></li></ul></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e600"></a>Preparing Flagpoll</h4></div></div></div><p>The Flagpoll software has a default search path where it 247 247 looks for <code class="filename">.pc</code> and <code class="filename">.fpc</code> 248 248 package metadata files. It searchs … … 356 356 when running <span class="command"><strong>configure.pl</strong></span>.</p></div></li></ol></div><p>By default, the configuration process will configure VR 357 357 Juggler and all of its dependencies. This includes Sonix, which 358 is an interesting special case. Sonix can make use of Audiere ,359 OpenAL, or AudioWorks to add sound to VR Juggler applications.360 If none of those packages is found, Sonix will “<span class="quote">stub361 out</span>” its sound APIs. This means that Sonix and the VR362 Juggler Sound Manager can still be used in applications, but no363 audio will be heard at run time. See <a class="xref" href="#sonix.compile.section" title="Sonix">the section called “Sonix”</a> for more information about364 how to configure Sonix to use Audiere, OpenAL, or365 Audi oWorks.</p><p>For example uses of <span class="command"><strong>configure.pl</strong></span>, take358 is an interesting special case. Sonix can make use of Audiere 359 or OpenAL to add sound to VR Juggler applications. If none of 360 those packages is found, Sonix will “<span class="quote">stub out</span>” its 361 sound APIs. This means that Sonix and the VR Juggler Sound 362 Manager can still be used in applications, but no audio will be 363 heard at run time. See <a class="xref" href="#sonix.compile.section" title="Sonix">the section called “Sonix”</a> 364 for more information about how to configure Sonix to use 365 Audiere or OpenAL.</p><p>For example uses of <span class="command"><strong>configure.pl</strong></span>, take 366 366 a look at the Wiki page relating to building from source 367 367 (<a class="ulink" href="http://www.vrjuggler.org/twiki_public/bin/view/Juggler/BuildingFromSvn" target="_top">http://www.vrjuggler.org/twiki_public/bin/view/Juggler/BuildingFromSvn</a>). … … 370 370 has information on more advanced uses of 371 371 <span class="command"><strong>configure.pl</strong></span> that are beyond the scope of 372 this document.</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="d0e8 96"></a>Using Locally Installed Software</h5></div></div></div><p>As noted in <a class="xref" href="#source.code.section" title="Getting the Source Code and the Dependencies">the section called “Getting the Source Code and the Dependencies”</a>, VR372 this document.</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="d0e886"></a>Using Locally Installed Software</h5></div></div></div><p>As noted in <a class="xref" href="#source.code.section" title="Getting the Source Code and the Dependencies">the section called “Getting the Source Code and the Dependencies”</a>, VR 373 373 Juggler depends on several external software packages. As an 374 374 example, consider the case where the Boost libraries are … … 387 387 tools in the Juggler Suite are compiled correctly. For the most part, 388 388 this duplicates information that can be found on the Wiki page 389 relating to building from source (<a class="ulink" href="http://www.vrjuggler.org/twiki_public/bin/view/Juggler/BuildingFromSvn" target="_top">http://www.vrjuggler.org/twiki_public/bin/view/Juggler/BuildingFromSvn</a>).</p><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="sonix.compile.section"></a>Sonix</h4></div></div></div><p>Sonix wraps other audio subsystems such as OpenAL (<a class="ulink" href="http://www.openal.org/" target="_top">www.openal.org</a>), Audiere 390 (<a class="ulink" href="http://audiere.sf.net/" target="_top">audiere.sf.net</a>), or 391 AudioWorks (<a class="ulink" href="http://www.multigen.com/" target="_top">multigen.com</a>). At least one 392 of these packages must be installed for use by Sonix in order to 393 hear sounds in VR Juggler applications. Once you have all the 394 necessary source code and third-party package installations, add 395 one or more of the following options to your 389 relating to building from source (<a class="ulink" href="http://www.vrjuggler.org/twiki_public/bin/view/Juggler/BuildingFromSvn" target="_top">http://www.vrjuggler.org/twiki_public/bin/view/Juggler/BuildingFromSvn</a>).</p><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="sonix.compile.section"></a>Sonix</h4></div></div></div><p>Sonix wraps other audio subsystems such as OpenAL (<a class="ulink" href="http://www.openal.org/" target="_top">www.openal.org</a>) or Audiere 390 (<a class="ulink" href="http://audiere.sf.net/" target="_top">audiere.sf.net</a>). At 391 least one of these packages must be installed for use by Sonix in 392 order to hear sounds in VR Juggler applications. Once you have all 393 the necessary source code and third-party package installations, 394 add one or more of the following options to your 396 395 <span class="command"><strong>configure.pl</strong></span> command line to enable the 397 396 appropriate audio subsystem:</p><div class="itemizedlist"><ul type="disc"><li><p><code class="option">--enable-openal … … 403 402 of Audiere and tell the build where Audiere is installed. 404 403 The default search path is 405 <code class="filename">/usr/local</code>.</p></li><li><p><code class="option">--enable-audioworks 406 --with-audioworks=<AUDIOWORKS_PATH></code>: Enable 407 the use of AudioWorks and tell the build where AudioWorks is 408 installed. The default search path is 409 <code class="filename">/usr</code>.</p></li></ul></div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3><p>AudioWorks and OpenAL cannot be compiled together. They 410 depend on mutually exclusive VPR threading subsystems. Warnings 411 will be printed by the Sonix configure script indicating this 412 fact. OpenAL and Audiere can be compiled together, 413 however.</p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="tweek.build.section"></a>Tweek</h4></div></div></div><p>Tweek needs JDK 1.4 or newer and a C++ CORBA implementation. 404 <code class="filename">/usr/local</code>.</p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="tweek.build.section"></a>Tweek</h4></div></div></div><p>Tweek needs JDK 1.4 or newer and a C++ CORBA implementation. 414 405 Currently, we primarily use omniORB 4.0. Visit the <a class="ulink" href="http://omniorb.sourceforge.net/" target="_top">omniORB website</a> to 415 406 download omniORB.</p><p>For the following steps, assume that you have omniORB
