Build Instructions

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
(Running (Mono))
m
Line 13: Line 13:
 
=== Building ===
 
=== Building ===
  
2. In the top-level directory, run the 'runprebuild.bat' file. This will create both a VS2005 solution file, and a nant build file.
+
2. In the top-level directory, run the '<tt>runprebuild.bat</tt>' file. This will create both a VS2005 solution file, and a nant build file.
  
 
3. Open the resulting sln file with visual studio, and build it there, or if you prefer to use nant, run nant in the same top-level directory. This will build the executables.
 
3. Open the resulting sln file with visual studio, and build it there, or if you prefer to use nant, run nant in the same top-level directory. This will build the executables.
Line 25: Line 25:
 
If you want to implement collision-based physics, OpenDynamicsEngine (ODE) is the furthest along at the moment (9/07).  It is not fully supported, but is starting to work somewhat reliably using a small number of regions per sim.
 
If you want to implement collision-based physics, OpenDynamicsEngine (ODE) is the furthest along at the moment (9/07).  It is not fully supported, but is starting to work somewhat reliably using a small number of regions per sim.
  
As installed from svn, ODE does not work on all platforms.  If you get an ODE-related crash, and/or an <i>ode.dll not found</i> type of error (which can occur even though the dll is present!),   try using the debug version of the dll, available here:
+
As installed from svn, ODE does not work on all platforms.  If you get an ODE-related crash, and/or an <i>ode.dll not found</i> type of error (which can occur even though the dll is present!), try using the debug version of the dll, available here:
  
 
http://www.squiggle.com/opensim/ode-debug.dll <br>
 
http://www.squiggle.com/opensim/ode-debug.dll <br>
  
