Qt5 development primer

Page  
6

March 30, 2012

situ117 situ117
Lab Rat
42 posts

So the package I was missing was : xcb-util-keysyms

configure script was succesful after I installed this package.

April 4, 2012

subbul subbul
Lab Rat
3 posts
i am facing compilation error in building qt5 (not webkit yet) I am using Ubuntu, with all xcb and other dependency installed using apt-get

configure was successful, whereas build failed in “wayland” (error log below).
Any clue on the wayland header files mismatch or version problems?

  1. __make[4]: Entering directory `/home/xyz/build/newqt5/qt5/qtwayland/src/plugins/platforms/wayland'
  2. g++ -c -pipe -g -fvisibility=hidden -fvisibility-inlines-hidden -D_REENTRANT -Wall -W -fPIC -DQT_NO_LIBUDEV -DQ_PLATFORM_WAYLAND -DQT_NO_WAYLAND_XKB -DQT_WAYLAND_GL_SUPPORT -DQT_WAYLAND_WINDOWMANAGER_SUPPORT -DQ_FONTCONFIGDATABASE -DQT_COMPILES_IN_HARFBUZZ -DQT_PLUGIN -DQT_GUI_LIB -DQT_CORE_LIB -I/home/xyz/build/newqt5/qt5/qtbase/mkspecs/linux-g++ -I. -I/home/xyz/build/newqt5/qt5/qtbase/include/QtCore/5.0.0 -I/home/xyz/build/newqt5/qt5/qtbase/include/QtCore/5.0.0/QtCore -I/home/xyz/build/newqt5/qt5/qtbase/include/QtCore -I/home/xyz/build/newqt5/qt5/qtbase/include/QtGui/5.0.0 -I/home/xyz/build/newqt5/qt5/qtbase/include/QtGui/5.0.0/QtGui -I/home/xyz/build/newqt5/qt5/qtbase/include/QtGui -I/home/xyz/build/newqt5/qt5/qtbase/include/QtPlatformSupport/5.0.0 -I/home/xyz/build/newqt5/qt5/qtbase/include/QtPlatformSupport/5.0.0/QtPlatformSupport -I/home/xyz/build/newqt5/qt5/qtbase/include/QtPlatformSupport -I/home/xyz/build/newqt5/qt5/qtbase/include -I../../../shared -Igl_integration/xcomposite_share -I.moc/debug-shared -o .obj/debug-shared/qwaylandintegration.o qwaylandintegration.cpp
  3. In file included from qwaylandshmwindow.h:45:0,
  4.                 from qwaylandintegration.cpp:46:
  5. qwaylandwindow.h:112:18: error: ‘wl_callback_listener’ does not name a type
  6. make[4]: *** [.obj/debug-shared/qwaylandintegration.o] Error 1_
  7. _

April 6, 2012

subbul subbul
Lab Rat
3 posts

Issue is solved after downloading the release from
http://releases.qt-project.org/qt5.0/alpha/

instead of GIT

subbul wrote:
i am facing compilation error in building qt5 (not webkit yet)
I am using Ubuntu, with all xcb and other dependency installed using apt-get

configure was successful, whereas build failed in “wayland” (error log below).
Any clue on the wayland header files mismatch or version problems?

@
__make4: Entering directory `/home/xyz/build/newqt5/qt5/qtwayland/src/plugins/platforms/wayland’
g++ -c -pipe -g -fvisibility=hidden -fvisibility-inlines-hidden -D_REENTRANT -Wall -W -fPIC -DQT_NO_LIBUDEV -DQ_PLATFORM_WAYLAND -DQT_NO_WAYLAND_XKB -DQT_WAYLAND_GL_SUPPORT -DQT_WAYLAND_WINDOWMANAGER_SUPPORT -DQ_FONTCONFIGDATABASE -DQT_COMPILES_IN_HARFBUZZ -DQT_PLUGIN -DQT_GUI_LIB -DQT_CORE_LIB -I/home/xyz/build/newqt5/qt5/qtbase/mkspecs/linux-g++ -I. -I/home/xyz/build/newqt5/qt5/qtbase/include/QtCore/5.0.0 -I/home/xyz/build/newqt5/qt5/qtbase/include/QtCore/5.0.0/QtCore -I/home/xyz/build/newqt5/qt5/qtbase/include/QtCore -I/home/xyz/build/newqt5/qt5/qtbase/include/QtGui/5.0.0 -I/home/xyz/build/newqt5/qt5/qtbase/include/QtGui/5.0.0/QtGui -I/home/xyz/build/newqt5/qt5/qtbase/include/QtGui -I/home/xyz/build/newqt5/qt5/qtbase/include/QtPlatformSupport/5.0.0 -I/home/xyz/build/newqt5/qt5/qtbase/include/QtPlatformSupport/5.0.0/QtPlatformSupport -I/home/xyz/build/newqt5/qt5/qtbase/include/QtPlatformSupport -I/home/xyz/build/newqt5/qt5/qtbase/include -I../../../shared -Igl_integration/xcomposite_share -I.moc/debug-shared -o .obj/debug-shared/qwaylandintegration.o qwaylandintegration.cpp
In file included from qwaylandshmwindow.h:45:0, from qwaylandintegration.cpp:46:
qwaylandwindow.h:112:18: error: ‘wl_callback_listener’ does not name a type
make4: *** [.obj/debug-shared/qwaylandintegration.o] Error 1_
_
@

