[Qt-creator] Error when building qt-creator with Qt5

Sandro Andrade sandroandrade at kde.org
Tue Sep 4 02:46:17 CEST 2012


Some more info about that:

Qt Creator starts fine only if Welcome and Help plugins are both not installed.

If Welcome is installed the app seg faults with:

#0  0x00007f4850544c22 in QTJSC::ExecutablePool::alloc
(this=0x29a49d0, n=552) at
../3rdparty/javascriptcore/JavaScriptCore/jit/ExecutableAllocator.h:102
102             ASSERT(m_freePtr <= m_end);

and the generated BT is:

-----------------------------
#0  0x00007f4850544c22 in QTJSC::ExecutablePool::alloc
(this=0x29a49d0, n=552) at
../3rdparty/javascriptcore/JavaScriptCore/jit/ExecutableAllocator.h:102
#1  0x00007f4850545353 in QTJSC::AssemblerBuffer::executableCopy
(this=0x7fff8faa13e0, allocator=0x29a49d0)
    at ../3rdparty/javascriptcore/JavaScriptCore/assembler/AssemblerBuffer.h:132
#2  0x00007f4850545767 in
QTJSC::X86Assembler::X86InstructionFormatter::executableCopy
(this=0x7fff8faa13e0, allocator=0x29a49d0)
    at ../3rdparty/javascriptcore/JavaScriptCore/assembler/X86Assembler.h:1885
#3  0x00007f48505456e5 in QTJSC::X86Assembler::executableCopy
(this=0x7fff8faa13e0, allocator=0x29a49d0)
    at ../3rdparty/javascriptcore/JavaScriptCore/assembler/X86Assembler.h:1583
#4  0x00007f4850546195 in QTJSC::LinkBuffer::LinkBuffer
(this=0x7fff8faa0e00, masm=0x7fff8faa13e0, executablePool=...)
    at ../3rdparty/javascriptcore/JavaScriptCore/assembler/LinkBuffer.h:67
#5  0x00007f4850549d59 in
QTJSC::JIT::privateCompileCTIMachineTrampolines (this=0x7fff8faa13e0,
executablePool=0x29a2898, globalData=0x29a16b0,
ctiStringLengthTrampoline=
    0x29a28a0, ctiVirtualCallLink=0x29a28a8, ctiVirtualCall=0x29a28b0,
ctiNativeCallThunk=0x29a28b8) at
../3rdparty/javascriptcore/JavaScriptCore/jit/JITOpcodes.cpp:1817
#6  0x00007f4850563852 in QTJSC::JIT::compileCTIMachineTrampolines
(globalData=0x29a16b0, executablePool=0x29a2898,
ctiStringLengthTrampoline=0x29a28a0, ctiVirtualCallLink=
    0x29a28a8, ctiVirtualCall=0x29a28b0, ctiNativeCallThunk=0x29a28b8)
at ../3rdparty/javascriptcore/JavaScriptCore/jit/JIT.h:323
#7  0x00007f485055800a in QTJSC::JITThunks::JITThunks (this=0x29a2898,
globalData=0x29a16b0) at
../3rdparty/javascriptcore/JavaScriptCore/jit/JITStubs.cpp:768
#8  0x00007f48505adcea in QTJSC::JSGlobalData::JSGlobalData
(this=0x29a16b0, isShared=false) at
../3rdparty/javascriptcore/JavaScriptCore/runtime/JSGlobalData.cpp:148
#9  0x00007f48505ae291 in QTJSC::JSGlobalData::create () at
../3rdparty/javascriptcore/JavaScriptCore/runtime/JSGlobalData.cpp:205
#10 0x00007f48506342b0 in QScriptEnginePrivate::QScriptEnginePrivate
(this=0x261c590) at api/qscriptengine.cpp:988
#11 0x00007f485063961e in QScriptEngine::QScriptEngine
(this=0x261a450) at api/qscriptengine.cpp:2045
#12 0x00007f4848194993 in
QDeclarativeScriptEngine::QDeclarativeScriptEngine (this=0x261a450,
priv=0x261a360) at qml/qdeclarativeengine.cpp:384
#13 0x00007f48481946d3 in
QDeclarativeEnginePrivate::QDeclarativeEnginePrivate (this=0x261a360,
e=0x29870c0) at qml/qdeclarativeengine.cpp:355
#14 0x00007f4848196cf3 in QDeclarativeEngine::QDeclarativeEngine
(this=0x29870c0, parent=0x0) at qml/qdeclarativeengine.cpp:636
#15 0x00007f48482a79df in QDeclarativeViewPrivate::init
(this=0x2987270) at util/qdeclarativeview.cpp:281
#16 0x00007f48482a78ec in QDeclarativeView::QDeclarativeView
(this=0x29871f0, parent=0x0) at util/qdeclarativeview.cpp:261
#17 0x00007f483f28bc50 in Welcome::Internal::WelcomeMode::WelcomeMode
(this=0x2986d80) at welcomeplugin.cpp:147
#18 0x00007f483f28d626 in Welcome::Internal::WelcomePlugin::initialize
(this=0x2411b40) at welcomeplugin.cpp:338
#19 0x00007f485d3aedee in
ExtensionSystem::Internal::PluginSpecPrivate::initializePlugin
(this=0x23825c0) at pluginspec.cpp:980
#20 0x00007f485d3a36ac in
ExtensionSystem::Internal::PluginManagerPrivate::loadPlugin
(this=0x23626c0, spec=0x23853d0,
destState=ExtensionSystem::PluginSpec::Initialized)
    at pluginmanager.cpp:1125
