FS#36988 - [qt5-*] private headers in wrong path

Attached to Project: Arch Linux
Opened by Francisco Gonzalez (gzmorell) - Thursday, 19 September 2013, 12:39 GMT
Last edited by Andrea Scarpino (BaSh) - Tuesday, 17 December 2013, 11:09 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Andrea Scarpino (BaSh)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 2
Private No

Details

Description:
qt5 private headers are located in wrong path, making it unusable.
i.e. for qt5-core, headers are located in /usr/include/qt/QtCore
private headers in /usr/include/qt/QtCore/5.1.1/QtCore/private
and should be in
/usr/include/qt/QtCore/private
This affects:
qt5-base, qt5-declarative, qt5-jsbackend, qt5-multimedia, qt5-quick1, qt5-script, qt5-sensors, qt5-serialport,
qt5-svg, qt5-tools, qt5-webkit, and qt5-xmlpatterns.

Additional info:
* package version(s)
5.1.1
* config and/or log files etc.


Steps to reproduce:
Try to compile a file including a private header.
This task depends upon

Closed by  Andrea Scarpino (BaSh)
Tuesday, 17 December 2013, 11:09 GMT
Reason for closing:  Not a bug
Additional comments about closing:  Use cmake or qmake properties
Comment by Francisco Gonzalez (gzmorell) - Thursday, 19 September 2013, 12:41 GMT
As a workaround just move the private headears to the correct path, and everything compiles ok.
Comment by Andrea Scarpino (BaSh) - Thursday, 19 September 2013, 13:16 GMT
I guess this should be reported upstream.
Comment by Andrea Scarpino (BaSh) - Saturday, 07 December 2013, 15:44 GMT
Are you sure this is a bug? Using cmake, if I use QT$MODULE_PRIVATE_HEADERS, everything builds. I didn't try with qmake, but I bet it's the same.
Which project are you try to build?
Comment by Francisco Gonzalez (gzmorell) - Sunday, 08 December 2013, 18:57 GMT
You should be right. Probably it is intended to avoid misuse of private headers. The project I was trying to build is:
https://github.com/niemeyer/qml
Comment by Francisco Gonzalez (gzmorell) - Sunday, 08 December 2013, 19:04 GMT
I use qmake, and the only way I have found to use private hedears is to add
INCLUDEPATH += /usr/include/qt/QtCore/5.1.1/QtCore/
in the pro file, and the use
#include <private/qmetaobject_p.h>
#include <private/qmetaobjectbuilder_p.h>

Loading...