April 23, 2012

yanghaijun yanghaijun
Lab Rat
1 posts

i building qt5 with wingw32,but have a error:

qsvgstyle_p.h:65:20: qdebug.h:No such file or directory

May 4, 2012

jlayt jlayt
Ant Farmer
1 posts

Hi, trying to build qtbase on WinXP using MSVC2008, followed the instructions exactly and it builds OK, but when when I try to run I get:

“Failed to load platform plugin “”. Available platforms are: windows:

Any hints?

May 4, 2012

stottle stottle
Lab Rat
3 posts

I am trying to build the qt5-alpha source from the zip download as I don’t have git on my windows machine. Is there any way to do a “make clean”/“make confclean” without git?

May 6, 2012

Philius Philius
Lab Rat
34 posts

I just happened to notice your posts – I didn’t get an email notification.

According to configure, “To reconfigure, run ‘make confclean’ and ‘configure’.”.
Well you probably know that at least with Qt5 alpha, that doesn’t work.

I’m on Debian so I can’t offer any Windows wisdom, but for “make clean” I just delete the directory and re-unpack the alpha .tar.bz2 again.

I’m in the dark as to how to build/use the QtDeclarative component.
It appears that the header I’m looking for – “QtDeclarative/QDeclarativeComponent” isn’t installed although it’s in the source tree – yes I built/installed qtjsbackend and qtdeclarative.

Also, it would be nice if Qt5 beta had a top-level makefile that included targets for
linux-x86-32-gcc-x11
linux-x86-64-gcc-x11
windows7-64-msvc2010

and so on, so we could be sure we’re building against a known and tested build configuration.

And yes, it should fail if any prerequisites are missing (and maybe print warnings if they are different versions).

May 7, 2012

thinks thinks
Lab Rat
2 posts

Hi All,

I’m trying to building Qt5 om Mac OSX 10.7. Following the instructions given here:

http://qt-project.org/wiki/Building_Qt_5_from_Git

However, I’m running into an issue in the build-step which I’m not
sure how to solve. One of the errors I’m getting is the following:

gcc: error: tools/qlocale_mac.mm: Objective-C++ compiler not installed
on this system

I will give a detailed step-by-step descriptions of my process below,
assuming the starting point to be a blank shell with PWD=$HOME:

(1) git clone git://gitorious.org/qt/qt5.git qt5 [check!]

(2) cd qt5 [check!] :)

(3) perl init-repository —no-webkit [check! Does its job without complaining. I can provide the log if necessary]

(4) unset QTDIR [check!] :)

(5) export PATH=”$PWD/qtbase/bin:$PWD/qtrepotools/bin:$PATH” [check!] :)

(6) ./configure -developer-build -opensource -nomake examples -nomake
tests [check! See below]

Get a few warnings about some Qt header not containing macros, e.g.:

QtCore: WARNING:
/Users/thinks/qt5/qtbase/src/corelib/qtcoreversion.h does
not include QT_BEGIN_HEADER

but they don’t seem severe. Other relevant output:

Build type: macx-clang
Architecture: x86_64
Host architecture: x86_64
Platform notes:

– Also available for Mac OS X: macx-g++