#21 0x00007f485d3a221e in
ExtensionSystem::Internal::PluginManagerPrivate::loadPlugins
(this=0x23626c0) at pluginmanager.cpp:968
#22 0x00007f485d39ecba in ExtensionSystem::PluginManager::loadPlugins
() at pluginmanager.cpp:327
#23 0x000000000040bf05 in main (argc=1, argv=0x7fff8faa31e8) at main.cpp:408
-----------------------------

If Help is installed the generated BT is the following:

NOTE: I don't know the reason, but libQtGui.so.4 is been used. My settings:
QTDIR=<path-to-qt5>/qtbase/
QT_PLUGIN_PATH=<path-to-qt5>/qtbase/plugins/
PATH=<path-to-qt5>/qtbase/bin:<path-to-qt5>/qtrepotools/bin:$PATH
LD_LIBRARY_PATH=<path-to-qt5>/qtbase/lib

-----------------------------
#0  0x00007f8cd920bb5c in ?? () from /usr/lib/libQtGui.so.4
#1  0x00007f8cf89bd7f6 in call_init () from /lib/ld-linux-x86-64.so.2
#2  0x00007f8cf89bd8da in _dl_init_internal () from /lib/ld-linux-x86-64.so.2
#3  0x00007f8cf89c1a49 in dl_open_worker () from /lib/ld-linux-x86-64.so.2
#4  0x00007f8cf89bd636 in _dl_catch_error () from /lib/ld-linux-x86-64.so.2
#5  0x00007f8cf89c126c in _dl_open () from /lib/ld-linux-x86-64.so.2
#6  0x00007f8cf5376026 in ?? () from /usr/lib/libdl.so.2
#7  0x00007f8cf89bd636 in _dl_catch_error () from /lib/ld-linux-x86-64.so.2
#8  0x00007f8cf53765fc in ?? () from /usr/lib/libdl.so.2
#9  0x00007f8cf53760c1 in dlopen () from /usr/lib/libdl.so.2
#10 0x00007f8cf67ba695 in QLibraryPrivate::load_sys (this=0x24346c0)
at plugin/qlibrary_unix.cpp:218
#11 0x00007f8cf67b564f in QLibraryPrivate::load (this=0x24346c0) at
plugin/qlibrary.cpp:400
#12 0x00007f8cf67b5998 in QLibraryPrivate::loadPlugin (this=0x24346c0)
at plugin/qlibrary.cpp:455
#13 0x00007f8cf67ab8f5 in QPluginLoader::load (this=0x7fff162908a0) at
plugin/qpluginloader.cpp:212
#14 0x00007f8cf879193d in
ExtensionSystem::Internal::PluginSpecPrivate::loadLibrary
(this=0x239c150) at pluginspec.cpp:940
#15 0x00007f8cf878665b in
ExtensionSystem::Internal::PluginManagerPrivate::loadPlugin
(this=0x237a700, spec=0x239ad40,
destState=ExtensionSystem::PluginSpec::Loaded)
    at pluginmanager.cpp:1120
#16 0x00007f8cf878513c in
ExtensionSystem::Internal::PluginManagerPrivate::loadPlugins
(this=0x237a700) at pluginmanager.cpp:965
#17 0x00007f8cf8781cba in ExtensionSystem::PluginManager::loadPlugins
() at pluginmanager.cpp:327
#18 0x000000000040bf05 in main (argc=1, argv=0x7fff16291698) at main.cpp:408
-----------------------------