Rename it ode.dll and put it in .\bin, replacing the stock ode.dll.  You can also try building ode.dll from souce (ode.org, version 0.8; make sure to enable trimesh)
+
Rename it <tt>ode.dll</tt> and put it in <tt>.\bin</tt>, replacing the stock <tt>ode.dll</tt>.  You can also try building <tt>ode.dll</tt> from the latest version of the source (http://www.ode.org/; make sure to enable trimesh)
  
 
=== Running ===
 
=== Running ===
  
Double-click on the OpenSim.exe executable file in the 'bin' directory. This will start up OpenSim in standalone mode.
+
Double-click on the <tt>OpenSim.exe</tt> executable file in the <tt>bin</tt> directory. This will start up OpenSim in standalone mode.
  
The debugger in VS2005 C# may be used to step through the code. For those that use a Cygwin shell, you may find that one or more dll's have permissions that cause problems running. Most find that a "chmod 777 *" from the bin directory solves this.
+
The debugger in VS2005 C# may be used to step through the code. For those that use a Cygwin shell, you may find that one or more dll's have permissions that cause problems running. Most find that a "<tt>chmod 777 *</tt>" from the <tt>bin</tt> directory solves this.
  
Physics can be invoked by adding the appropriate line to opensim.ini, under [Startup].  For ODE, that would be:
+
Physics can be invoked by adding the appropriate line to the [Startup] section of <tt>OpenSim.ini</tt>.  For ODE, that would be:
  
 
  physics = OpenDynamicsEngine
 
  physics = OpenDynamicsEngine
Line 43: Line 43:
 
You can also add a command line option to a shortcut, or run from a command prompt with:
 
You can also add a command line option to a shortcut, or run from a command prompt with:
  
  -physics=OPenDynamicsEngine
+
  -physics=OpenDynamicsEngine
  
 
==Linux/Mac OS X==
 
==Linux/Mac OS X==
Line 53: Line 53:
 
  svn co svn://opensecondlife.org/opensim/trunk opensim.new/trunk
 
  svn co svn://opensecondlife.org/opensim/trunk opensim.new/trunk
  
Note: The libopenjpeg-libsl-...so is not really working. For this reason you should download the newest libsecondlife from http://www.libsecondlife.org, and build your own libopenjpeg library. If you use this instead of the SVN version, your sim will work fine.
+
Note: The <tt>libopenjpeg-libsl-...so</tt> is not really working. For this reason you should download the newest libsecondlife from http://www.libsecondlife.org/, and build your own libopenjpeg library. If you use this instead of the SVN version, your sim will work fine.
  
Note to Mac OS X users: OS X does not come packaged with subversion, so you will need to either install it or access the repository from a computer that does have subversion
+
Note to Mac OS X users: OS X does not come packaged with subversion, so you will need to either install it or access the repository from a computer that does have subversion.
  
 
=== Building (Mono) ===
 
=== Building (Mono) ===
 +
 +
For revisions 1657 and above:
  
 
  cd opensim.new/trunk
 
  cd opensim.new/trunk
Line 64: Line 66:
 
  nant -buildfile:OpenSim.build
 
  nant -buildfile:OpenSim.build
  
mono bin/Prebuild.exe /target nant
+
Earlier revisions (before 1657) require you to rerun prebuild again after the first build, and then build again:
nant -buildfile:OpenSim.build
+
 
+
(Yes, you must rerun the prebuild again after the first build, and then build again!)
+
 
+
Later revisions(1657 and above) no longer require you to build twice.  Thus the procedure is simply as follows:
+
  
 
  cd opensim.new/trunk
 
  cd opensim.new/trunk
 +
 +
mono bin/Prebuild.exe /target nant
 +
nant -buildfile:OpenSim.build
  
 
  mono bin/Prebuild.exe /target nant
 
  mono bin/Prebuild.exe /target nant
Line 84: Line 84:
 
As installed from svn, ODE does not work on all platforms.  If you get an ODE-related crash, and/or a <i>libode.so not found</i> type of error, you will need to build libode from source.
 
As installed from svn, ODE does not work on all platforms.  If you get an ODE-related crash, and/or a <i>libode.so not found</i> type of error, you will need to build libode from source.
  
Remove libode.so from the ./bin folder.  (Note that subsequent svn updates may replace it again; best fix is to copy your built libode.so to bin).  Do NOT remove ode.net.dll!  Download ode 0.8 source packages from ode.org.  When compiling, make sure to use the following configure options:
+
Remove <tt>libode.so</tt> from the <tt>./bin</tt> folder.  (Note that subsequent svn updates may replace it again; best fix is to copy your built <tt>libode.so</tt> to <tt>bin</tt>).  Do NOT remove <tt>ode.net.dll</tt>!  Download the latest source packages from http://www.ode.org/.  When compiling, make sure to use the following configure options:
  
 
  --with-trimesh=gimpact  
 
  --with-trimesh=gimpact  
 
  --enable-shared
 
  --enable-shared
  
make sure the configure script confirms these choices, and always compile with single precision (I believe that's default).  Try <code> make -k </code> if you get errors relating to drawstuff, test*, or openGL.  <code> make install </code> should put libode.so in the proper place (usually /usr/local/lib), and it should be seen by opensim (ode.net.dll)
+
Make sure the configure script confirms these choices, and always compile with single precision (I believe that's the default).  Try <code> make -k </code> if you get errors relating to drawstuff, test*, or openGL.  <code> make install </code> should put <tt>libode.so</tt> in the proper place (usually <tt>/usr/local/lib</tt>), and it should be seen by opensim (<tt>ode.net.dll</tt>)
  
 
=== Running (Mono) ===
 
=== Running (Mono) ===
Line 99: Line 99:
 
  -physics=OpenDynamicsEngine
 
  -physics=OpenDynamicsEngine
  
or add <code>  physics = OpenDynamicsEngine </code> to the [Startup] section of opensim.ini.  Same deal for other physics engines, when available.
+
or add <code>  physics = OpenDynamicsEngine </code> to the [Startup] section of <tt>OpenSim.ini</tt>.  Same deal for other physics engines, when available.
  
 
=Binary releases=
 
=Binary releases=
  
nightly builds, presumably for Linux:
+
Nightly builds, presumably for Linux:
  
 
http://ruth.petitbe.be/build/
 
http://ruth.petitbe.be/build/

Revision as of 00:48, 5 September 2007

Contents

Installing from source

MS Windows

OpenSim requires either the .Net framework version 2.0, or the latest Mono. It also is compiled with the C# and not the C++ IDE for those who are using the no-cost Express Editions from MS.

Subversion Repository

1. Get the source code from the svn repository:

svn://openmv.org/opensim/trunk

Building

2. In the top-level directory, run the 'runprebuild.bat' file. This will create both a VS2005 solution file, and a nant build file.

3. Open the resulting sln file with visual studio, and build it there, or if you prefer to use nant, run nant in the same top-level directory. This will build the executables.

If you don't care about physics (walking on prims, etc), ignore the rest of this section.

Physics

Open Dynamics Engine (ODE)

If you want to implement collision-based physics, OpenDynamicsEngine (ODE) is the furthest along at the moment (9/07). It is not fully supported, but is starting to work somewhat reliably using a small number of regions per sim.

As installed from svn, ODE does not work on all platforms. If you get an ODE-related crash, and/or an ode.dll not found type of error (which can occur even though the dll is present!), try using the debug version of the dll, available here:

http://www.squiggle.com/opensim/ode-debug.dll

Rename it ode.dll and put it in .\bin, replacing the stock ode.dll. You can also try building ode.dll from the latest version of the source (http://www.ode.org/; make sure to enable trimesh)

Running

Double-click on the OpenSim.exe executable file in the bin directory. This will start up OpenSim in standalone mode.

The debugger in VS2005 C# may be used to step through the code. For those that use a Cygwin shell, you may find that one or more dll's have permissions that cause problems running. Most find that a "chmod 777 *" from the bin directory solves this.

Physics can be invoked by adding the appropriate line to the [Startup] section of OpenSim.ini. For ODE, that would be:

physics = OpenDynamicsEngine

You can also add a command line option to a shortcut, or run from a command prompt with:

-physics=OpenDynamicsEngine

Linux/Mac OS X

Subversion Repository

To check out the latest revision:

svn co svn://opensecondlife.org/opensim/trunk opensim.new/trunk

Note: The libopenjpeg-libsl-...so is not really working. For this reason you should download the newest libsecondlife from http://www.libsecondlife.org/, and build your own libopenjpeg library. If you use this instead of the SVN version, your sim will work fine.

Note to Mac OS X users: OS X does not come packaged with subversion, so you will need to either install it or access the repository from a computer that does have subversion.

Building (Mono)

For revisions 1657 and above:

cd opensim.new/trunk
mono bin/Prebuild.exe /target nant
nant -buildfile:OpenSim.build

Earlier revisions (before 1657) require you to rerun prebuild again after the first build, and then build again:

cd opensim.new/trunk
mono bin/Prebuild.exe /target nant
nant -buildfile:OpenSim.build
mono bin/Prebuild.exe /target nant
nant -buildfile:OpenSim.build

Physics

If you want to implement collision-based physics, OpenDynamicsEngine (ODE) is the furthest along at the moment (9/07). It is not fully supported, but is starting to work somewhat reliably using a small number of regions per sim.

Open Dynamics Engine (ODE)

As installed from svn, ODE does not work on all platforms. If you get an ODE-related crash, and/or a libode.so not found type of error, you will need to build libode from source.

Remove libode.so from the ./bin folder. (Note that subsequent svn updates may replace it again; best fix is to copy your built libode.so to bin). Do NOT remove ode.net.dll! Download the latest source packages from http://www.ode.org/. When compiling, make sure to use the following configure options:

--with-trimesh=gimpact 
--enable-shared

Make sure the configure script confirms these choices, and always compile with single precision (I believe that's the default). Try make -k if you get errors relating to drawstuff, test*, or openGL. make install should put libode.so in the proper place (usually /usr/local/lib), and it should be seen by opensim (ode.net.dll)

Running (Mono)

cd bin
mono OpenSim.exe

to invoke ODE, add the option:

-physics=OpenDynamicsEngine

or add physics = OpenDynamicsEngine to the [Startup] section of OpenSim.ini. Same deal for other physics engines, when available.

Binary releases

Nightly builds, presumably for Linux:

http://ruth.petitbe.be/build/

Personal tools
General
About This Wiki