Opened 8 years ago

Closed 8 years ago

Last modified 8 years ago

#7977 closed defect (fixed)

QupZilla is problematic with gcc-6

Reported by: ken@… Owned by: bdubbs@…
Priority: normal Milestone: 7.10
Component: BOOK Version: SVN
Severity: normal Keywords:
Cc:

Description

Noticed by Pierre in his post at http://lists.linuxfromscratch.org/pipermail/blfs-dev/2016-May/031953.html :

My current problem is that still qupzilla tells it cannot display correctly a page after displaying it for a while (5 sec or so). I guess it is a GCC 6 issue, but I do not know how to be sure, nor how to debug that. Actually, I am with LXQt
in a VM, and maybe this is a DM or qemu issue.

I can now confirm that this persists with 2.0.1 and qt-5.6.1 on real hardware running icewm, so not a DM or qemu issue.

Change History (13)

comment:1 by bdubbs@…, 8 years ago

I have no problems. From 'About':

Application version 2.0.1
QtWebEngine version 5.6.1
© 2010-2016 David Rosca
https://www.qupzilla.com
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) QupZilla/2.0.1 Chrome/45.0.2454.101 Safari/537.36

Built with gcc6.

comment:2 by Pierre Labastie, 8 years ago

It's a problem with qtwebengine, not qupzilla itself. I can confirm the problem remains (for me) with qtwebengine-5.6.1 (note that since qtwebengine uses chromium, I am not sure chromium has been updated,and I think it is chromium which fails) and qupzilla 2.0.1. Note that the first page you display has no problem. But it comes after a few "link followings".

I described a fix at http://lists.linuxfromscratch.org/pipermail/blfs-dev/2016-May/031981.html, with an important addition at http://lists.linuxfromscratch.org/pipermail/blfs-dev/2016-May/031982.html.

comment:3 by bdubbs@…, 8 years ago

I've tried to get -fno-delete-null-pointer-checks into the build, but I can't gigure it out right now -- it's vary late for me.

In any case I'm trying to build qtwebkit-5.7.0 and it needs:

export PATH="$PWD/bin:$PATH"

mkdir build
cd build

qmake ../WebKit.pro
make

The command lines are very long, but I've tried

export CXXFLAGS=-fno-delete-null-pointer-checks

and a couple of other things, but a grep for null-pointer in the log does not turn up anything. I'll look at it some more tomorrow/later today. If anyone has a suggestion, please let me know.

in reply to:  3 comment:5 by Pierre Labastie, 8 years ago

Replying to bdubbs@…:

I've tried to get -fno-delete-null-pointer-checks into the build, but I can't gigure it out right now -- it's vary late for me.

[...]

The command lines are very long, but I've tried

export CXXFLAGS=-fno-delete-null-pointer-checks

and a couple of other things, but a grep for null-pointer in the log does not turn up anything.

While compiling chromium, the command lines are not displayed (only the number of already compiled files).

comment:6 by Pierre Labastie, 8 years ago

I'll try the patch sent by Armin (thanks!), and let you know the results.

comment:7 by ken@…, 8 years ago

@Pierre: thanks for posting the links - I couldn't find them yesterday.

@All: -DCMAKE_VERBOSE_MAKEFILE=ON will allow you to see what it is actually doing. Oh, and if you ever want to try reducing the optimization and find that it is adding -O3 after everything else, in *some* packages that is caused by -DCMAKE_BUILD_TYPE=Release.

comment:8 by bdubbs@…, 8 years ago

I rebuilt qt-5.7.0 with Armin's patch. Still qupzilla fails:

