meta-qt5 / meta-qt5

QT5 layer for openembedded
MIT License
257 stars 328 forks source link

qtwebkit won't compile #395

Open bl0ggy opened 3 years ago

bl0ggy commented 3 years ago

Hello everyone,

I got 3 compilation errors on the same line while compiling qtwebkit with Yocto/bitbake

First:

/workdir/build/tmp/work/corei7-64-oe-linux/qtwebkit/5.15.2+gitAUTOINC+10cd6a106e-r0/git/Source/WebCore/svg/properties/SVGAnimatedListPropertyTearOff.h:60:16: note: in expansion of macro 'WTFMove'
   60 |         return WTFMove(property);
      |                ^~~~~~~
{standard input}: Assembler messages:
{standard input}:2235000: Warning: end of file not at end of a line; newline inserted
{standard input}:2235391: Error: number of operands mismatch for `mov'
{standard input}: Error: open CFI at the end of file; missing .cfi_endproc directive
x86_64-oe-linux-g++: fatal error: Killed signal terminated program cc1plus

Second:

/workdir/build/tmp/work/corei7-64-oe-linux/qtwebkit/5.15.2+gitAUTOINC+10cd6a106e-r0/git/Source/WebCore/svg/properties/SVGAnimatedListPropertyTearOff.h:60:16: note: in expansion of macro 'WTFMove'
   60 |         return WTFMove(property);
      |                ^~~~~~~
{standard input}: Assembler messages:
{standard input}:482020: Warning: end of file not at end of a line; newline inserted
{standard input}:482878: Error: unknown pseudo-op: `.lbb543'
{standard input}: Error: open CFI at the end of file; missing .cfi_endproc directive
x86_64-oe-linux-g++: fatal error: Killed signal terminated program cc1plus
compilation terminated.

Third:

/workdir/build/tmp/work/corei7-64-oe-linux/qtwebkit/5.15.2+gitAUTOINC+10cd6a106e-r0/git/Source/WebCore/svg/properties/SVGAnimatedListPropertyTearOff.h:60:16: note: in expansion of macro 'WTFMove'
   60 |         return WTFMove(property);
      |                ^~~~~~~
{standard input}: Assembler messages:
{standard input}:15702: Warning: end of file not at end of a line; newline inserted
{standard input}:16931: Error: no such instruction: `_zn7webcore20cachedhtmlcollectionins_21htmlopt'
x86_64-oe-linux-g++: fatal error: Killed signal terminated program cc1plus
compilation terminated.

The full logs (2) are 50k lines, I can't paste them here.

Everything was compiling with DEPENDS += " qtbase qtscript qtsvg qttools", but then I added qtwebkit, now it's failing.

I tried to change the SRCREV to the next commit e16357a52fece93e48d5657cfa8b137e8932c0bb but the patches won't apply.

Yocto/poky version is gatesgarth-24.0.0 (I did not forget to switch meta-qt5 to gategarth branch) The target MACHINE is intel-corei7-64 (meta-intel) GCC version is 10.%

Anything I could have done wrong ? I don't know what information I should give to let you help me.

PS: I am trying to compile on gatesgarth-24.0.2, but it will take a few hours as I need to recompile everything.

UPDATE 2021/03/04: I still have errors with gatesgarth-24.0.2. I got new errors:

/workdir/build/tmp/work/corei7-64-oe-linux/qtwebkit/5.15.2+gitAUTOINC+10cd6a106e-r0/git/Source/WebCore/svg/properties/SVGAnimatedListPropertyTearOff.h:60:16: note: in expansion of macro 'WTFMove'
   60 |         return WTFMove(property);
      |                ^~~~~~~
{standard input}: Assembler messages:
{standard input}:467848: Warning: end of file not at end of a line; newline inserted
{standard input}:468087: Error: unknown pseudo-op: `.l'
{standard input}: Error: open CFI at the end of file; missing .cfi_endproc directive
x86_64-oe-linux-g++: fatal error: Killed signal terminated program cc1plus
/workdir/build/tmp/work/corei7-64-oe-linux/qtwebkit/5.15.2+gitAUTOINC+10cd6a106e-r0/git/Source/WebCore/svg/properties/SVGAnimatedListPropertyTearOff.h:60:16: note: in expansion of macro 'WTFMove'
   60 |         return WTFMove(property);
      |                ^~~~~~~
{standard input}: Assembler messages:
{standard input}:655627: Warning: end of file not at end of a line; newline inserted
{standard input}:656137: Error: expected comma after name `_ZN7WebCore35RenderMediaControlTimeli' in .size directive
x86_64-oe-linux-g++: fatal error: Killed signal terminated program cc1plus

It seems that there are new errors every time I try to compile...

bl0ggy commented 3 years ago

Ok I think I need to create another comment for this. I found a solution to solve this: run bitbake qtwebkit directly, then run bitbake my-recipe again.

I guess there is something wrong with my recipe. So I try:

# Clean the sstate of qtwebkit
bitbake qtwebkit -c cleansstate
# Then reproduce the bug
bitbake my-recipe # error, that's expected
# Then I commented some lines of my recipe, then
bitbake my-recipe # error
# Then I commented other lines of my recipe
bitbake my-recipe # works.

Fair enough. I try again.

# I clean the sstate again
bitbake qtwebkit -c cleansstate
# Reproduce the bug
bitbake my-recipe # error, that's expected
# Then I thought, let's try multiple times without commenting lines
bitbake my-recipe # error
bitbake my-recipe # works... What ?

Running bitbake my-recipe multiple times solved this ?

That makes 2 workarounds for this issue:

  1. Run bitbake qtwebkit then run bitbake my-recipe
  2. Run bitbake my-recipe multiple times

I started learning Yocto less than 2 months ago, so my knowledge is quite poor. I don't know if the bug comes from meta-qt5, but it happened only there since then.

I don't know how to fix this bug, but if I can help you fix it in any way, please let me know.