User:Robin Cornelius/standalone qtwebkit: Difference between revisions
No edit summary |
No edit summary |
||
| Line 1: | Line 1: | ||
Instructions for building the qt/webkit media plugin using distribution (shared) qt4, instead of static qt4 that the default LL build uses. | Instructions for building the qt/webkit media plugin using distribution (shared) qt4, instead of static qt4 that the default LL build uses. | ||
== Part 1 qtwebkit in shared form == | |||
First of all you need to grab the latest code for qt/webkit this is in a mecurial (hg) repository and if you install the mecurial tools for your distribution you can then fetch the code with | First of all you need to grab the latest code for qt/webkit this is in a mecurial (hg) repository and if you install the mecurial tools for your distribution you can then fetch the code with | ||
| Line 59: | Line 61: | ||
+ QMAKE_LFLAGS_SHLIB *= "--rpath=/usr/lib/qt4/plugins/imageformats" | + QMAKE_LFLAGS_SHLIB *= "--rpath=/usr/lib/qt4/plugins/imageformats" | ||
} | } | ||
This disables some features that are not avaiable in current qt4/ and in the case of the prepend patch will never be avaiable and also changes the build to use a shared qt4 | |||
To apply the above as a patch copy it to a local file, eg shared_qt.patch then from the llqtwebkit folder run :- | |||
patch -p1 < shared_qt.patch | |||
After sucessfully patching the code you can build with | |||
qmake-qt4 | |||
make | |||
This will produce a libqtwebkit.so and some symlinks to the library with so name versions. To install the quick and easy way is to | |||
cp *.so /usr/local/lib/ | |||
cp llqtwebkit.h /usr/local/include/ | |||
== Part 2 Patching the viewer to use a shared libqtwebkit == | |||
Revision as of 13:09, 3 November 2009
Instructions for building the qt/webkit media plugin using distribution (shared) qt4, instead of static qt4 that the default LL build uses.
First of all you need to grab the latest code for qt/webkit this is in a mecurial (hg) repository and if you install the mecurial tools for your distribution you can then fetch the code with
hg clone http://hg.secondlife.com/llqtwebkit/
To get this to build some minor changes are required :-
diff -r d3b5f3a6f6c1 llembeddedbrowserwindow.cpp
--- a/llembeddedbrowserwindow.cpp Mon Sep 21 14:26:31 2009 -0700
+++ b/llembeddedbrowserwindow.cpp Tue Nov 03 20:50:14 2009 +0000
@@ -68,7 +68,7 @@
#include <qdebug.h>
#endif
-#define WEBHISTORYPATCH
+//#define WEBHISTORYPATCH
LLEmbeddedBrowserWindow::LLEmbeddedBrowserWindow()
{
diff -r d3b5f3a6f6c1 llnetworkaccessmanager.cpp
--- a/llnetworkaccessmanager.cpp Mon Sep 21 14:26:31 2009 -0700
+++ b/llnetworkaccessmanager.cpp Tue Nov 03 20:50:14 2009 +0000
@@ -75,7 +75,7 @@
void LLNetworkAccessManager::authenticationRequired(QNetworkReply *reply, QAuthenticator *authenticator)
{
- authenticator->tryAgainLater = true;
+ //authenticator->tryAgainLater = true;
AuthDialog authDialog;
int i;
for (i = 0; i < authDialogs.count(); ++i) {
@@ -107,7 +107,7 @@
authDialog.authenticationDialog->deleteLater();
authDialog.authenticationDialog = 0;
authDialogs.removeAt(i);
- authenticator->tryAgainLater = false;
+ //authenticator->tryAgainLater = false;
}
}
diff -r d3b5f3a6f6c1 llqtwebkit.pro
--- a/llqtwebkit.pro Mon Sep 21 14:26:31 2009 -0700
+++ b/llqtwebkit.pro Tue Nov 03 20:50:14 2009 +0000
@@ -1,4 +1,4 @@
-CONFIG += static
+CONFIG += shared
TEMPLATE = lib
TARGET =
DEPENDPATH += .
diff -r d3b5f3a6f6c1 static.pri
--- a/static.pri Mon Sep 21 14:26:31 2009 -0700
+++ b/static.pri Tue Nov 03 20:50:14 2009 +0000
@@ -1,4 +1,5 @@
unix {
- DEFINES += STATIC_QT
- QTPLUGIN += qgif
+ #DEFINES += STATIC_QT
+ #QTPLUGIN += qgif
+ QMAKE_LFLAGS_SHLIB *= "--rpath=/usr/lib/qt4/plugins/imageformats"
}
This disables some features that are not avaiable in current qt4/ and in the case of the prepend patch will never be avaiable and also changes the build to use a shared qt4
To apply the above as a patch copy it to a local file, eg shared_qt.patch then from the llqtwebkit folder run :-
patch -p1 < shared_qt.patch
After sucessfully patching the code you can build with
qmake-qt4 make
This will produce a libqtwebkit.so and some symlinks to the library with so name versions. To install the quick and easy way is to
cp *.so /usr/local/lib/ cp llqtwebkit.h /usr/local/include/