Open Source Platform
for interconnected virtual worlds

Client Dev Building

From RexWiki

Contents

Building the new Naali viewer

See tutorial at http://wiki.realxtend.org/index.php/Building_Naali_from_source_trunk

Compiling the realXtend viewer 0.3 (on Windows)

Currently, up-to-date project/solution files exist for Visual Studio 2005 only.

Either Visual Studio 2005 or Visual Studio 2005 Express C++ can be used to compile the viewer. For Express, make sure you have the Platform SDK and DirectX SDK installed from Microsoft's website and that the development enviroment has been configured to use their library & include directories.

See this document for help with setting up Visual Studio Express: http://www.microsoft.com/express/2005/platformsdk/default.aspx

Because the realXtend viewer is based on the Second Life client, Linden Labs' documentation on compiling can be helpful too, see https://wiki.secondlife.com/wiki/Get_source_and_compile


Required other tools

Compiling requires Python. Download & install from http://www.python.org/download/


Preparing enviroment variables

Not required anymore!


Proprietary libraries & includes

Some proprietary libraries are left out of the viewer source. These need to be downloaded separately and placed to the correct directories:

Quicktime

Download the Quicktime Windows SDK from http://developer.apple.com/quicktime/download/ (you need to register)

Create a subdirectory "quicktime" to linden\libraries\i686-win32\include, and copy all header files (.h) from the SDK there, including the CoreFoundation and GNUCompatibility subdirectories.

Copy the file QTMLClient.lib from the SDK to linden\libraries\i686-win32\lib_release & linden\libraries\i686-win32\lib_debug

Skype4COM.dll

Download Skype4COM.dll from https://developer.skype.com/Docs/Skype4COM/Start Copy the DLL to a system directory (for example C:\Windows) and register it using the following command in a command line prompt:

regsvr32 skype4com.dll


Compiling

Open the solution file "indra_complete.sln" from linden\indra\indra_complete directory.

Use the "ReleaseForDownload" configuration to compile the viewer.

Depending on your Cygwin version, the file indra.y in the lscript_compile_fb subproject may produce errors. In that case, right-click it in Solution Explorer and select Properties -> Custom Build Step -> General. Check the command line; if the line "C:\cygwin\bin\mv.exe ytab.hpp ytab.h" fails, check what file Bison is producing instead of ytab.hpp, and modify the line accordingly.


Compiling the Avatar Generator

After checking out the avatargenerator module from SVN, it should compile pretty much out-of-the-box by opening avatar_generator.sln from the checkout root directory. Use "Release" configuration to run optimally.


Running & making installable packages

The batch file "copyrex.bat" in the root of the source checkout exists to make a fresh executable directory of the realXtend client after compiling, with all (but only) the necessary files. When you execute it, it creates a subdirectory "out" and copies files.

After running copyrex.bat, you should be able to execute realXtend.exe from the "out" directory.

To use Avatar Generator successfully (so that it sees the same 3D models etc. as the viewer) it should be placed into a subdirectory "avatar_generator" within "out" and have its "bin" and "data" directory trees copied there, ending up with a directory structure like this:

out out\avatar_generator out\avatar_generator\bin out\avatar_generator\data

By using the Nullsoft installer system (NSIS) you can create an installer package out of the "out" directory. The necessary installer script (realxtend.nsi) & splash screen (splash.bmp) are in the root directory of the realXtend viewer source.

Note that the Avatar Generator itself does not care of its directory name, but the installer script expects it to be found in the "avatar_generator" subdirectory.