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 DUSE_KDU, DINPUT_LIBRARY, DIRECTX_INCLUDE_DIR, DIRECTX_LIBRARY_DIR, and DXGUID_LIBRARY. Celierra Darling 14:41, 22 April 2011 (PDT)
Moving this here since it looks like they changed some things to address this so that autobuild configure
will download the right things:
- If Cmake/Autobuild attempts to download FMOD and can't, one can turn off FMOD by adding two dashes (
--
), and then the extra configuration option-DFMOD:BOOL=FALSE
. Similarly, if it attempts to download KDU and can't, try adding-DINSTALL_PROPRIETARY:BOOL=FALSE -DUSE_KDU:BOOL=FALSE
after those dashes.- For example,
autobuild configure -- -DFMOD:BOOL=FALSE -DINSTALL_PROPRIETARY:BOOL=FALSE -DUSE_KDU:BOOL=FALSE
- For example,
I'm also moving this comment from the "Iteratively fix things until the compile succeeds" section since it looks like it's been there since the first revision of the page without resolution: ((TBD - add any fixup steps here. e.g. does fmod375.dll
need to be moved into RelWithDbgInfo
at this step?))
Celierra Darling 15:02, 22 April 2011 (PDT)