<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.secondlife.com/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Rick+Linden</id>
	<title>Second Life Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.secondlife.com/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Rick+Linden"/>
	<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/wiki/Special:Contributions/Rick_Linden"/>
	<updated>2026-07-27T11:48:52Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=Qt_Webkit_OSX_Build_Instructions&amp;diff=667452</id>
		<title>Qt Webkit OSX Build Instructions</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=Qt_Webkit_OSX_Build_Instructions&amp;diff=667452"/>
		<updated>2009-11-19T21:43:17Z</updated>

		<summary type="html">&lt;p&gt;Rick Linden: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{KBcaution|For a more recent version of the Qt/WebKit rendering library (LLQtWebKit) please go to [https://wiki.secondlife.com/wiki/LLQtWebKit this] page }}&lt;br /&gt;
&lt;br /&gt;
1) Get Qt and set environment variables.&lt;br /&gt;
&lt;br /&gt;
Download Qt from trolltech.com&lt;br /&gt;
&lt;br /&gt;
Extract it somewhere such as&lt;br /&gt;
$HOME/dev/qt-4.5/&lt;br /&gt;
&lt;br /&gt;
Then set the environment variable QTDIR to point to that location.&lt;br /&gt;
 cd $HOME/dev/qt-4.5/&lt;br /&gt;
 export QTDIR=`pwd`&lt;br /&gt;
 export PATH=$PATH:$QTDIR/bin&lt;br /&gt;
&lt;br /&gt;
2) Get llmozlib and checkout the qtwebkit branch&lt;br /&gt;
&lt;br /&gt;
 cd $HOME/dev&lt;br /&gt;
 # note if you hasve write access and want to make changes, &lt;br /&gt;
 # use git+ssh://git@code.staikos.net/srv/git/llmozlib&lt;br /&gt;
 git clone git://code.staikos.net/llmozlib&lt;br /&gt;
 git checkout -b qtwebkit origin/qtwebkit&lt;br /&gt;
&lt;br /&gt;
3) Apply locally maintained Qt patches&lt;br /&gt;
&lt;br /&gt;
 cd $QTDIR&lt;br /&gt;
 &lt;br /&gt;
 # the patch files are numbered in the order they should be applied, so this should do the right thing&lt;br /&gt;
 for patchfile in /path/to/llmozlib/llmozlib2/qt_patches/[0-9]* /path/to/llmozlib/llmozlib2/qt_patches/qtwebkit-[0-9]* ; do&lt;br /&gt;
 	echo applying &amp;quot;$patchfile&amp;quot;&lt;br /&gt;
 	patch -p1 &amp;lt;&amp;quot;$patchfile&amp;quot;&lt;br /&gt;
 done&lt;br /&gt;
&lt;br /&gt;
4) Compile Qt&lt;br /&gt;
&lt;br /&gt;
 cd $QTDIR&lt;br /&gt;
 ./configure -opensource -no-framework -fast -no-qt3support -prefix $PWD -static -release -no-xmlpatterns -no-phonon -universal -sdk /Developer/SDKs/MacOSX10.4u.sdk/&lt;br /&gt;
 make&lt;br /&gt;
&lt;br /&gt;
If you have a multi-core machine, you can speed the make up substantially by using the &#039;-j&#039; argument.  On a 4-core machine, I use &#039;make -j4&#039;.&lt;br /&gt;
&lt;br /&gt;
For some reason, this doesn&#039;t seem to build libJavaScriptCore.a.  I also had to do the following:&lt;br /&gt;
&lt;br /&gt;
 cd $QTDIR/src/3rdparty/webkit/JavaScriptCore&lt;br /&gt;
 make&lt;br /&gt;
&lt;br /&gt;
5)  build llmozlib2.dylib with XCode:&lt;br /&gt;
&lt;br /&gt;
 cd $HOME/dev/llmozlib/llmozlib2/&lt;br /&gt;
&lt;br /&gt;
Create a symlink to QTDIR in the same directory as llmozlib2.xcodeproj (this allows the xcode project to find it easily):&lt;br /&gt;
&lt;br /&gt;
 ln -s $QTDIR QTDIR&lt;br /&gt;
&lt;br /&gt;
build the &amp;quot;llwebkitlib&amp;quot; configuration of the &amp;quot;llmozlib2&amp;quot; target&lt;br /&gt;
(note especially: the default configuration is &amp;quot;Release&amp;quot;.  Be sure&lt;br /&gt;
to specify &amp;quot;llwebkitlib&amp;quot; as the configuration):&lt;br /&gt;
&lt;br /&gt;
 xcodebuild -project llmozlib2.xcodeproj -target llmozlib2 -configuration llwebkitlib&lt;br /&gt;
