[opensource-dev] webkit for linux builds too old?

Henri Beauchamp sldev at free.fr
Sat Feb 18 09:35:56 PST 2012


On Sat, 18 Feb 2012 17:41:30 +0100, Sythos wrote:

> i got another kind of problems, autobuild wrongly detect flags from
> host OS, i've added by hand ni makefile "--no-avx --no-sse4.1
> --no-sse4.2" and forced the cpu/arch, for a reason not clear (to me)
> autobuild create binaries with SSE4 and AVX registry optimization
> (probed CPU but not arch/OS)
> 
> compiling on linux as is from hg don't produce a usable package on my
> system

I don't use autobuild... I built it manually on a Mandriva 2007.1
system (which uses glibc v2.4, so it's compatible with LL's own prebuilt
binaries).

The instruction given in the REAMDE-linux.txt file, should be ammended
to read:

1) BUILDING Qt FOR LINUX LLQTWEBKIT
-----------------------------------

Acquire the Qt 4.7.1 source with our patches
 * Download the source:
	hg clone https://bitbucket.org/lindenlab/3p-qt
 * This may take some as the archive contains a lot of files
 * You should now have a directory ~/3p-qt/qt-everywhere-opensource-src-4.7.1
 * Open a terminal window and cd to ~/3p-qt/qt-everywhere-opensource-src-4.7.1 directory
 * run the following commands (we'll use the QTDIR variable in later steps) 
	export QTDIR=`pwd`
	export PATH=$QTDIR/bin:$PATH
	export MAKEFLAGS="-j6"
	export CFLAGS="-m32 -fno-stack-protector"
	export CXXFLAGS="-m32 -fno-stack-protector -DQT_NO_INOTIFY"
	export LDFLAGS="-m32 -fno-stack-protector"
	export OPENSSL_LIBS="-L`pwd`/../OpenSSL/libraries/i686-linux/lib_release_client -lssl -lcrypto"

Configure the Build
$ ./configure -v -platform linux-g++-32 -fontconfig -fast -no-qt3support -static -release -no-xmlpatterns -no-phonon -openssl-linked -no-3dnow -no-sse -no-sse2 -no-sse3 -no-ssse3 -no-sse4.1 -no-sse4.2 -no-gtkstyle -no-xinput -no-sm -buildkey LL$(date +%s) -no-sql-sqlite -no-scripttools -no-cups -no-dbus -qt-libmng -no-glib -qt-gif -qt-libjpeg -qt-libtiff -qt-zlib -qt-libpng -opengl desktop -no-xkb -xrender -svg -no-pch -webkit -multimedia -javascript-jit -opensource -nomake examples -nomake demos -nomake docs -nomake translations -nomake tools

* Accept the license, if you do.

* Wait a few minutes while it churns and bootstraps.

* Build Qt:
$ make -j6

* Wait ages for it to build.

* You're done, but if you want to go on to build llqtwebkit on this machine, you'd really better do...

$ sudo make install

2) BUILDING LLQTWEBKIT
----------------------

* set up environment vars - change '4.7.1' as appropriate for your Qt version.
$ export QTDIR=/usr/local/Trolltech/Qt-4.7.1
$ export PATH=$QTDIR/bin:$PATH

* configure llqtwebkit
$ qmake CONFIG-=debug

* Are you making a build for redistribution to other people and you are not specifically on Ubuntu Dapper?  Then please hack the resulting Makefile and add '-fno-stack-protector' to CXXFLAGS and CFLAGS.  This is important!  Otherwise your resulting lib will not be usable at runtime on many machines.

* build it
$ make

3) THE BITS THAT THE VIEWER BUILD NEEDS
---------------------------------------

* From Qt:
 lib/*.a
 plugins/imageformats/*.a
 3p-qt/qt-everywhere-opensource-src-4.7.1/src/3rdparty/webkit/JavaScriptCore/release/libjscore.a

* From LLQtWebKit:
 libllqtwebkit.a
 llqtwebkit.h


Henri.


More information about the opensource-dev mailing list