Thanks,
--
Sandro

On Mon, Sep 3, 2012 at 11:37 AM, Sandro Andrade <sandroandrade at kde.org> wrote:
> Qt Creator builds fine if commenting out fakevim plugin in
> plugins.pro, but now I'm getting the
> following when starting qt creator:
>
> Got bus address:
> "unix:abstract=/tmp/dbus-XZyxj9ov6I,guid=b589fb017bc34e8430ece7fc5044bfe3"
> Connected to accessibility bus at:
> "unix:abstract=/tmp/dbus-XZyxj9ov6I,guid=b589fb017bc34e8430ece7fc5044bfe3"
> Registered DEC:  true
> ASSERTION FAILED: m_freePtr <= m_end
> (../3rdparty/javascriptcore/JavaScriptCore/jit/ExecutableAllocator.h:102
> void* QTJSC::ExecutablePool::alloc(size_t))
> Segmentation fault
>
> --
> Sandro
>
> On Mon, Sep 3, 2012 at 9:47 AM, Sandro Andrade <sandroandrade at kde.org> wrote:
>> Hi,
>>
>> The initial errors were somehow because of running cmake with "-j
>> <#cores>" (thanks Joseph).
>> But I'm still getting the following error regarding the use of QSKIP.
>> I've noticed in qtbase/src/testlib/qtestcase.h
>> that QSKIP would accept two args with Q_COMPILER_VARIADIC_MACROS was
>> set. But all points in qcompilerdetection.h
>> that would set Q_COMPILER_VARIADIC_MACROS are commented out.
>>
>> Any idea ?
>> Thanks,
>>
>> --------------------------
>> g++ -c -m64 -pipe -g -fvisibility=hidden -fvisibility-inlines-hidden
>> -Wall -W -D_REENTRANT -fPIC -DWITH_TESTS
>> -DIDE_LIBRARY_BASENAME=\"lib\" -DQT_NO_CAST_TO_ASCII
>> -DQT_USE_FAST_OPERATOR_PLUS -DQT_USE_FAST_CONCATENATION
>> -DQT_DISABLE_DEPRECATED_BEFORE=0x040900 -DQT_PLUGIN -DQT_WIDGETS_LIB
>> -DQT_CONCURRENT_LIB -DQT_TESTLIB_LIB -DQT_GUI_LIB -DQT_CORE_LIB
>> -DQT_TESTCASE_BUILDDIR=\"/root/devel/qt-creator/src/plugins/fakevim\"
>> -I../../../../qt5/qtbase/mkspecs/linux-g++-64 -I. -I../../../src
>> -I../../libs -I/root/devel/qt-creator/tools -I../../plugins
>> -I../../../../qt5/qtbase/include
>> -I../../../../qt5/qtbase/include/QtWidgets
>> -I../../../../qt5/qtbase/include/QtConcurrent
>> -I../../../../qt5/qtbase/include/QtTest
>> -I../../../../qt5/qtbase/include/QtGui
>> -I../../../../qt5/qtbase/include/QtCore -I.moc/debug-shared -I.uic -o
>> .obj/debug-shared/fakevimplugin.o fakevimplugin.cpp
>> g++ -c -m64 -pipe -g -fvisibility=hidden -fvisibility-inlines-hidden
>> -Wall -W -D_REENTRANT -fPIC -DWITH_TESTS
>> -DIDE_LIBRARY_BASENAME=\"lib\" -DQT_NO_CAST_TO_ASCII
>> -DQT_USE_FAST_OPERATOR_PLUS -DQT_USE_FAST_CONCATENATION
>> -DQT_DISABLE_DEPRECATED_BEFORE=0x040900 -DQT_PLUGIN -DQT_WIDGETS_LIB
>> -DQT_CONCURRENT_LIB -DQT_TESTLIB_LIB -DQT_GUI_LIB -DQT_CORE_LIB
>> -DQT_TESTCASE_BUILDDIR=\"/root/devel/qt-creator/src/plugins/fakevim\"
>> -I../../../../qt5/qtbase/mkspecs/linux-g++-64 -I. -I../../../src
>> -I../../libs -I/root/devel/qt-creator/tools -I../../plugins
>> -I../../../../qt5/qtbase/include
>> -I../../../../qt5/qtbase/include/QtWidgets
>> -I../../../../qt5/qtbase/include/QtConcurrent
>> -I../../../../qt5/qtbase/include/QtTest
>> -I../../../../qt5/qtbase/include/QtGui
>> -I../../../../qt5/qtbase/include/QtCore -I.moc/debug-shared -I.uic -o
>> .obj/debug-shared/fakevim_test.o fakevim_test.cpp
>> fakevim_test.cpp:404:5: error: macro "QSKIP" passed 2 arguments, but
>> takes just 1
>> fakevim_test.cpp:430:5: error: macro "QSKIP" passed 2 arguments, but
>> takes just 1
>> fakevim_test.cpp:466:5: error: macro "QSKIP" passed 2 arguments, but
>> takes just 1
>> fakevim_test.cpp: In member function ‘void
>> FakeVim::Internal::FakeVimPlugin::test_vim_repeat()’:
>> fakevim_test.cpp:404:5: error: ‘QSKIP’ was not declared in this scope
>> fakevim_test.cpp: In member function ‘void
>> FakeVim::Internal::FakeVimPlugin::test_vim_search()’:
>> fakevim_test.cpp:430:5: error: ‘QSKIP’ was not declared in this scope
>> fakevim_test.cpp: In member function ‘void
>> FakeVim::Internal::FakeVimPlugin::test_vim_indent()’:
>> fakevim_test.cpp:466:5: error: ‘QSKIP’ was not declared in this scope
>> make[3]: *** [.obj/debug-shared/fakevim_test.o] Error 1
>> make[3]: Leaving directory `/root/devel/qt-creator/src/plugins/fakevim'
>> make[2]: *** [sub-fakevim-make_first] Error 2
>> make[2]: Leaving directory `/root/devel/qt-creator/src/plugins'
>> make[1]: *** [sub-plugins-make_first-ordered] Error 2
>> make[1]: Leaving directory `/root/devel/qt-creator/src'
>> make: *** [sub-src-make_first-ordered] Error 2
>> --------------------------
>>
>> On Sun, Sep 2, 2012 at 10:04 PM, Sandro Andrade <sandroandrade at kde.org> wrote:
>>> Hi there,
>>>
>>> I'm trying to build qt-creator master against qt5 beta, but I got some
>>> weird errors when make leaves directories. The first one occurs in
>>> projectexplorer
>>> plugin:
>>>
>>> mv -f libProjectExplorer.so ../../../lib/qtcreator/plugins/Nokia/
>>> { test -z "../../../lib/qtcreator/plugins/Nokia/" || cd
>>> "../../../lib/qtcreator/plugins/Nokia/"; } && test $(gdb --version |
>>> sed -e 's,[^0-9]\+\([0-9]\)\.\([0-9]\).*,\1\2,;q')
>>>  -gt 72 && gdb --nx --batch --quiet -ex 'set confirm off' -ex "save
>>> gdb-index ." -ex quit 'libProjectExplorer.so' && test -f
>>> libProjectExplorer.so.gdb-index && objcopy --add-s
>>> ection '.gdb_index=libProjectExplorer.so.gdb-index'
>>> --set-section-flags '.gdb_index=readonly' 'libProjectExplorer.so'
>>> 'libProjectExplorer.so' && rm -f libProjectExplorer.so.gd
>>> b-index || true
>>> make[3]: Leaving directory `/root/devel/qt-creator/src/plugins/projectexplorer'
>>> make[2]: Leaving directory `/root/devel/qt-creator/src/plugins'
>>> make[1]: *** [sub-plugins-make_first-ordered] Error 2
>>> make[1]: Leaving directory `/root/devel/qt-creator/src'
>>> make: *** [sub-src-make_first-ordered] Error 2
>>>
>>> There is no previous error related to that one.
>>>
>>> If I run make again, the previous error doesn't appear anymore but the
>>> same error appears in a different plugin. I can execute
>>> make many times, making some progress but the error appears in many
>>> directories: cpptools, cppeditor, git, debugger,
>>> qt4projectmanager, madde, valgrind, until I get a:
>>>
>>> fakevim_test.cpp: In member function ‘void
>>> FakeVim::Internal::FakeVimPlugin::test_vim_repeat()’:
>>> fakevim_test.cpp:404:5: error: ‘QSKIP’ was not declared in this scope
>>> fakevim_test.cpp: In member function ‘void
>>> FakeVim::Internal::FakeVimPlugin::test_vim_search()’:
>>> fakevim_test.cpp:430:5: error: ‘QSKIP’ was not declared in this scope
>>>
>>> and I can't progress anymore. Qt5's qtbase/src/testlib is already built.
>>>
>>> Any hint ?
>>>
>>> Thanks,
>>> --
>>> Sandro



More information about the Qt-creator mailing list