Microsoft Visual Studio

From Second Life Wiki
Revision as of 14:19, 21 July 2010 by Henri Beauchamp (talk | contribs) (Documented the issue with the mandatory security update IOT compile Snowglobe v1)
Jump to navigation Jump to search

Setting up the Microsoft Visual Studio

This page describes installation and configuration properties for Microsoft Visual Studio (MSVS) as it relates to a development environment for Second Life.

Recognized MSVS versions include:

  • Visual Studio 2005 Professional (recommended)
  • Visual C++ 2005 Express
  • Visual Studio/C++ 2008
  • Deprecated: Visual Studio .NET 2003 Professional (only for viewers 1.20 and earlier)

Download Express (optional)

If you do not already own one of the above recognized version, then you may download Microsoft's free IDE and compiler editions.

Click here to download Visual C++ 2005 Express with SP2

Make sure to apply the Service Pack 1 if you are using an older version of Visual C++ 2005 Express. If you are using Windows Vista for development, you will need Visual Studio 2005 Service Pack 1 Update for Windows Vista, too. Note: if you use the web installer that download data during install, then service packs are already included, no manuall install required (current SP is 2).

To build Snowglobe v1 when using Visual C++ Express 2005, make sure to install the KB971090 security update (else you will end up with a non-functional SLPlugin.exe and viewer because of embedded manifests containing two references to VC80.CRT, one for v8.0.50727.762 and the other for v8.0.50727.4053... unlike with v1.23 and previous viewers, some pre-compiled libraries were obviously compiled with the updated VC80 installed on the build system).

Note that, although the latest version of Visual C++ Express Edition is 2008, it is recommended to use 2005 version for the purpose of Second Life development for the moment. This page will be updated when we get enough experiences on VC++ 2008. Note: before using 2008 it might be better to wait (as of december 2009), because the beta of VC 2010 is out and release should be available soon.

Install Microsoft Platform & DirectX SDKs

Download and install:

If you have previously installed an older version of the DirectX 9.0 SDK, remove it first (from Control Panel -> Add or Remove Programs) before installing this version. Installing the new SDK "on top" of an older version may cause problems. Upon installing DirectX, it is sufficient to install only the Headers and Libs part. Other DX development tools are not necessary.

NOTE: Make sure you install to paths without spaces in it.

Setup the project globals

  • Start Visual Studio
  • Go to Tools > Options > Projects and Solutions > VC++ Directories
  • Make sure that the includes and libraries paths ("Include files" and "Library files" in the "show directories for" dropdown) exist, and add them if they don't, in the following order: (see screenshots below)
    1. Platform SDK paths
    2. DirectX SDK paths
    3. Visual C++ paths
    • NOTE: The newest DirectX SDK ("December 2006") lib folder has two sub-folders, x64 and x86. Make sure your path goes to one of them (select lib/x86, not just lib), or you will get a Link error. For the Windows Platform SDK, there is not a subfolder for x86 (even though there are subfolders for AMD64, IA64, etc.), so do not select a subfolder for the Windows Platform SDK.
  • Also, make sure that your cygwin (default C:\cygwin\bin) and ActivePython (default C:\Python25) directories are under the "Executable files" dirs and moved to the bottom of the list. (Even if you update your PATH environment variable, those changes will NOT be reflected inside Visual Studio!)

Compiling the Second Life viewer

Refer to this page for instructions on how to build the viewer: Microsoft Windows Builds

Extra steps for Visual Studio Express editions

After running develop.py, some extra steps are required if you use an express edition of Visual Studio.

Set Build type

After opening the solution, the first thing todo is set the build type, as shown in the following picture -

SelectBuildType.jpg


Set Startup project

You now need to set the start up project, right click in the solution explorer on secondlife-bin and from the popup menu select "Set As StartUp Project" , as shown -

SelectSecondLifeBinAsStartUp.jpg

Set Working Directory

Finally, again right click on secondlife-bin in the solution explorer, and this time select properties. On the window that opens select "Configuration Properties" on the left and then "Debugging" to get the view shown below, in the box Working Directory, add the text "..\..\newview" then press "OK"

SetWorkingDirectory.jpg