&lt;br /&gt;
6) build ubrowser with xcode:&lt;br /&gt;
&lt;br /&gt;
Get the GLUI Framework (the one tested to work is at http://lukecyca.com/wp-content/uploads/2008/12/GLUI-Framework-2.35.tgz)&lt;br /&gt;
&lt;br /&gt;
run &amp;quot;update-mac-symbols.sh&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 ./update-mac-symbols.sh&lt;br /&gt;
&lt;br /&gt;
build the &amp;quot;Release&amp;quot; configuration of the &amp;quot;llmozlib2&amp;quot; target:&lt;br /&gt;
&lt;br /&gt;
 xcodebuild -project llmozlib2.xcodeproj -target llmozlib2 -configuration Release&lt;br /&gt;
&lt;br /&gt;
now build ubrowser&lt;br /&gt;
&lt;br /&gt;
 cd tests/ubrowser&lt;br /&gt;
 xcodebuild -project ubrowser.xcodeproj -target ubrowser -configuration Release&lt;br /&gt;
 open build/Release/ubrowser.app&lt;/div&gt;</summary>
		<author><name>Rick Linden</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=Qt_Webkit_OSX_Build_Instructions&amp;diff=664782</id>
		<title>Qt Webkit OSX Build Instructions</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=Qt_Webkit_OSX_Build_Instructions&amp;diff=664782"/>
		<updated>2009-11-18T23:42:53Z</updated>

		<summary type="html">&lt;p&gt;Rick Linden: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;1) Get Qt and set environment variables.&lt;br /&gt;
&lt;br /&gt;
Download Qt from trolltech.com&lt;br /&gt;
&lt;br /&gt;
Extract it somewhere such as&lt;br /&gt;
$HOME/dev/qt-4.5/&lt;br /&gt;
&lt;br /&gt;
Then set the environment variable QTDIR to point to that location.&lt;br /&gt;
 cd $HOME/dev/qt-4.5/&lt;br /&gt;
 export QTDIR=`pwd`&lt;br /&gt;
 export PATH=$PATH:$QTDIR/bin&lt;br /&gt;
&lt;br /&gt;
2) Get llmozlib and checkout the qtwebkit branch&lt;br /&gt;
&lt;br /&gt;
 cd $HOME/dev&lt;br /&gt;
 # note if you hasve write access and want to make changes, &lt;br /&gt;
 # use git+ssh://git@code.staikos.net/srv/git/llmozlib&lt;br /&gt;
 git clone git://code.staikos.net/llmozlib&lt;br /&gt;
 git checkout -b qtwebkit origin/qtwebkit&lt;br /&gt;
&lt;br /&gt;
3) Apply locally maintained Qt patches&lt;br /&gt;
&lt;br /&gt;
 cd $QTDIR&lt;br /&gt;
 &lt;br /&gt;
 # the patch files are numbered in the order they should be applied, so this should do the right thing&lt;br /&gt;
 for patchfile in /path/to/llmozlib/llmozlib2/qt_patches/[0-9]* /path/to/llmozlib/llmozlib2/qt_patches/qtwebkit-[0-9]* ; do&lt;br /&gt;
 	echo applying &amp;quot;$patchfile&amp;quot;&lt;br /&gt;
 	patch -p1 &amp;lt;&amp;quot;$patchfile&amp;quot;&lt;br /&gt;
 done&lt;br /&gt;
&lt;br /&gt;
4) Compile Qt&lt;br /&gt;
&lt;br /&gt;
 cd $QTDIR&lt;br /&gt;
 ./configure -opensource -no-framework -fast -no-qt3support -prefix $PWD -static -release -no-xmlpatterns -no-phonon -universal -sdk /Developer/SDKs/MacOSX10.4u.sdk/&lt;br /&gt;
 make&lt;br /&gt;
&lt;br /&gt;
If you have a multi-core machine, you can speed the make up substantially by using the &#039;-j&#039; argument.  On a 4-core machine, I use &#039;make -j4&#039;.&lt;br /&gt;
&lt;br /&gt;
For some reason, this doesn&#039;t seem to build libJavaScriptCore.a.  I also had to do the following:&lt;br /&gt;
&lt;br /&gt;
 cd $QTDIR/src/3rdparty/webkit/JavaScriptCore&lt;br /&gt;
 make&lt;br /&gt;
&lt;br /&gt;
5)  build llmozlib2.dylib with XCode:&lt;br /&gt;
&lt;br /&gt;
 cd $HOME/dev/llmozlib/llmozlib2/&lt;br /&gt;
&lt;br /&gt;
Create a symlink to QTDIR in the same directory as llmozlib2.xcodeproj (this allows the xcode project to find it easily):&lt;br /&gt;
&lt;br /&gt;
 ln -s $QTDIR QTDIR&lt;br /&gt;
&lt;br /&gt;
build the &amp;quot;llwebkitlib&amp;quot; configuration of the &amp;quot;llmozlib2&amp;quot; target&lt;br /&gt;
(note especially: the default configuration is &amp;quot;Release&amp;quot;.  Be sure&lt;br /&gt;
to specify &amp;quot;llwebkitlib&amp;quot; as the configuration):&lt;br /&gt;
&lt;br /&gt;
 xcodebuild -project llmozlib2.xcodeproj -target llmozlib2 -configuration llwebkitlib&lt;br /&gt;
