Difference between revisions of "User:Dzonatas Sol/Cross compiling the viewer (i686-mingw32)"
Dzonatas Sol (talk | contribs) |
Dzonatas Sol (talk | contribs) (updated oslcc text) |
||
Line 18: | Line 18: | ||
We'll use the C/C++ includes and code libraries of these packages. | We'll use the C/C++ includes and code libraries of these packages. | ||
There are a few header files needed from either the [http://www.microsoft.com/downloads/details.aspx?FamilyID=0baf2b35-c656-4969-ace8-e4c0c0716adb&DisplayLang=en Microsoft Platform SDK] or the WINE source code. | There are a few header files needed from either the [http://www.microsoft.com/downloads/details.aspx?FamilyID=0baf2b35-c656-4969-ace8-e4c0c0716adb&DisplayLang=en Microsoft Platform SDK] or the WINE source code. For now, you just need the dbghelp.h file. | ||
=== GCC (i686-mingw32) === | === GCC (i686-mingw32) === | ||
Line 28: | Line 28: | ||
Patches are being made for the slviewer source to let this compilation happen. You can help! | Patches are being made for the slviewer source to let this compilation happen. You can help! | ||
== | == Known Issues == | ||
There are some known issues with the source in relation to cross compilation: | |||
* [https://jira.secondlife.com/browse/VWR-187 VWR-187: confusion with LL_WINDOWS|LL_LINUX|etc being used to select target platform and assumed compiler] | |||
== OSLCC Project == | |||
The [http://sourceforge.net/projects/oslcc/ Open Second Life Cross Compiler] project is being hosted on [http://sourceforge.net Sourceforge]. Currently, it uses a patched snapshot of the viewer source code. It automates the cross compile process as noted above as much as possible. You must have Subversion installed on your Linux system to access this project. | |||
Within Linux, create a new workspace directory and cd to it. Run these commands to start the build: | |||
<pre>$ svn co https://oslcc.svn.sourceforge.net/svnroot/oslcc/i686-mingw32-FL-1.13.3.58390/trunk oslcc | |||
$ sh oslcc/build.sh | |||
</pre> | |||
The first time you run the script, it will first download additional files and automatically build the cross compiler. It will continue onto check for SDKs and other files to install and setup. It will prompt you for them if it can't find them. Re-run the script once you have followed the prompts. When all files are in place, it will build the sl-viewer. | |||
Revision as of 00:29, 11 March 2007
Listed below is the process to cross compile the Second Life viewer on Linux with a Win32 target. This process has only been used on debian and debian based systems like ubuntu. For other platforms, see Get source and compile.
This process is not trivial.
Installation
These instructions are intended for those already familiar on how to compile the viewer on Windows and Linux environments. Please refer to those pages for additional help on how to retrieve and setup dependencies to the related host and target platform.
SDKs
Under Windows or WINE, you will need to install these Software Development Kits:
- DirectX SDK
- QuickTime SDK
- Boost++ SDK (Pick "Visual C++ 8.0" & "Multithread, static runtime")
We'll use the C/C++ includes and code libraries of these packages.
There are a few header files needed from either the Microsoft Platform SDK or the WINE source code. For now, you just need the dbghelp.h file.
GCC (i686-mingw32)
Under Linux, we'll use the Minimalist GNU for Windows Compiler to cross compile. We can recompile binutils and GCC for the i686 and win32, and mingw32 adds the compatible headers, libraries, and compiler support as normally found under the Windows environment.
SLViewer
Patches are being made for the slviewer source to let this compilation happen. You can help!
Known Issues
There are some known issues with the source in relation to cross compilation:
OSLCC Project
The Open Second Life Cross Compiler project is being hosted on Sourceforge. Currently, it uses a patched snapshot of the viewer source code. It automates the cross compile process as noted above as much as possible. You must have Subversion installed on your Linux system to access this project.
Within Linux, create a new workspace directory and cd to it. Run these commands to start the build:
$ svn co https://oslcc.svn.sourceforge.net/svnroot/oslcc/i686-mingw32-FL-1.13.3.58390/trunk oslcc $ sh oslcc/build.sh
The first time you run the script, it will first download additional files and automatically build the cross compiler. It will continue onto check for SDKs and other files to install and setup. It will prompt you for them if it can't find them. Re-run the script once you have followed the prompts. When all files are in place, it will build the sl-viewer.