Laszlo Papp | 1 Sep 11:50 2012
Picon

Harmattan - QtJsBackend/V8 build issues

Hi,

Can reproduce by manually running the "../../bin/mkv8snapshot generated-release/snapshot.cpp" command.

Laszlo

g++ -c -g -O2 -O2 -w -std=c++0x -fvisibility=hidden -fvisibility-inlines-hidden -D_REENTRANT -fno-exceptions -fPIC -DQT_NO_LIBUDEV -DQT_BUILD_V8_LIB -DQT_BUILDING_QT -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DV8_SHARED -DBUILDING_V8_SHARED -DENABLE_DEBUGGER_SUPPORT -DENABLE_VMSTATE_TRACKING -DENABLE_LOGGING_AND_PROFILING -DNDEBUG -DV8_TARGET_ARCH_ARM -DUSE_EABI_HARDFLOAT=1 -DQT_NO_DEBUG -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I/opt/qt5/mkspecs/linux-g++ -I. -I../3rdparty/v8/src -o .obj/release-shared/experimental-libraries.o generated-release/experimental-libraries.cpp
../../bin/mkv8snapshot generated-release/snapshot.cpp
make[4]: *** [generated-release/snapshot.cpp] Error 126
make[4]: Leaving directory `/scratchbox/users/lpapp/home/lpapp/qt5/qtjsbackend/qt5-jsbackend/src/v8'
make[3]: *** [sub-v8-make_first-ordered] Error 2
make[3]: Leaving directory `/scratchbox/users/lpapp/home/lpapp/qt5/qtjsbackend/qt5-jsbackend/src'
make[2]: *** [sub-src-make_first] Error 2
make[2]: Leaving directory `/scratchbox/users/lpapp/home/lpapp/qt5/qtjsbackend/qt5-jsbackend'
make[1]: *** [override_dh_auto_build] Error 2
make[1]: Leaving directory `/scratchbox/users/lpapp/home/lpapp/qt5/qtjsbackend/qt5-jsbackend'
make: *** [build] Error 2

_______________________________________________
Development mailing list
Development <at> qt-project.org
http://lists.qt-project.org/mailman/listinfo/development
simon.hausmann | 2 Sep 21:12 2012
Picon

Re: Harmattan - QtJsBackend/V8 build issues

Hi,

What you're hitting is a bug in qemu while trying to execute mksnapshot, which is trying to fire up the v8
engine. What's strange though is that
configure should detect that you're building inside scratchbox and disable v8 snapshots accordingly.
Are you building outside of scratchbox? What's CFG_V8SNAPSHOT
set to for you?

AFAIK the only way to get snapshots working for Harmattan is to truly cross-compile outside of scratchbox
with x86 host (not x86-64).

Simon
________________________________________
From: development-bounces+simon.hausmann=nokia.com <at> qt-project.org
[development-bounces+simon.hausmann=nokia.com <at> qt-project.org] on behalf of ext Laszlo Papp [lpapp <at> kde.org]
Sent: Saturday, September 01, 2012 11:50
To: development <at> qt-project.org
Subject: [Development] Harmattan - QtJsBackend/V8 build issues

Hi,

Can reproduce by manually running the "../../bin/mkv8snapshot generated-release/snapshot.cpp" command.

Laszlo

g++ -c -g -O2 -O2 -w -std=c++0x -fvisibility=hidden -fvisibility-inlines-hidden -D_REENTRANT
-fno-exceptions -fPIC -DQT_NO_LIBUDEV -DQT_BUILD_V8_LIB -DQT_BUILDING_QT -DQT_NO_CAST_TO_ASCII
-DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS
-DV8_SHARED -DBUILDING_V8_SHARED -DENABLE_DEBUGGER_SUPPORT -DENABLE_VMSTATE_TRACKING
-DENABLE_LOGGING_AND_PROFILING -DNDEBUG -DV8_TARGET_ARCH_ARM -DUSE_EABI_HARDFLOAT=1
-DQT_NO_DEBUG -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE
-I/opt/qt5/mkspecs/linux-g++ -I. -I../3rdparty/v8/src -o
.obj/release-shared/experimental-libraries.o generated-release/experimental-libraries.cpp
../../bin/mkv8snapshot generated-release/snapshot.cpp
make[4]: *** [generated-release/snapshot.cpp] Error 126
make[4]: Leaving directory `/scratchbox/users/lpapp/home/lpapp/qt5/qtjsbackend/qt5-jsbackend/src/v8'
make[3]: *** [sub-v8-make_first-ordered] Error 2
make[3]: Leaving directory `/scratchbox/users/lpapp/home/lpapp/qt5/qtjsbackend/qt5-jsbackend/src'
make[2]: *** [sub-src-make_first] Error 2
make[2]: Leaving directory `/scratchbox/users/lpapp/home/lpapp/qt5/qtjsbackend/qt5-jsbackend'
make[1]: *** [override_dh_auto_build] Error 2
make[1]: Leaving directory `/scratchbox/users/lpapp/home/lpapp/qt5/qtjsbackend/qt5-jsbackend'
make: *** [build] Error 2
Laszlo Papp | 2 Sep 21:34 2012
Picon