&lt;br /&gt;
6) build ubrowser with xcode:&lt;br /&gt;
&lt;br /&gt;
Get the GLUI Framework (the one tested to work is at http://lukecyca.com/wp-content/uploads/2008/12/GLUI-Framework-2.35.tgz)&lt;br /&gt;
&lt;br /&gt;
run &amp;quot;update-mac-symbols.sh&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 ./update-mac-symbols.sh&lt;br /&gt;
&lt;br /&gt;
build the &amp;quot;Release&amp;quot; configuration of the &amp;quot;llmozlib2&amp;quot; target:&lt;br /&gt;
&lt;br /&gt;
 xcodebuild -project llmozlib2.xcodeproj -target llmozlib2 -configuration Release&lt;br /&gt;
&lt;br /&gt;
now build ubrowser&lt;br /&gt;
&lt;br /&gt;
 cd tests/ubrowser&lt;br /&gt;
 xcodebuild -project ubrowser.xcodeproj -target ubrowser -configuration Release&lt;br /&gt;
 open build/Release/ubrowser.app&lt;/div&gt;</summary>
		<author><name>Rick Linden</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=Talk:Qt_Webkit_Win32_Build_Instructions&amp;diff=390943</id>
		<title>Talk:Qt Webkit Win32 Build Instructions</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=Talk:Qt_Webkit_Win32_Build_Instructions&amp;diff=390943"/>
		<updated>2009-06-11T22:48:31Z</updated>

		<summary type="html">&lt;p&gt;Rick Linden: New page: ~~~~ said:  Just documenting some problems I had when attempting this:  - had problems building glui: the examples don&amp;#039;t build for some reason  LINK : fatal error LNK1104: cannot open file...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[User:Rick Linden|Rick Linden]] 22:48, 11 June 2009 (UTC) said:&lt;br /&gt;
&lt;br /&gt;
Just documenting some problems I had when attempting this:&lt;br /&gt;
&lt;br /&gt;
- had problems building glui: the examples don&#039;t build for some reason&lt;br /&gt;
 LINK : fatal error LNK1104: cannot open file &#039;glut32.lib&#039;&lt;br /&gt;
(this might be user error...?)&lt;br /&gt;
- In step 4), had problems building testgl:&lt;br /&gt;
 .\testgl.cpp(39) : fatal error C1083: Cannot open include file: &#039;unistd.h&#039;: No such file or directory&lt;br /&gt;
