Talk:Viewer 2 Microsoft Windows Builds
Getting other development tools
You will need to install the following tools to compile the Viewer:
- UniCode NSIS(download Unicode NSIS)
- This is the package installer used to build Setup.exe. Note: As of this writing the file is downloaded with an *.exec extension that needs renamed *.exe.--Nicky Perian 16:22, 30 March 2010 (UTC)
- CMake (download CMake)
- As of this writing, the latest version is 2.6.2. Note: There are many known issues with CMake 2.6.0 and 2.6.1 in conjunction with building the Second Life Viewer. CMake 2.4.8 is supported for compiling the 1.21 version of the Second Life Viewer, but 2.6.2 is likely to become the new minimum requirement in the near future.
- Cygwin (download Cygwin)
- When you run the cygwin setup utility make sure you have selected to install patchutils, flex, and bison (all located under "devel") which are not part of the default install. (If you missed one of these, the easiest thing to do is to re-run the entire installation.)
- Python (download either Python.org Standard Python or ActivePython
- If you are using a version of Python newer than v2.5, you may need to change the Python.cmake file. See the CMake discussion for details (this change was necessary as of 1.21-r99587 source branch). )
- The Windows Platform SDK
- Get the latest version (as of 23 March 2010) here: Windows SDK for Windows Server 2008 and .NET Framework 3.5 SP1
- DirectX 9.0 SDK
- Get the latest version (as of 29 Oct 2008) here: DirectX 9.0 SDK (August 2008)
Nicky Perian 20:20, 18 April 2010 (UTC)
Mailing list discussions on compile errors, and more
For completeness's sake, there are threads on the mailing list on a few errors found during compilation:
- Not being able to find objidl.h in the Microsoft Windows SDK, when compiling llwindow: https://lists.secondlife.com/pipermail/opensource-dev/2011-April/006562.html
- Can be caused by path problems or some installation conflicts with the DirectX SDK.
- stdint.h typedef conflicts between Quicktime and VS2010: https://lists.secondlife.com/pipermail/opensource-dev/2011-April/006565.html
- Can be solved by some small edits to header files to make sure the two don't bash on each other.
I also ended up with bad variables in the CMake cache (some probably related to the above) and I needed to edit build-vc100\CMakeCache.txt. They including USE_FMOD, DINPUT_LIBRARY, DIRECTX_INCLUDE_DIR, DIRECTX_LIBRARY_DIR, and DXGUID_LIBRARY. Celierra Darling 14:41, 22 April 2011 (PDT)