Port a newer QTWebKit
Hi,
In these days i'm trying to port an updated revision (2.2 or 2.3) of QtWebKit for Haiku, since the current QtWebKit for Haiku is outdated and unstable.
I write here to find some help/collaboration, since i've found that is not very simple, due of some errors while compiling. There is someone interested?
Best regards.

Comments
Re: Port a newer QTWebKit
Hi,
Maybe you could have a look here : http://www.qt-haiku.ru/
Re: Port a newer QTWebKit
Hi,
Maybe you could have a look here : http://www.qt-haiku.ru/
The version I see there is for Alpha3 and from 2011, still out-dated.
Re: Port a newer QTWebKit
The version I see there is for Alpha3 and from 2011, still out-dated.
I have recently ported QT 4.8.5: https://docs.google.com/file/d/0B2or9GCRSeDoTm5WODFpSThCU0E/edit?usp=sha... ;-)
Re: Port a newer QTWebKit
Thank you very much.
Re: Port a newer QTWebKit
Any specific issues, or just a general porting nightmare?
Re: Port a newer QTWebKit
Hi Vooshy,
I encountered a specific error while i tried to compile QtWebKit 2.2 on Haiku:
http://www.freelists.org/post/haiku-3rdparty-dev/QtWebKit-22-error-while...
Do you have some skills about?
Re: Port a newer QTWebKit
XPathGrammar.y <- that is a problem with bison I see there are patches online for related issues you might look into those.
Just do a quick google search on that filename probably what is happening is bison or yacc or whatever is failing to parse it correctly so the code that it is supposed to generate never gets there so its undefined.
Edit: I see you already realise that. perhaps it is releated to the version of bison... I did notice buildroot had a few similar problems with webkit.
cb88
Re: Port a newer QTWebKit
Edit: I see you already realise that. perhaps it is releated to the version of bison... I did notice buildroot had a few similar problems with webkit.cb88
I have tried installing/using bison 2.4.9 and 2.6.2 but the result is the same.. Any other idea?
Re: Port a newer QTWebKit
Did you test the new version? Is it more stable? Does it have html5 video support!? Very interested to know more...
Edit: ahh I see, it's not working yet. I'd like to help... what are the dependencies for compilation? I see that there is a bep in haiku ports for qt-4.8.X - does this work? Does it install the development libraries and headers needed to build qtwebkit? Or do I need to also build something from qt?
Are you submitting your ports to haikuports? I hope so - this is the best thing to do, it makes it easy for other people to reproduce, makes sure your efforts dont get lost, and is quite easy too.
Re: Port a newer QTWebKit
Did you test the new version? Is it more stable? Does it have html5 video support!? Very interested to know more...
Edit: ahh I see, it's not working yet. I'd like to help... what are the dependencies for compilation? I see that there is a bep in haiku ports for qt-4.8.X - does this work? Does it install the development libraries and headers needed to build qtwebkit? Or do I need to also build something from qt?.
Hi Munchausen,
i'm very glad for your interest!
To properly compile QtWebKit first of all you will need QT framework. Tou can install it by:
haikuporter -i qt-4.8.x-git
Then, always using Haikuporter you will need:
pkgconfig, gperf, bison, flex, fontconfig, freetype, libjpeg, libpng.. As i can remember correctly.
If you miss some deps, the config script of qt will alert you.
And don't forget to set QTDIR by export QTDIR=/boot/common/data/Qt
If you need some other info/hints just ask :-)
Best regards.
Re: Port a newer QTWebKit
I'm still working with a very old version of haiku (a nightly from last year some time) so my first step is in figuring out how to update to the latest without breaking anything, so I'm working out that now (I have a lot of things installed here and do all my day-to-day work on here, so need to be careful!) I have all of those dependencies already installed through haikuporter I think, so hopefully good to go in that respect.
I'll let you know once I've had a look.
Cheers!
Re: Port a newer QTWebKit
And easy way to get a quick and cheap Haiku development environment is to use a USB flash drive. Plug it in, boot from Haiku CD, very carefully select USB flash drive to format, then install as regular. Then select boot from USB during boot process if needed.
Not quite as fast as running from a hard drive but it is cheap, easy, and fits in your pocket.
Re: Port a newer QTWebKit
In anyway i was attempt to build QtWebKit 2.2, but there is also available a newer QtWebKit: 2.3.
This revision should include all necessaries patches that i've applied on 2.2
Re: Port a newer QTWebKit
I'm still working with a very old version of haiku (a nightly from last year some time) so my first step is in figuring out how to update to the latest without breaking anything.
As AndrewZ said, you can install Haiku on an USB Stick, and also, to keep all libraries ans deps, you can backup and then copy your common folder over the new installation.
Re: Port a newer QTWebKit
Yes this is how I normally update haiku. (well, I have no cd drive so I download an image, dd it to usb, then install from that)
But
a) I need the install to be on my hard disk, as it is my main OS that I use for work
b) I have a lot of things installed, not just standard programs but also a lot of stuff from ports. Last time I updated haiku a lot of things broke, simply copying over the old system is not a sure-fire way to work. Since my work is all programming based, I have to spend time to re-build lots of things and make sure everything is working, and it's a pain, which is why I don't update very often. For example, certain things have been moved to other libraries (libroot) since last time so I need to re-build just to re-link things.
I also have a slow internet connection which makes it worse. I have just updated, it took me an hour to download an xz format anyboot, and has been re-installing optional packages for another hour. Next I have to reinstall a lot of things from ports. Fun times...
Bring on the new package management system ASAP!
Re: Port a newer QTWebKit
Well for now I've got a decent web connection (for tonight at least).
I've enabled shared memory in qt, but it's currently building so don't know if it will work. It wasn't disabled from the configure script, as the config test passed, but from a line in src/corelib/corelib.pro (haiku:DEFINES += QT_NO_SHAREDMEMORY). So someone disabled it on purpose, which might mean that it will fail to build or will not work, but might mean that it was disabled for some reason that is no longer relevant (something that has been fixed by now maybe)... we shall see.
I'm also downloading the latest qtwebkit from git. It's been going a long time but has only got 20%, even though it's coming in at 800kb/s - it's huge! Are you using the git version? It seemed the easiest way to get source, but you mentioned version 2.2. I also noticed some webkit stuff going past when building qt, which seems a bit weird. But maybe that's for a webkit widget in qt or something?
Anyway, I'll update later, sleep time now!
Re: Port a newer QTWebKit
Well, when I woke up my laptop was in kdl, so I don't know what happened. I'll try to continue the build later after work.
Re: Port a newer QTWebKit
Well, when I woke up my laptop was in kdl, so I don't know what happened. I'll try to continue the build later after work.
Hi,
First of all i am glad to see progress :-)
Second: i bet that the kdl was about page writer.. Is a know bug, which i also experiment while i build/compile apps. You should be able to exit from kdl typing "es".
But i have noticed that the better way is to stay near to pc to exit as soon as possible from the kdl!
Best regards.
Re: Port a newer QTWebKit
Are you using the git version? It seemed the easiest way to get source, but you mentioned version 2.2. I also noticed some webkit stuff going past when building qt, which seems a bit weird. But maybe that's for a webkit widget in qt or something?
Anyway, I'll update later, sleep time now!
I downloaded the 2.2 revision from the branch 2.2, on gitorious.
But hey: the last available revision is better :-)
You have noticed some qtwebkit stuff during qt building because the qt framework also includes the webkit, but the current qtwebkit for Haiku should be an old revision of webkit, which is buggy/unstable.
Re: Port a newer QTWebKit
Well, when I woke up my laptop was in kdl, so I don't know what happened. I'll try to continue the build later after work.
You was building Qt from Haikuporter? if it is so you don't have to run again "haikuporter -i qt-4.8.x-git.bep"
but you should run the last command previous to the kdl.
Go to: /boot/common/develop/haikuports/x11-libs/qt and open the bep file which you use.
Here you can see exactly what command to use, to resume the building process from the last command :-)
Re: Port a newer QTWebKit
Well, when I woke up my laptop was in kdl, so I don't know what happened. I'll try to continue the build later after work.
Second: i bet that the kdl was about page writer.. Is a know bug, which i also experiment while i build/compile apps. You should be able to exit from kdl typing "es".
But i have noticed that the better way is to stay near to pc to exit as soon as possible from the kdl!
It was a page fault IIRC. I didn't know I could continue - I've tried that before (with other KDLs) and failed to get anywhere, but I'll try it this time - good tip!
Re: Port a newer QTWebKit
Well, when I woke up my laptop was in kdl, so I don't know what happened. I'll try to continue the build later after work.
You was building Qt from Haikuporter? if it is so you don't have to run again "haikuporter -i qt-4.8.x-git.bep"
but you should run the last command previous to the kdl.
Go to: /boot/common/develop/haikuports/x11-libs/qt and open the bep file which you use.
Here you can see exactly what command to use, to resume the building process from the last command :-)
Yes this is how I was building anyhow, otherwise you can sometimes end up with haikuporter deleting stuff, I think!
I'm continuing the build now, will let you know how it goes.
I'm not sure I managed to download all of the latest webkit before the crash, so I may not be able to build that, but qt with shared memory enabled would be handy anyhow.
Re: Port a newer QTWebKit
Well the build was successful. I haven't tested it with anything, but I can confirm that all you need to do to enable shared memory is comment the line in src/corelib/corelib.pro that reads
haiku:DEFINES += QT_NO_SHAREDMEMORY
Maybe you want to see if, e.g. Cuberok, work now? I'd upload a tarball somewhere, but I'm still sans proper internet.
Re: Port a newer QTWebKit
Great news!
But in anyway can you directly try to build Cuberok, instead of upload the whole Qt :-)
You can download it using: svn checkout http://cuberok.googlecode.com/svn/trunk/ cuberok-read-only
And you can build it using:
qmake "CONFIG+=disable_gst" "CONFIG+=disable_audiere" Cuberok.pro
If you get error about phonon, you should also use "disable_phonon" (Cuberok will use, instead, ffmpeg)
Best regards.
Re: Port a newer QTWebKit
Yes I could, but I mean I can't download from svn as there is no way to resume the download and my connection keeps dropping out!
I guess I'll look for a tarball somewhere...
EDIT: found a source tarball on their site.
Re: Port a newer QTWebKit
Yes I could, but I mean I can't download from svn as there is no way to resume the download and my connection keeps dropping out!
I guess I'll look for a tarball somewhere...
EDIT: found a source tarball on their site.
I forgot to say that Cuberok, also needs Dbus (i have built Qt 4.8.5 with Dbus support), but you should be able to disable Dbus while you run configure or disabling something inside the pro or in some pri files.
If you don't succeed, i will try to provide a link to Dbus elements (libraries, binaries, include files and pkgconfig files). Let me know!
Re: Port a newer QTWebKit
Oh yeah I found this already... I disabled dbus by commenting some lines somewhere. I still don't really understand qmake (for all it's faults, at least I understand autotools :D) but I got cuberok built, but without any plugins, so it doesn't run. To build with the ffmpeg backend I need to get some more dependencies, I'll have a bash at this later.
Re: Port a newer QTWebKit
did you make any further progress with this? Modern browser is a must, maybe core team would help?
Re: Port a newer QTWebKit
did you make any further progress with this? Modern browser is a must, maybe core team would help?
http://lebuzzin.wordpress.com/2013/09/27/dev-sought-for-qt-porting/
Re: Port a newer QTWebKit
Only thing that I see there is "good intention". That means we are stuck with this that we have right now.
To be sincere, I will not use Haiku on my main machine, but I put it on VIA EPIA and I will use it to run DOSBox emulator.
We shall see how that goes. Regards,
Re: Port a newer QTWebKit
But in anyway we have the possibility to have a good browser (WebPositive, which is a native browser):
http://www.haiku-os.org/blog/pulkomandy/2013-10-11_webkit_weekly_report_3
Then, you can however do more things with Haiku (also thanks to the Qt port).
If you go on haikuware.com you can also find Qbittorrent, Scribus, Vacuum IM (for IM, it also supports jabber services and facebook chat) utilities to watch and download video streaming, you can encode media files (also video DVDs) using ffmpeg (take a look to Haikuports ;-), burn CDs and DVDs thanks to cdrtools and BurnItNow, enjoy with bash scripting etc.. etc.. In the meantime, while we are waiting for a modern and fully compliant HTML5 browser, we can use Haiku, in anyway to do lot things :-)