(7) ./build -j 4

This is where the trouble begins. The following (first) error is given:

[Lots of output without errors…]
qabstractanimation.h -o .moc/debug-shared/moc_qabstractanimation.cpp
gcc: error: tools/qlocale_mac.mm: Objective-C++ compiler not installed
on this system
gcc: error: kernel/qcore_mac_objc.mm: Objective-C++ compiler not
installed on this system

Similar errors are reported further on as well, all with the same
reason given. It seems somewhat strange that gcc is used over g++, but
at the moment I’m not really sure why this happens.

Some info about gcc:

[thinks@wiggs ~] gcc —version
gcc (GCC) 4.8.0 20120408 (experimental)

Any advice greatly appreciated!

Thanks,

T

May 9, 2012

ludde ludde
Lab Rat
325 posts

@thinks, did you try to build the 5.0 alpha [qt-project.org] instead? Might be easier than building from git.

May 9, 2012

thinks thinks
Lab Rat
2 posts

Thanks, Ludde! :)

We finally got it working here. The following was required:

  • Grab latest from Qt5 git repo.
    git clone git://gitorious.org/qt/qt5.git qt5
  • Use Qt’s provided tool to initialize the repo.
    cd qt5
    perl init-repository —no-webkit
  • Set up our build environment.
    unset QTDIR
    export PATH=”$PWD/qtbase/bin:$PWD/qtrepotools/bin:$PATH”
    export PATH=/Applications/XCode.app/Contents/Developer/usr/bin:$PATH
    export CPP=clang++
    export CC=clang
    echo PATH $PATH
  • Pre-build configuration. Note that we are forcing it to build using
    the Xcode compilers.
    ./configure -no-pch -developer-build -confirm-license -opensource
    -release -nomake demos -nomake examples -arch x86 -sdk
    /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk
  • Build. We could increase the number of course to improve speed once
    we are convinced that this works well…
    ./build -j 1

Not sure all of that stuff is required though, but because the build time is quite steep (even with j > 1) we didn’t have time to narrow it down.

Cheers,

T

May 11, 2012

Bloops Bloops
Lab Rat
7 posts

hi .

I am currently doing the Qt5 manipulation and I have one little question ^^ .

Is it possible to realize a configuration (./configure) in static Qt5 mode (-static) by incorporing the QtSerialPort class, which we must add to our pre-existing library thanks to that manipulation: http://qt-project.org/wiki/QtSerialPort ?

If this is not possible to change QtSerialPort in static library, but just the QT5 library . When I will compile my project which uses QtSerialPort, will it run like a static program or I need to include a .so (or dll) ?

Sorry for my bad english .

June 13, 2012

tonys10 tonys10
Lab Rat
1 posts

I am having trouble building Qt5……

I have Visual Studio 2008 andf have installed the latest SDK……

C:\qt5>configure -developer-build -opensource -nomake examples -nomake tests
+ C:/qt5/qtbase/configure -developer-build -opensource -nomake examples -nomake
tests
Please wait while bootstrapping configure …

Microsoft ® Program Maintenance Utility Version 6.00.8168.0
Copyright © Microsoft Corp 1988-1998. All rights reserved.

cl -c -Yc -nologo -Zm200 -Zc:wchar_t -MT -W3 -GR -EHsc -w34100 -w34189 -DUNICODE -DQT_NODLL -DQT_NO_CODECS -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT _LITE_COMPONENT -DQT_NO_COMPRESS -DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VAR IANT -D_CRT_SECURE_NO_DEPRECATE -DQT_BOOTSTRAPPED -DCOMMERCIAL_VERSION -I”..\..\ include” -I”..\..\include\QtCore” -I”..\..\include\QtCore\5.0.0” -I”..\..\includ e\QtCore\5.0.0\QtCore” -I“C:\qt5\qtbase\tools\shared” -I“C:\qt5\qtbase\mkspecs\w in32-msvc2008” -Fpconfigure_pch.pch -Foconfigure_pch.obj -TP C:\qt5\qtbase\tools \configure\configure_pch.h