- Had to fix uBrowser: the APIs for user actions have changed (e.g. navigateBack(id) is now userAction(id, UA_NAVIGATE_BACK)&lt;br /&gt;
- Had to rebuild libglut from source to get debug symbols to work&lt;br /&gt;
&lt;br /&gt;
----&lt;/div&gt;</summary>
		<author><name>Rick Linden</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=Qt_Webkit_Win32_Build_Instructions&amp;diff=388873</id>
		<title>Qt Webkit Win32 Build Instructions</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=Qt_Webkit_Win32_Build_Instructions&amp;diff=388873"/>
		<updated>2009-06-11T01:04:02Z</updated>

		<summary type="html">&lt;p&gt;Rick Linden: changed b2  from &amp;quot;glut.h&amp;quot; to &amp;quot;glui.h&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;These are instructions for building the Qt/WebKit library as well as testgl and&lt;br /&gt;
uBrowser demo apps using WebKit.&lt;br /&gt;
&lt;br /&gt;
If you do not have git, you can download and install from:&lt;br /&gt;
 http://code.google.com/p/msysgit/&lt;br /&gt;
&lt;br /&gt;
Select the option (number 2 of 3) to add git to your path, but not all the unix&lt;br /&gt;
tools that ship with it.&lt;br /&gt;
&lt;br /&gt;
0) Building the open source OpenSSL library with Visual Studio:&lt;br /&gt;
* You can build Qt without ssl support (and skip this step) by removing -openssl from the Qt configure options.&lt;br /&gt;
* Download the latest tarball from http://openssl.org/source/ (Currently it is openssl-0.9.8j.tar.gz)&lt;br /&gt;
* Copy to C:\ and extract the contents  C:\openssl-0.9.8j&lt;br /&gt;
* The header files are symlinks to the real files, Microsoft&#039;s compiler doesn&#039;t seem to support NTFS sysmlinks so the real files have to be copied to the include directory.  Below are steps to do that in cygwin&#039;s bash.  Feel free to put the equivalent dos commands here as going into bash seems like a nasty hack.&lt;br /&gt;
Goto cd C:\openssl-0.9.8j and Launch bash and execute the following commands&lt;br /&gt;
 rm include/openssl/*&lt;br /&gt;
 cd crypto/&lt;br /&gt;
 find ./ -name &amp;quot;*.h&amp;quot; -exec cp {} ../include/openssl/ \;&lt;br /&gt;
 cd ../ssl/&lt;br /&gt;
 find ./ -name &amp;quot;*.h&amp;quot; -exec cp {} ../include/openssl/ \;&lt;br /&gt;
 cd ..&lt;br /&gt;
 cp *.h include/openssl/&lt;br /&gt;
* Patch the OpenSSL distribution - it&#039;s broken out of the box. Copy the following lines into a file called &amp;lt;code&amp;gt;fix.patch&amp;lt;/code&amp;gt; in the &amp;lt;code&amp;gt;C:\openssl-0.9.8j\util\&amp;lt;/code&amp;gt; directory:&lt;br /&gt;
 *** Source: http://marc.info/?l=openssl-dev&amp;amp;m=107628900919852&amp;amp;q=raw&lt;br /&gt;
 *** openssl-0.9.7c/util/mk1mf.pl	Fri Mar 14 17:29:18 2003&lt;br /&gt;
 --- openssl-0.9.7c-miket/util/mk1mf.pl	Sat Feb  7 21:58:57 2004&lt;br /&gt;
 ***************&lt;br /&gt;
 *** 485,490 ****&lt;br /&gt;
 --- 485,495 ----&lt;br /&gt;
   	chop;&lt;br /&gt;
   &lt;br /&gt;
   	($key,$val)=/^([^=]+)=(.*)/;&lt;br /&gt;
 + 	&lt;br /&gt;
 + 	# On some Windows machines, $val has linefeeds at the end, which confuses&lt;br /&gt;
 + 	# subsequent code in this file. So we strip all whitespace at the end.&lt;br /&gt;
 +     $val =~ s/\s+$//;&lt;br /&gt;
 +     &lt;br /&gt;
   	if ($key eq &amp;quot;RELATIVE_DIRECTORY&amp;quot;)&lt;br /&gt;
   		{&lt;br /&gt;
   		if ($lib ne &amp;quot;&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
then run this command from the &amp;lt;code&amp;gt;C:\openssl-0.9.8j\util\&amp;lt;/code&amp;gt; directory:&lt;br /&gt;
 patch mk1mf.pl -p0 &amp;lt; fix.patch&lt;br /&gt;
&lt;br /&gt;
* Compile openssl&lt;br /&gt;
 cd C:\openssl-0.9.8j&lt;br /&gt;
 perl Configure VC-WIN32&lt;br /&gt;
 ms\do_masm&lt;br /&gt;
 nmake -f ms\ntdll.mak&lt;br /&gt;
&lt;br /&gt;
* The libraries libeay32.dll ssleay32.dll have now been build, they should be copied to wherever the Qt libraries are located for the applications that use them. &lt;br /&gt;
&lt;br /&gt;
1) Acquire llmozlib&lt;br /&gt;
* 1.1) Run &amp;quot;Qt Snapshot Command Prompt&amp;quot; and clone llmozlib in the C drive.&lt;br /&gt;
 cd C:\&lt;br /&gt;
 git clone git://code.staikos.net/llmozlib&lt;br /&gt;
&lt;br /&gt;
* 1.2) Checkout the qtwebkit branch &lt;br /&gt;
 cd C:\llmozlib&lt;br /&gt;
 git checkout -f -b qtwebkit origin/qtwebkit&lt;br /&gt;
&lt;br /&gt;
2) Building the open source Qt snapshot with Visual Studio:&lt;br /&gt;
* 2.1) Set up directories&lt;br /&gt;
* Start/All Programs/Microsoft Visual Studio 2005/Visual Studio Tools/Visual Studio 2005 Command Prompt&lt;br /&gt;
 mkdir C:\Qt&lt;br /&gt;
&lt;br /&gt;
* 2.2) Aquire the source for Qt&lt;br /&gt;
 Download the 4.5.0 source which is found on the ftp server here:&lt;br /&gt;
 ftp://ftp.qtsoftware.com/qt/source/qt-all-opensource-src-4.5.0.tar.gz&lt;br /&gt;
&lt;br /&gt;
* 2.3) Unzip the tarball and extract the contents of Qt in C:\Qt using your favorite zip tool &#039;&#039;(Note: using Cygwin&#039;s tar commmand might not work.  It results in an &#039;&#039;&#039;Access is Denied&#039;&#039;&#039; error when running configure below.  Use WinZip or some other tool instead.)&#039;&#039;.&lt;br /&gt;
 You should now have a directory C:\Qt\qt-all-opensource-src-4.5.0&lt;br /&gt;
&lt;br /&gt;
* 2.4) Apply patches&lt;br /&gt;
  There are patches that can be found in llmozlib/llmozlib2/*.patch that should be applied to Qt&lt;br /&gt;
&lt;br /&gt;
* 2.4) Configure Qt, takes about 10 minutes.  Open a vs console&lt;br /&gt;
 cd C:\Qt\qt-all-opensource-src-4.5.0&lt;br /&gt;
 configure -debug-and-release -no-qt3support -prefix C:\Qt\qt-all-opensource-src-4.5.0 -qt-libjpeg -qt-libpng -openssl-linked -I C:\openssl-0.9.8j\include -L C:\openssl-0.9.8j\out32dll&lt;br /&gt;
&lt;br /&gt;
* When the license agreement appears, if you agree type:&lt;br /&gt;
* y&amp;lt;enter&amp;gt;&lt;br /&gt;
* 2.5) Build Qt, without demos.  This takes 1-2 hours.&lt;br /&gt;
 nmake sub-src&lt;br /&gt;
&lt;br /&gt;
* After building Qt the release and debug libraries will be in C:\Qt\qt-all-opensource-src-4.5.0\lib&lt;br /&gt;
* 2.8) Create the file C:\Qt\qt-all-opensource-src-4.5.0\bin\qt-vars.bat and put the following in it&lt;br /&gt;
&lt;br /&gt;
 @echo off&lt;br /&gt;
 echo Setting up a Qt environment...&lt;br /&gt;
 set QTDIR=C:\Qt\qt-all-opensource-src-4.5.0&lt;br /&gt;
 set PATH=C:\Qt\qt-all-opensource-src-4.5.0\bin;%PATH%&lt;br /&gt;
 set QMAKESPEC=win32-msvc2005&lt;br /&gt;
 call &amp;quot;C:\Program Files\Microsoft Visual Studio 8\Common7\Tools\vsvars32.bat&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* 2.8) Make a shortcut to qt-vars.bat on your desktop&lt;br /&gt;
Right-click &amp;gt; Properties on the shortcut and set:&lt;br /&gt;
Target: %COMSPEC% /k &amp;quot;C:\Qt\qt-all-opensource-src-4.5.0\bin\qt-vars.bat&amp;quot;&lt;br /&gt;
Start in: C:\Qt\qt-all-opensource-src-4.5.0&lt;br /&gt;
&lt;br /&gt;
Rename the command prompt shortcut to &amp;quot;Qt 4.5 Command Prompt&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
You can test it by opening the prompt and typing&lt;br /&gt;
 qmake --version&lt;br /&gt;
To make sure that the version shows 4.5.0&lt;br /&gt;
&lt;br /&gt;
3) Build llmozlib&lt;br /&gt;
&lt;br /&gt;
* Investigate: does &#039;git config core.safecrlf true&#039; solve the windows line ending issue?&lt;br /&gt;
&lt;br /&gt;
* 3.1) Launch the Qt command prompt, generate the makefile and build the library&lt;br /&gt;
 cd C:\llmozlib\llmozlib2&lt;br /&gt;
 qmake CONFIG-=debug&lt;br /&gt;
 nmake&lt;br /&gt;
&lt;br /&gt;
If you want to build the debug version of llmozlib run &#039;qmake CONFIG+=debug&#039;&lt;br /&gt;
&lt;br /&gt;
* Now llmozlib is built and can be used in the  viewer.  If you want to build the test applications follow the next steps:&lt;br /&gt;
&lt;br /&gt;
4) Acquire the test application library dependencies; Glut and GLUI&lt;br /&gt;
* a. Glut: http://www.xmission.com/~nate/glut.html  Grab the library and header zip.&lt;br /&gt;
 glut-3.7.6-bin.zip&lt;br /&gt;
* a1. Extract the contents of the zip to a c:\llmozlib\llmozlib2\tests\GL&lt;br /&gt;
* b. Glui32: http://glui.sourceforge.net/&lt;br /&gt;
 glui-2.35.zip&lt;br /&gt;
* b1. Extract the zip&lt;br /&gt;
* b2. Open glui\src\msvc\glui.vcproj.  Allow Visual Studio to convert the project.&lt;br /&gt;
* b2. Edit src\include\GL\glui.h&lt;br /&gt;
* b3. Move &amp;quot;#include &amp;lt;cstdlib&amp;gt;&amp;quot; to the top of the file, just under #define GLUI_GLUI_H&lt;br /&gt;
     (hence above #include &amp;lt;GL/glut.h&amp;gt;&lt;br /&gt;
* b4. See http://www.lighthouse3d.com/opengl/glut/ for details on this edit&lt;br /&gt;
* Copy the contents of c:\llmozlib\llmozlib2\tests\GL into glue\src\include\GL&lt;br /&gt;
* b5. Follow the instructions in the readme.txt to compile the library&lt;br /&gt;
     Make sure to build a release library&lt;br /&gt;
* b6. Copy glui.h and from the include into C:\llmozlib\llmozlib2\tests\GL&lt;br /&gt;
* b7. Copy glui32.lib from msvc/lib into C:\llmozlib\llmozlib2\tests\GL&lt;br /&gt;
&lt;br /&gt;
4) Build testgl and run it.  Open the Qt Snapshot command prompt.&lt;br /&gt;
 cd C:\llmozlib\llmozlib2\tests\testgl&lt;br /&gt;
 qmake CONFIG-=debug&lt;br /&gt;
 nmake&lt;br /&gt;
 ..\GL\testgl.exe&lt;br /&gt;
&lt;br /&gt;
5) Build ubrowser and run it.  Open the Qt Snapshot command prompt.&lt;br /&gt;
 cd C:\llmozlib\llmozlib2\tests\ubrowser&lt;br /&gt;
 qmake CONFIG-=debug&lt;br /&gt;
 nmake&lt;br /&gt;
 ..\GL\ubrowser.exe&lt;br /&gt;
&lt;br /&gt;
6) Build Second life&lt;br /&gt;
* [[Get_source_and_compile]]&lt;br /&gt;
* When grabbing the source use the webkit branch  https://svn.secondlife.com/svn/linden/branches/2009/webkit&lt;br /&gt;
* Copy Qt libraries and ssl into C:\linden\webkit\libraries\i686-win32\lib\debug &amp;amp; release&lt;br /&gt;
* Copy Qt image plugins into C:\linden\webkit\indra\build-VC80\newview\relwithdebinfo\imageformats&lt;br /&gt;
* Copy llmozlib and header into C:\linden\webkit\libraries\i686-win32\*&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
a. To generate a Visual studio vcproj file you have to use a Qt *commercial* command prompt and run the following:&lt;br /&gt;
  qmake -tp vc&lt;br /&gt;
&lt;br /&gt;
b. Make sure all libs and app are built as Multi-threaded Dll or Multi-threaded debug dll.&lt;br /&gt;
 In Visual Studio this is in Properties-&amp;gt;configuration-&amp;gt;c/c++-&amp;gt;code generation-&amp;gt;runtime library&lt;br /&gt;
&lt;br /&gt;
Troubleshooting:&lt;br /&gt;
1) If you see this, you need to reorder the &amp;lt;cstdlib&amp;gt; and &amp;lt;GL/glut.h&amp;gt; includes.&lt;br /&gt;
&lt;br /&gt;
C:\Program Files\Microsoft Visual Studio 8\VC\include\stdlib.h(406) : error C2381: &#039;exit&#039; : redefinition; __declspec(noreturn) differs&lt;br /&gt;
        ../include\GL/glut.h(146) : see declaration of &#039;exit&#039;&lt;br /&gt;
&lt;br /&gt;
2) uBrowser crashes on startup in stdlib (vc8crt.dll or similar)&lt;br /&gt;
&lt;br /&gt;
This happens when you mix debug and release libraries.  Make sure you are using&lt;br /&gt;
all &amp;quot;release&amp;quot; builds of GLUI and ubrowser.&lt;/div&gt;</summary>
		<author><name>Rick Linden</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=Qt_Webkit_Win32_Build_Instructions&amp;diff=387613</id>
		<title>Qt Webkit Win32 Build Instructions</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=Qt_Webkit_Win32_Build_Instructions&amp;diff=387613"/>
		<updated>2009-06-09T21:43:18Z</updated>

		<summary type="html">&lt;p&gt;Rick Linden: Added warning about using Cygwin&amp;#039;s &amp;#039;tar&amp;#039; when expanding Qt&amp;#039;s tarball.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;These are instructions for building the Qt/WebKit library as well as testgl and&lt;br /&gt;
uBrowser demo apps using WebKit.&lt;br /&gt;
&lt;br /&gt;
If you do not have git, you can download and install from:&lt;br /&gt;
 http://code.google.com/p/msysgit/&lt;br /&gt;
&lt;br /&gt;
Select the option (number 2 of 3) to add git to your path, but not all the unix&lt;br /&gt;
tools that ship with it.&lt;br /&gt;
&lt;br /&gt;
0) Building the open source OpenSSL library with Visual Studio:&lt;br /&gt;
* You can build Qt without ssl support (and skip this step) by removing -openssl from the Qt configure options.&lt;br /&gt;
* Download the latest tarball from http://openssl.org/source/ (Currently it is openssl-0.9.8j.tar.gz)&lt;br /&gt;
* Copy to C:\ and extract the contents  C:\openssl-0.9.8j&lt;br /&gt;
* The header files are symlinks to the real files, Microsoft&#039;s compiler doesn&#039;t seem to support NTFS sysmlinks so the real files have to be copied to the include directory.  Below are steps to do that in cygwin&#039;s bash.  Feel free to put the equivalent dos commands here as going into bash seems like a nasty hack.&lt;br /&gt;
Goto cd C:\openssl-0.9.8j and Launch bash and execute the following commands&lt;br /&gt;
 rm include/openssl/*&lt;br /&gt;
 cd crypto/&lt;br /&gt;
 find ./ -name &amp;quot;*.h&amp;quot; -exec cp {} ../include/openssl/ \;&lt;br /&gt;
 cd ../ssl/&lt;br /&gt;
 find ./ -name &amp;quot;*.h&amp;quot; -exec cp {} ../include/openssl/ \;&lt;br /&gt;
 cd ..&lt;br /&gt;
 cp *.h include/openssl/&lt;br /&gt;
* Patch the OpenSSL distribution - it&#039;s broken out of the box. Copy the following lines into a file called &amp;lt;code&amp;gt;fix.patch&amp;lt;/code&amp;gt; in the &amp;lt;code&amp;gt;C:\openssl-0.9.8j\util\&amp;lt;/code&amp;gt; directory:&lt;br /&gt;
 *** Source: http://marc.info/?l=openssl-dev&amp;amp;m=107628900919852&amp;amp;q=raw&lt;br /&gt;
 *** openssl-0.9.7c/util/mk1mf.pl	Fri Mar 14 17:29:18 2003&lt;br /&gt;
 --- openssl-0.9.7c-miket/util/mk1mf.pl	Sat Feb  7 21:58:57 2004&lt;br /&gt;
 ***************&lt;br /&gt;
 *** 485,490 ****&lt;br /&gt;
 --- 485,495 ----&lt;br /&gt;
   	chop;&lt;br /&gt;
   &lt;br /&gt;
   	($key,$val)=/^([^=]+)=(.*)/;&lt;br /&gt;
 + 	&lt;br /&gt;
 + 	# On some Windows machines, $val has linefeeds at the end, which confuses&lt;br /&gt;
 + 	# subsequent code in this file. So we strip all whitespace at the end.&lt;br /&gt;
 +     $val =~ s/\s+$//;&lt;br /&gt;
 +     &lt;br /&gt;
   	if ($key eq &amp;quot;RELATIVE_DIRECTORY&amp;quot;)&lt;br /&gt;
   		{&lt;br /&gt;
   		if ($lib ne &amp;quot;&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
then run this command from the &amp;lt;code&amp;gt;C:\openssl-0.9.8j\util\&amp;lt;/code&amp;gt; directory:&lt;br /&gt;
 patch mk1mf.pl -p0 &amp;lt; fix.patch&lt;br /&gt;
&lt;br /&gt;
* Compile openssl&lt;br /&gt;
 cd C:\openssl-0.9.8j&lt;br /&gt;
 perl Configure VC-WIN32&lt;br /&gt;
 ms\do_masm&lt;br /&gt;
 nmake -f ms\ntdll.mak&lt;br /&gt;
&lt;br /&gt;
* The libraries libeay32.dll ssleay32.dll have now been build, they should be copied to wherever the Qt libraries are located for the applications that use them. &lt;br /&gt;
&lt;br /&gt;
1) Acquire llmozlib&lt;br /&gt;
* 1.1) Run &amp;quot;Qt Snapshot Command Prompt&amp;quot; and clone llmozlib in the C drive.&lt;br /&gt;
 cd C:\&lt;br /&gt;
 git clone git://code.staikos.net/llmozlib&lt;br /&gt;
&lt;br /&gt;
* 1.2) Checkout the qtwebkit branch &lt;br /&gt;
 cd C:\llmozlib&lt;br /&gt;
 git checkout -f -b qtwebkit origin/qtwebkit&lt;br /&gt;
&lt;br /&gt;
2) Building the open source Qt snapshot with Visual Studio:&lt;br /&gt;
* 2.1) Set up directories&lt;br /&gt;
* Start/All Programs/Microsoft Visual Studio 2005/Visual Studio Tools/Visual Studio 2005 Command Prompt&lt;br /&gt;
 mkdir C:\Qt&lt;br /&gt;
&lt;br /&gt;
* 2.2) Aquire the source for Qt&lt;br /&gt;
 Download the 4.5.0 source which is found on the ftp server here:&lt;br /&gt;
 ftp://ftp.qtsoftware.com/qt/source/qt-all-opensource-src-4.5.0.tar.gz&lt;br /&gt;
&lt;br /&gt;
* 2.3) Unzip the tarball and extract the contents of Qt in C:\Qt using your favorite zip tool &#039;&#039;(Note: using Cygwin&#039;s tar commmand might not work.  It results in an &#039;&#039;&#039;Access is Denied&#039;&#039;&#039; error when running configure below.  Use WinZip or some other tool instead.)&#039;&#039;.&lt;br /&gt;
 You should now have a directory C:\Qt\qt-all-opensource-src-4.5.0&lt;br /&gt;
&lt;br /&gt;
* 2.4) Apply patches&lt;br /&gt;
  There are patches that can be found in llmozlib/llmozlib2/*.patch that should be applied to Qt&lt;br /&gt;
&lt;br /&gt;
* 2.4) Configure Qt, takes about 10 minutes.  Open a vs console&lt;br /&gt;
 cd C:\Qt\qt-all-opensource-src-4.5.0&lt;br /&gt;
 configure -debug-and-release -no-qt3support -prefix C:\Qt\qt-all-opensource-src-4.5.0 -qt-libjpeg -qt-libpng -openssl-linked -I C:\openssl-0.9.8j\include -L C:\openssl-0.9.8j\out32dll&lt;br /&gt;
&lt;br /&gt;
* When the license agreement appears, if you agree type:&lt;br /&gt;
* y&amp;lt;enter&amp;gt;&lt;br /&gt;
* 2.5) Build Qt, without demos.  This takes 1-2 hours.&lt;br /&gt;
 nmake sub-src&lt;br /&gt;
&lt;br /&gt;
* After building Qt the release and debug libraries will be in C:\Qt\qt-all-opensource-src-4.5.0\lib&lt;br /&gt;
* 2.8) Create the file C:\Qt\qt-all-opensource-src-4.5.0\bin\qt-vars.bat and put the following in it&lt;br /&gt;
&lt;br /&gt;
 @echo off&lt;br /&gt;
 echo Setting up a Qt environment...&lt;br /&gt;
 set QTDIR=C:\Qt\qt-all-opensource-src-4.5.0&lt;br /&gt;
 set PATH=C:\Qt\qt-all-opensource-src-4.5.0\bin;%PATH%&lt;br /&gt;
 set QMAKESPEC=win32-msvc2005&lt;br /&gt;
 call &amp;quot;C:\Program Files\Microsoft Visual Studio 8\Common7\Tools\vsvars32.bat&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* 2.8) Make a shortcut to qt-vars.bat on your desktop&lt;br /&gt;
Right-click &amp;gt; Properties on the shortcut and set:&lt;br /&gt;
Target: %COMSPEC% /k &amp;quot;C:\Qt\qt-all-opensource-src-4.5.0\bin\qt-vars.bat&amp;quot;&lt;br /&gt;
Start in: C:\Qt\qt-all-opensource-src-4.5.0&lt;br /&gt;
&lt;br /&gt;
Rename the command prompt shortcut to &amp;quot;Qt 4.5 Command Prompt&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
You can test it by opening the prompt and typing&lt;br /&gt;
 qmake --version&lt;br /&gt;
To make sure that the version shows 4.5.0&lt;br /&gt;
&lt;br /&gt;
3) Build llmozlib&lt;br /&gt;
&lt;br /&gt;
* Investigate: does &#039;git config core.safecrlf true&#039; solve the windows line ending issue?&lt;br /&gt;
&lt;br /&gt;
* 3.1) Launch the Qt command prompt, generate the makefile and build the library&lt;br /&gt;
 cd C:\llmozlib\llmozlib2&lt;br /&gt;
 qmake CONFIG-=debug&lt;br /&gt;
 nmake&lt;br /&gt;
&lt;br /&gt;
If you want to build the debug version of llmozlib run &#039;qmake CONFIG+=debug&#039;&lt;br /&gt;
&lt;br /&gt;
* Now llmozlib is built and can be used in the  viewer.  If you want to build the test applications follow the next steps:&lt;br /&gt;
&lt;br /&gt;
4) Acquire the test application library dependencies; Glut and GLUI&lt;br /&gt;
* a. Glut: http://www.xmission.com/~nate/glut.html  Grab the library and header zip.&lt;br /&gt;
 glut-3.7.6-bin.zip&lt;br /&gt;
* a1. Extract the contents of the zip to a c:\llmozlib\llmozlib2\tests\GL&lt;br /&gt;
* b. Glui32: http://glui.sourceforge.net/&lt;br /&gt;
 glui-2.35.zip&lt;br /&gt;
* b1. Extract the zip&lt;br /&gt;
* b2. Open glui\src\msvc\glui.vcproj.  Allow Visual Studio to convert the project.&lt;br /&gt;
* b2. Edit src\include\GL\glut.h&lt;br /&gt;
* b3. Move &amp;quot;#include &amp;lt;cstdlib&amp;gt;&amp;quot; to the top of the file, just under #define GLUI_GLUI_H&lt;br /&gt;
     (hence above #include &amp;lt;GL/glut.h&amp;gt;&lt;br /&gt;
* b4. See http://www.lighthouse3d.com/opengl/glut/ for details on this edit&lt;br /&gt;
* Copy the contents of c:\llmozlib\llmozlib2\tests\GL into glue\src\include\GL&lt;br /&gt;
* b5. Follow the instructions in the readme.txt to compile the library&lt;br /&gt;
     Make sure to build a release library&lt;br /&gt;
* b6. Copy glui.h and from the include into C:\llmozlib\llmozlib2\tests\GL&lt;br /&gt;
* b7. Copy glui32.lib from msvc/lib into C:\llmozlib\llmozlib2\tests\GL&lt;br /&gt;
&lt;br /&gt;
4) Build testgl and run it.  Open the Qt Snapshot command prompt.&lt;br /&gt;
 cd C:\llmozlib\llmozlib2\tests\testgl&lt;br /&gt;
 qmake CONFIG-=debug&lt;br /&gt;
 nmake&lt;br /&gt;
 ..\GL\testgl.exe&lt;br /&gt;
&lt;br /&gt;
5) Build ubrowser and run it.  Open the Qt Snapshot command prompt.&lt;br /&gt;
 cd C:\llmozlib\llmozlib2\tests\ubrowser&lt;br /&gt;
 qmake CONFIG-=debug&lt;br /&gt;
 nmake&lt;br /&gt;
 ..\GL\ubrowser.exe&lt;br /&gt;
&lt;br /&gt;
6) Build Second life&lt;br /&gt;
* [[Get_source_and_compile]]&lt;br /&gt;
* When grabbing the source use the webkit branch  https://svn.secondlife.com/svn/linden/branches/2009/webkit&lt;br /&gt;
* Copy Qt libraries and ssl into C:\linden\webkit\libraries\i686-win32\lib\debug &amp;amp; release&lt;br /&gt;
* Copy Qt image plugins into C:\linden\webkit\indra\build-VC80\newview\relwithdebinfo\imageformats&lt;br /&gt;
* Copy llmozlib and header into C:\linden\webkit\libraries\i686-win32\*&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
a. To generate a Visual studio vcproj file you have to use a Qt *commercial* command prompt and run the following:&lt;br /&gt;
  qmake -tp vc&lt;br /&gt;
&lt;br /&gt;
b. Make sure all libs and app are built as Multi-threaded Dll or Multi-threaded debug dll.&lt;br /&gt;
 In Visual Studio this is in Properties-&amp;gt;configuration-&amp;gt;c/c++-&amp;gt;code generation-&amp;gt;runtime library&lt;br /&gt;
&lt;br /&gt;
Troubleshooting:&lt;br /&gt;
1) If you see this, you need to reorder the &amp;lt;cstdlib&amp;gt; and &amp;lt;GL/glut.h&amp;gt; includes.&lt;br /&gt;
&lt;br /&gt;
C:\Program Files\Microsoft Visual Studio 8\VC\include\stdlib.h(406) : error C2381: &#039;exit&#039; : redefinition; __declspec(noreturn) differs&lt;br /&gt;
        ../include\GL/glut.h(146) : see declaration of &#039;exit&#039;&lt;br /&gt;
&lt;br /&gt;
2) uBrowser crashes on startup in stdlib (vc8crt.dll or similar)&lt;br /&gt;
&lt;br /&gt;
This happens when you mix debug and release libraries.  Make sure you are using&lt;br /&gt;
all &amp;quot;release&amp;quot; builds of GLUI and ubrowser.&lt;/div&gt;</summary>
		<author><name>Rick Linden</name></author>
	</entry>
</feed>