* [Buildroot] can't build qt5webkit for raspberry pi 3
@ 2017-08-15 17:41 Brock Williams
2017-08-15 21:02 ` Gaël PORTAY
0 siblings, 1 reply; 5+ messages in thread
From: Brock Williams @ 2017-08-15 17:41 UTC (permalink / raw)
To: buildroot
I'm not able to build qt5webkit for a pi 3 from master. It works for pi
2. Here is the error:
In file included from ./config.h:30:0,
from wtf/CurrentTime.cpp:34:
./wtf/Platform.h:323:6: error: #error "Not supported ARM architecture"
# error "Not supported ARM architecture"
^~~~~
I've attached the defconfig that we are using. This is based on the
raspberrypi3_defconfig with what I think is just the minimum to build
qt5webkit added. For now we have just configured
the build down to the pi 2 cpu settings.
Brock
--
Brock Williams brock at cottonwoodcomputer.com
Cottonwood Computer Solutions, Inc.
www.cottonwoodcomputer.com 406-896-4910
-------------- next part --------------
A non-text attachment was scrubbed...
Name: defconfig
Type: application/octet-stream
Size: 1302 bytes
Desc: not available
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20170815/14926295/attachment.obj>
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] can't build qt5webkit for raspberry pi 3
2017-08-15 17:41 [Buildroot] can't build qt5webkit for raspberry pi 3 Brock Williams
@ 2017-08-15 21:02 ` Gaël PORTAY
2017-08-15 21:24 ` Arnout Vandecappelle
0 siblings, 1 reply; 5+ messages in thread
From: Gaël PORTAY @ 2017-08-15 21:02 UTC (permalink / raw)
To: buildroot
Hello Brock,
On Tue, Aug 15, 2017 at 11:41:48AM -0600, Brock Williams wrote:
>
> I'm not able to build qt5webkit for a pi 3 from master. It works for pi
> 2. Here is the error:
>
> In file included from ./config.h:30:0,
> from wtf/CurrentTime.cpp:34:
> ./wtf/Platform.h:323:6: error: #error "Not supported ARM architecture"
> # error "Not supported ARM architecture"
> ^~~~~
>
> I've attached the defconfig that we are using. This is based on the
> raspberrypi3_defconfig with what I think is just the minimum to build
> qt5webkit added. For now we have just configured
> the build down to the pi 2 cpu settings.
>
> Brock
>
The CPU of rpi3 has moved from cortex-a8 (armv7) to cortex-a53 (armv8) in the
raspberrypi3_defconfig. And Qt WebKit do not support for armv8.
I have not tested this, but you can update Platform.h to add support for armv8.
In file, build/qt5webkit-5.9.1/Source/WTF/wtf/Platform.h, apply the following
chunk
diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h
index 562840cf7..9ce350e54 100644
--- a/Source/WTF/wtf/Platform.h
+++ b/Source/WTF/wtf/Platform.h
@@ -287,6 +287,9 @@
|| defined(__ARM_ARCH_7S__)
#define WTF_THUMB_ARCH_VERSION 4
+#elif defined(__ARM_ARCH_8A__)
+#define WTF_CPU_ARM_TRADITIONAL 1
+
/* RVCT sets __TARGET_ARCH_THUMB */
#elif defined(__TARGET_ARCH_THUMB)
#define WTF_THUMB_ARCH_VERSION __TARGET_ARCH_THUMB
Regards,
Gael
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [Buildroot] can't build qt5webkit for raspberry pi 3
2017-08-15 21:02 ` Gaël PORTAY
@ 2017-08-15 21:24 ` Arnout Vandecappelle
2017-08-15 21:59 ` Gaël PORTAY
2017-08-16 19:10 ` Gaël PORTAY
0 siblings, 2 replies; 5+ messages in thread
From: Arnout Vandecappelle @ 2017-08-15 21:24 UTC (permalink / raw)
To: buildroot
On 15-08-17 23:02, Ga?l PORTAY wrote:
> Hello Brock,
>
> On Tue, Aug 15, 2017 at 11:41:48AM -0600, Brock Williams wrote:
>> I'm not able to build qt5webkit for a pi 3 from master. It works for pi
>> 2. Here is the error:
>>
>> In file included from ./config.h:30:0,
>> from wtf/CurrentTime.cpp:34:
>> ./wtf/Platform.h:323:6: error: #error "Not supported ARM architecture"
>> # error "Not supported ARM architecture"
>> ^~~~~
>>
>> I've attached the defconfig that we are using. This is based on the
>> raspberrypi3_defconfig with what I think is just the minimum to build
>> qt5webkit added. For now we have just configured
>> the build down to the pi 2 cpu settings.
>>
>> Brock
>>
> The CPU of rpi3 has moved from cortex-a8 (armv7) to cortex-a53 (armv8) in the
> raspberrypi3_defconfig. And Qt WebKit do not support for armv8.
So we should add arch dependencies to qt5webkit, I guess. Are there more arches
that are excluded (but still allowed by jscore, so only arm, x86, mipsel)?
Regards,
Arnout
--
Arnout Vandecappelle arnout at mind be
Senior Embedded Software Architect +32-16-286500
Essensium/Mind http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] can't build qt5webkit for raspberry pi 3
2017-08-15 21:24 ` Arnout Vandecappelle
@ 2017-08-15 21:59 ` Gaël PORTAY
2017-08-16 19:10 ` Gaël PORTAY
1 sibling, 0 replies; 5+ messages in thread
From: Gaël PORTAY @ 2017-08-15 21:59 UTC (permalink / raw)
To: buildroot
Hi Arnout,
On Tue, Aug 15, 2017 at 11:24:54PM +0200, Arnout Vandecappelle wrote:
>
>
> On 15-08-17 23:02, Ga?l PORTAY wrote:
> > Hello Brock,
> >
> > On Tue, Aug 15, 2017 at 11:41:48AM -0600, Brock Williams wrote:
> >> I'm not able to build qt5webkit for a pi 3 from master. It works for pi
> >> 2. Here is the error:
> >>
> >> In file included from ./config.h:30:0,
> >> from wtf/CurrentTime.cpp:34:
> >> ./wtf/Platform.h:323:6: error: #error "Not supported ARM architecture"
> >> # error "Not supported ARM architecture"
> >> ^~~~~
> >>
> >> I've attached the defconfig that we are using. This is based on the
> >> raspberrypi3_defconfig with what I think is just the minimum to build
> >> qt5webkit added. For now we have just configured
> >> the build down to the pi 2 cpu settings.
> >>
> >> Brock
> >>
> > The CPU of rpi3 has moved from cortex-a8 (armv7) to cortex-a53 (armv8) in the
> > raspberrypi3_defconfig. And Qt WebKit do not support for armv8.
>
> So we should add arch dependencies to qt5webkit, I guess. Are there more arches
> that are excluded (but still allowed by jscore, so only arm, x86, mipsel)?
>
I am compiling for rpi3. The fix seems to work. I will test it on the target
when the image is ready.
QtWebKit supposed to be supported on these architecture.
$ git grep '/\* CPU(.*).*\*/' Source/WTF/wtf/Platform.h
Source/WTF/wtf/Platform.h:/* CPU() - the target CPU architecture */
Source/WTF/wtf/Platform.h:/* CPU(ALPHA) - DEC Alpha */
Source/WTF/wtf/Platform.h:/* CPU(HPPA) - HP PA-RISC */
Source/WTF/wtf/Platform.h:/* CPU(IA64) - Itanium / IA-64 */
Source/WTF/wtf/Platform.h:/* CPU(MIPS64) - MIPS 64-bit */
Source/WTF/wtf/Platform.h:/* CPU(MIPS) - MIPS 32-bit */
Source/WTF/wtf/Platform.h:/* CPU(PPC) - PowerPC 32-bit */
Source/WTF/wtf/Platform.h:/* CPU(PPC64) - PowerPC 64-bit */
Source/WTF/wtf/Platform.h:/* CPU(SH4) - SuperH SH-4 */
Source/WTF/wtf/Platform.h:/* CPU(SPARC32) - SPARC 32-bit */
Source/WTF/wtf/Platform.h:/* CPU(SPARC64) - SPARC 64-bit */
Source/WTF/wtf/Platform.h:/* CPU(SPARC) - any SPARC, true for CPU(SPARC32) and CPU(SPARC64) */
Source/WTF/wtf/Platform.h:/* CPU(S390X) - S390 64-bit */
Source/WTF/wtf/Platform.h:/* CPU(S390) - S390 32-bit */
Source/WTF/wtf/Platform.h:/* CPU(X86) - i386 / x86 32-bit */
Source/WTF/wtf/Platform.h:/* CPU(X86_64) - AMD64 / Intel64 / x86_64 64-bit */
Source/WTF/wtf/Platform.h:/* CPU(ARM) - ARM, any version*/
Source/WTF/wtf/Platform.h:/* CPU(ARM_FEATURE_UNALIGNED) - ARM instruction set supports unaligned access */
Source/WTF/wtf/Platform.h:/* CPU(ARM_TRADITIONAL) - Thumb2 is not available, only traditional ARM (v4 or greater) */
Source/WTF/wtf/Platform.h:/* CPU(ARM_THUMB2) - Thumb2 instruction set is available */
Source/WTF/wtf/Platform.h:/* CPU(AARCH64) - AArch64 */
The issue comes from the fact we have __ARM_ARCH_8A__ defined but not
__aarch64__ (because we have an armv8/32bits; and not an armv8/64bits).
__ARM_ARCH_8A__ is never catched in an #ifdef/endif in Platform.h. __aarch64__
and __ARM_ARCH_[4-7]x__ are caught.
Regards,
Gael
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] can't build qt5webkit for raspberry pi 3
2017-08-15 21:24 ` Arnout Vandecappelle
2017-08-15 21:59 ` Gaël PORTAY
@ 2017-08-16 19:10 ` Gaël PORTAY
1 sibling, 0 replies; 5+ messages in thread
From: Gaël PORTAY @ 2017-08-16 19:10 UTC (permalink / raw)
To: buildroot
Arnout, Brock,
On Tue, Aug 15, 2017 at 11:24:54PM +0200, Arnout Vandecappelle wrote:
>
>
> On 15-08-17 23:02, Ga?l PORTAY wrote:
> > Hello Brock,
> >
> > On Tue, Aug 15, 2017 at 11:41:48AM -0600, Brock Williams wrote:
> >> I'm not able to build qt5webkit for a pi 3 from master. It works for pi
> >> 2. Here is the error:
> >>
> >> In file included from ./config.h:30:0,
> >> from wtf/CurrentTime.cpp:34:
> >> ./wtf/Platform.h:323:6: error: #error "Not supported ARM architecture"
> >> # error "Not supported ARM architecture"
> >> ^~~~~
> >>
> >> I've attached the defconfig that we are using. This is based on the
> >> raspberrypi3_defconfig with what I think is just the minimum to build
> >> qt5webkit added. For now we have just configured
> >> the build down to the pi 2 cpu settings.
> >>
> >> Brock
> >>
> > The CPU of rpi3 has moved from cortex-a8 (armv7) to cortex-a53 (armv8) in the
> > raspberrypi3_defconfig. And Qt WebKit do not support for armv8.
I was able to build qt5webkit with this following chunk (5.9.1).
diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h
index 562840cf7..3722c2e9a 100644
--- a/Source/WTF/wtf/Platform.h
+++ b/Source/WTF/wtf/Platform.h
@@ -287,6 +287,13 @@
|| defined(__ARM_ARCH_7S__)
#define WTF_THUMB_ARCH_VERSION 4
+#elif defined(__ARM_ARCH_8__) \
+ || defined(__ARM_ARCH_8A__) \
+ || defined(__ARM_ARCH_8M__) \
+ || defined(__ARM_ARCH_8R__) \
+ || defined(__ARM_ARCH_8S__)
+#define WTF_CPU_ARM_TRADITIONAL 1
+
/* RVCT sets __TARGET_ARCH_THUMB */
#elif defined(__TARGET_ARCH_THUMB)
#define WTF_THUMB_ARCH_VERSION __TARGET_ARCH_THUMB
I reverted the following commit to get qt5webkit-examples back to be able to
test QtWebKit on rpi3. It worked.
940bfe2f43 package/qt5webkit-examples: remove obsolete package
Also, I had to compile opengl module (BR2_PACKAGE_QT5BASE_OPENGL_LIB) to make
qt5webkit examples fully fonctionnal. Some works (display something), some does
not. For example, whithout opengl module, flickrview complains with this message.
# ./flickrview
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
Unable to query physical screen size, defaulting to 100 dpi.
To override, set QT_QPA_EGLFS_PHYSICAL_WIDTH and QT_QPA_EGLFS_PHYSICAL_HEIGHT (in millimeters).
QtWebProcess: error while loading shared libraries: libQt5OpenGL.so.5: cannot open shared object file: No such file or directory
I do not know if webkit really needs the opengl module. If yes, maybe the module
should be selected by BR2_PACKAGE_QT5WEBKIT.
Furthermore, since webkit has returned from the dead packages, maybe the
qt5webkit-examples should return as well.
Arnout, I made some patches for that.
Regards,
Gael
^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2017-08-16 19:10 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-08-15 17:41 [Buildroot] can't build qt5webkit for raspberry pi 3 Brock Williams
2017-08-15 21:02 ` Gaël PORTAY
2017-08-15 21:24 ` Arnout Vandecappelle
2017-08-15 21:59 ` Gaël PORTAY
2017-08-16 19:10 ` Gaël PORTAY
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.