Command line warning D4002 : ignoring unknown option ‘-Zc’
Command line warning D4002 : ignoring unknown option ‘-Z:’
Command line warning D4002 : ignoring unknown option ‘-Zw’
Command line warning D4002 : ignoring unknown option ‘-Zc’
Command line warning D4002 : ignoring unknown option ‘-Zh’
Command line warning D4002 : ignoring unknown option ‘-Zr’
Command line warning D4002 : ignoring unknown option ‘-Z_’
Command line warning D4002 : ignoring unknown option ‘-Zt’
Command line warning D4002 : ignoring unknown option ‘-w34100’
Command line warning D4002 : ignoring unknown option ‘-w34189’

configure_pch.h
..\..\include\QtCore\../../src/corelib/global/qglobal.h(45) : fatal error C1083: Cannot open include file: ‘stddef.h’: No such file or directory
NMAKE : fatal error U1077: ‘cl’ : return code ‘0×2’
Stop.

  • qtbase/configure exited with non-zero status.

July 2, 2012

Sfiet_Konstantin Sfiet_Konsta..
Ant Farmer
33 posts

I have a proble compiling Qt5 master recently
(Linux x86_64 Mageia, GCC 4.7.1)

make2 : on entre dans le répertoire « /home/qtdev/srcs/qt5/qtsystems/src/systeminfo »
g++ -c -m64 -pipe -g -std=c++0x -fvisibility=hidden -fvisibility-inlines-hidden -Wall -W -D_REENTRANT -fno-exceptions -fPIC -DQT_SHARED -DQT_COMPILER_SUPPORTS_SSE2 -DQT_COMPILER_SUPPORTS_SSE3 -DQT_COMPILER_SUPPORTS_SSSE3 -DQT_COMPILER_SUPPORTS_SSE4_1 -DQT_COMPILER_SUPPORTS_SSE4_2 -DQT_COMPILER_SUPPORTS_AVX -DQT_COMPILER_SUPPORTS_AVX2 -DQT_BUILD_SYSTEMINFO_LIB -DQT_MAKEDLL -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_NO_MTLIB -DQT_NO_SFW_NETREG -DQT_NO_OFONO -DQT_NO_UDISKS -DQT_NO_LIBSYSINFO -DQT_QML_LIB -DQQmlImageProvider=QQuickImageProvider -DQT_NETWORK_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I/home/qtdev/mkspecs/default -I. -I/home/qtdev/include/QtCore -I/home/qtdev/include/QtGui -I/home/qtdev/include/QtNetwork -I/home/qtdev/include -I/home/qtdev/include/QtQml -I/home/qtdev/include/QtJsonDb -I../../include/QtSystemInfo/5.0.0 -I../../include/QtSystemInfo/5.0.0/QtSystemInfo -I../../include -I../../include/QtSystemInfo -I../../include -I.rcc/debug-shared -I.moc/debug-shared -o .obj/debug-shared/qnetworkinfo_linux.o qnetworkinfo_linux.cpp
In file included from qnetworkinfo_linux.cpp:56:0:
/usr/include/bluetooth/bluetooth.h: In function ‘uint64_t bt_get_le64(const void*)’:
/usr/include/bluetooth/bluetooth.h:159:9: erreur: expected identifier before ‘*’ token
/usr/include/bluetooth/bluetooth.h:159:9: erreur: expected ‘,’ or ‘…’ before ‘(’ token
/usr/include/bluetooth/bluetooth.h:159:9: erreur: expected ‘;’ at end of member declaration
/usr/include/bluetooth/bluetooth.h:159:9: erreur: ‘__v’ does not name a type
/usr/include/bluetooth/bluetooth.h:159:9: erreur: ‘typeof’ was not declared in this scope
/usr/include/bluetooth/bluetooth.h:159:9: erreur: ‘struct bt_get_le64(const void*)::<anonymous>’ has no member named ‘__v’
/usr/include/bluetooth/bluetooth.h: In function ‘uint64_t bt_get_be64(const void*)’:
/usr/include/bluetooth/bluetooth.h:164:9: erreur: expected identifier before ‘*’ token
/usr/include/bluetooth/bluetooth.h:164:9: erreur: expected ‘,’ or ‘…’ before ‘(’ token
/usr/include/bluetooth/bluetooth.h:164:9: erreur: expected ‘;’ at end of member declaration
/usr/include/bluetooth/bluetooth.h:164:9: erreur: ‘__v’ does not name a type
/usr/include/bluetooth/bluetooth.h:164:9: erreur: ‘typeof’ was not declared in this scope
/usr/include/bluetooth/bluetooth.h:164:9: erreur: ‘struct bt_get_be64(const void*)::<anonymous>’ has no member named ‘__v’
/usr/include/bluetooth/bluetooth.h: In function ‘uint32_t bt_get_le32(const void*)’:
/usr/include/bluetooth/bluetooth.h:169:9: erreur: expected identifier before ‘*’ token
/usr/include/bluetooth/bluetooth.h:169:9: erreur: expected ‘,’ or ‘…’ before ‘(’ token
/usr/include/bluetooth/bluetooth.h:169:9: erreur: expected ‘;’ at end of member declaration
/usr/include/bluetooth/bluetooth.h:169:9: erreur: ‘__v’ does not name a type
/usr/include/bluetooth/bluetooth.h:169:9: erreur: ‘typeof’ was not declared in this scope
/usr/include/bluetooth/bluetooth.h:169:9: erreur: ‘struct bt_get_le32(const void*)::<anonymous>’ has no member named ‘__v’
/usr/include/bluetooth/bluetooth.h: In function ‘uint32_t bt_get_be32(const void*)’:
/usr/include/bluetooth/bluetooth.h:174:9: erreur: expected identifier before ‘*’ token
/usr/include/bluetooth/bluetooth.h:174:9: erreur: expected ‘,’ or ‘…’ before ‘(’ token
/usr/include/bluetooth/bluetooth.h:174:9: erreur: expected ‘;’ at end of member declaration
/usr/include/bluetooth/bluetooth.h:174:9: erreur: ‘__v’ does not name a type
/usr/include/bluetooth/bluetooth.h:174:9: erreur: ‘typeof’ was not declared in this scope
/usr/include/bluetooth/bluetooth.h:174:9: erreur: ‘struct bt_get_be32(const void*)::<anonymous>’ has no member named ‘__v’
/usr/include/bluetooth/bluetooth.h: In function ‘uint16_t bt_get_le16(const void*)’:
/usr/include/bluetooth/bluetooth.h:179:9: erreur: expected identifier before ‘*’ token
/usr/include/bluetooth/bluetooth.h:179:9: erreur: expected ‘,’ or ‘…’ before ‘(’ token
/usr/include/bluetooth/bluetooth.h:179:9: erreur: expected ‘;’ at end of member declaration
/usr/include/bluetooth/bluetooth.h:179:9: erreur: ‘__v’ does not name a type
/usr/include/bluetooth/bluetooth.h:179:9: erreur: ‘typeof’ was not declared in this scope
/usr/include/bluetooth/bluetooth.h:179:9: erreur: ‘struct bt_get_le16(const void*)::<anonymous>’ has no member named ‘__v’
/usr/include/bluetooth/bluetooth.h: In function ‘uint16_t bt_get_be16(const void*)’:
/usr/include/bluetooth/bluetooth.h:184:9: erreur: expected identifier before ‘*’ token
/usr/include/bluetooth/bluetooth.h:184:9: erreur: expected ‘,’ or ‘…’ before ‘(’ token
/usr/include/bluetooth/bluetooth.h:184:9: erreur: expected ‘;’ at end of member declaration
/usr/include/bluetooth/bluetooth.h:184:9: erreur: ‘__v’ does not name a type
/usr/include/bluetooth/bluetooth.h:184:9: erreur: ‘typeof’ was not declared in this scope
/usr/include/bluetooth/bluetooth.h:184:9: erreur: ‘struct bt_get_be16(const void*)::<anonymous>’ has no member named ‘__v’

Seems related to bluetooth, but since I don’t know bluez very well, I don’t know where to look at.

July 2, 2012

sierdzio sierdzio
Area 51 Engineer
2544 posts

Have you updated QTDIR and PATH before starting the build? It seems that your search paths are polluted, or bluetooth.h – maybe – bluetooth.h is not ready for C++11, or something entirely different is happening :P.

 Signature 

(Z(:^

July 2, 2012

Sfiet_Konstantin Sfiet_Konsta..
Ant Farmer
33 posts

This issue happened to me quite recently actually. (< 2 weeks) my bluetooth.h did not had any problems before …


  ‹‹ [SOLVED] You are not allowed to edit this page.      How to create and use custom libraries on Windows ››

You must log in to post a reply. Not a member yet? Register here!