Re: Harmattan - QtJsBackend/V8 build issues

What you're hitting is a bug in qemu while trying to execute mksnapshot, which is trying to fire up the v8 engine. What's strange though is that
configure should detect that you're building inside scratchbox and disable v8 snapshots accordingly.

It is also strange that it does not work locally, but there are no any problems on the Community Open Build Service. That also uses scratchbox if I recall correctly.
 
Are you building outside of scratchbox?

No, I build inside (locally and on c-obs as well).
 
What's CFG_V8SNAPSHOT set to for you?

How do you wish me to get that variable? I have tried to grep for that (grep -rni CFG_V8SNAPSHOT $projectroot) without any results in the qtjsbackend project.

If I am trying to assert a message in the pro file, then it is empty.


AFAIK the only way to get snapshots working for Harmattan is to truly cross-compile outside of scratchbox with x86 host (not x86-64).

C-OBS works with scratchbox for the Harmattan target, if I am not mistaken. Unsure why it works in there, but locally.

Laszlo
_______________________________________________
Development mailing list
Development <at> qt-project.org
http://lists.qt-project.org/mailman/listinfo/development
Simon Hausmann | 3 Sep 10:03 2012
Picon

Re: Harmattan - QtJsBackend/V8 build issues

On Sunday, September 02, 2012 08:34:24 PM ext Laszlo Papp wrote:
> > What you're hitting is a bug in qemu while trying to execute mksnapshot,
> > which is trying to fire up the v8 engine. What's strange though is that
> > configure should detect that you're building inside scratchbox and disable
> > v8 snapshots accordingly.
> 
> It is also strange that it does not work locally, but there are no any
> problems on the Community Open Build Service. That also uses scratchbox if
> I recall correctly.
> 
> > Are you building outside of scratchbox?
> 
> No, I build inside (locally and on c-obs as well).
> 
> > What's CFG_V8SNAPSHOT set to for you?
> 
> How do you wish me to get that variable? I have tried to grep for that
> (grep -rni CFG_V8SNAPSHOT $projectroot) without any results in the
> qtjsbackend project.

It's in mkspecs/qconfig.pri and part of QT_CONFIG (v8snapshot).

Can you check if the configure check for sbox works for you?

Simon
Laszlo Papp | 3 Sep 12:02 2012
Picon

Re: Harmattan - QtJsBackend/V8 build issues

It's in mkspecs/qconfig.pri and part of QT_CONFIG (v8snapshot).

Can you check if the configure check for sbox works for you?

I have briefly discussed the issue with Simon this morning on IRC, and I would like to share the gist according to my understanding. Feel free to fix me, if I am wrong.

There are two environments here while developing and packaging for Harmattan: the local scratchbox environment and the build farm (c-obs). If I build the qt5-base package on my local machine in scratchbox, the QT_CONFIG variable does not contain the v8snapshopt entry in that qconfig.pri file generated by the configure process. The problem was caused by the generated qt5-base package on the build farm (c-obs) consisting of the qconfig.pri file which had the v8snapshot entry for the QT_CONFIG variable. This made my local scratchbox qt5-jsbackend build fail when installing the dependency from the remote and distributed repository on the c-obs.

That is an interesting question why the qt5-jsbackend package built successfully on the build farm since that also uses scratchbox as far as I know. As for the time being, I have just locally removed the v8snapshot entry from that file as a workaround in order to build in scratchbox locally when I wish so.

To avoid this situation in the future, it would be nice if this configuration detection ran during the qt5-jsbackend process. Otherwise there can be a qconfig.pri in place which does not work as expected for either of those environments. This would mean either build failure or missing v8 snapshot functionlity. An explicitely -no-v8snapshot option would not behave as expected either accordingly. In general, module specific configurations would be more logical in my opinion during the relevant module configuration process.

Thank you for the help.

Laszlo

PS.: Seems, now we have the following Qt5 Beta 1 packages available on the c-obs for Harmattan right away: qt-3d, qt5-base, qt5-declarative, qt5-jsbackend, qt5-location, qt5-multimedia, qt5-script, qt5-sensors, and qt5-xmlpatterns.
_______________________________________________
Development mailing list
Development <at> qt-project.org
http://lists.qt-project.org/mailman/listinfo/development

Gmane