$ qupzilla 
libGL error: failed to authenticate magic 1
libGL error: failed to load driver: i965
[0620/151417:ERROR:browser_main_loop.cc(217)] Running without the SUID sandbox! See https://chromium.googlesource.com/chromium/src/+/master/docs/linux_suid_sandbox_development.md for more information on developing with the sandbox on.
QupZilla: 0 extensions loaded
Received signal 11 SEGV_MAPERR 000000000008
#0 0x7f384ef67bce <unknown>
#1 0x7f384ef67fa9 <unknown>
#2 0x7f384a9bde40 <unknown>
#3 0x7f384d7fcaf0 <unknown>
#4 0x7f384d7fcd27 <unknown>
#5 0x7f384d7fce83 <unknown>
#6 0x7f384d836323 <unknown>
#7 0x7f384d7b1237 <unknown>
#8 0x7f384d7decdf <unknown>
#9 0x7f384d7e4abc <unknown>
#10 0x7f384d7bb186 <unknown>
#11 0x7f384db103df <unknown>
#12 0x7f384db1275f <unknown>
#13 0x7f384d83fbb0 <unknown>
#14 0x7f384d842b84 <unknown>
#15 0x7f384d8441fe <unknown>
#16 0x7f384d8447f5 <unknown>
#17 0x7f384d845461 <unknown>
#18 0x7f384d846947 <unknown>
#19 0x3c7a82d0c1fb <unknown>
  r8: ffffffffffffffff  r9: 0000000000000000 r10: 0000000000000032 r11: 0000000000000206
 r12: 0000000000eb54c0 r13: 00007f385219bfa4 r14: 0000000000eaed60 r15: 00007ffe423edd70
  di: 0000000000eaf908  si: 0000000000ed7530  bp: 0000000000ee23e0  bx: 0000000000ed4f70
  dx: 0000000000eaf9d0  ax: 0000000000000000  cx: 00000fa366100000  sp: 00007ffe423edb20
  ip: 00007f384d7fcaf0 efl: 0000000000010246 cgf: 002b000000000033 erf: 0000000000000006
 trp: 000000000000000e msk: 0000000000000000 cr2: 0000000000000008
[end of stack trace]
Uncaught ReferenceError: qt is not defined
QupZilla: Crashed :( Saving backtrace in /home/bdubbs/.config/qupzilla/crashlog ...
Backtrace successfully saved in /home/bdubbs/.config/qupzilla/crashlog/Crash-2016-06-20T15:14:37.txt
Aborted

The libGL erro is because I am running over ssh. I don't know what 'Running without the SUID sandbox!' means. The link given is unclear, but I see that when using qt-5.6.1 also.

If I change qupzilla to add suid, I get: fatal: FATAL: The application binary appears to be running setuid, this is a security hole.

Google does not seem to help. I can go back to qt-5.6.1, but that gives a similar error.

I suppose I can remove the patch and rebuild with the global export of CXX flags, but I'm not hopeful.

comment:9 by bdubbs@…, 8 years ago

Adding -platform linux-clang -egl -opengl es2 to the configure options was successful. No crashes so far.

2808.8 Elapsed Time -  qt-everywhere-opensource-src-5.7.0
SBU=30.202
329488 /usr/src/qt5/qt-everywhere-opensource-src-5.7.0.tar.xz SIZE (321.765 MB)
4086416 kilobytes BUILD SIZE (3990.640 MB)

comment:10 by bdubbs@…, 8 years ago

Owner: changed from blfs-book@… to bdubbs@…
Status: newassigned

Rebuilt qt5 with gcc6 and export CXXFLAGS=-fno-delete-null-pointer-checks. qupzilla seems to work fine. I'll need to rebuild for timing data. I used -j10 and it took 51 minutes, so it is a long build.

Space was 8.3G for the full build.

in reply to:  10 comment:11 by ken@…, 8 years ago

Replying to bdubbs@…:

Rebuilt qt5 with gcc6 and export CXXFLAGS=-fno-delete-null-pointer-checks. qupzilla seems to work fine. I'll need to rebuild for timing data. I used -j10 and it took 51 minutes, so it is a long build.

Thanks!

comment:12 by bdubbs@…, 8 years ago

Resolution: fixed
Status: assignedclosed

Updated to qt-5.7.0 at revision 17515.

Added export CXXFLAGS=-fno-delete-null-pointer-checks to fix the build. qupzilla is OK when qt is built with qtwebengine.

comment:13 by Pierre Labastie, 8 years ago

Sorry for being so slow. I confirm the patch is not enough.

Note: See TracTickets for help on using tickets.