Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
5.11.0
-
None
-
Windows 10 Enterprise 1803 x64.
Visual Studio 2017 15.7.3.
Self Compiled QT 5.11 branch from git (shared x64).
QTCreator 4.6.2 from the git.
Description
I am trying to compiling qBittorrent latest Master branch from the github and currently stuck with rcc? outputting mangled filename definition if the filename inside the .qrc has version number on it.
For example in qBittorrent webui.qrc it has the following content :
// <RCC> <qresource prefix="/"> <file>www/private/about.html</file> <file>www/private/addtrackers.html</file> <file>www/private/confirmdeletion.html</file> <file>www/private/css/Core.css</file> <file>www/private/css/dynamicTable.css</file> <file>www/private/css/Layout.css</file> <file>www/private/css/style.css</file> <file>www/private/css/Tabs.css</file> <file>www/private/css/Window.css</file> <file>www/private/download.html</file> <file>www/private/downloadlimit.html</file> <file>www/private/filters.html</file> <file>www/private/index.html</file> <file>www/private/newcategory.html</file> <file>www/private/preferences.html</file> <file>www/private/preferences_content.html</file> <file>www/private/properties.html</file> <file>www/private/properties_content.html</file> <file>www/private/rename.html</file> <file>www/private/scripts/client.js</file> <file>www/private/scripts/contextmenu.js</file> <file>www/private/scripts/download.js</file> <file>www/private/scripts/dynamicTable.js</file> <file>www/private/scripts/lib/clipboard.min.js</file> <file>www/private/scripts/lib/excanvas-compressed.js</file> <file>www/private/scripts/lib/mocha-yc.js</file> <file>www/private/scripts/lib/mootools-1.2-core-yc.js</file> <file>www/private/scripts/lib/mootools-1.2-more.js</file> <file>www/private/scripts/lib/parametrics.js</file> <file>www/private/scripts/misc.js</file> <file>www/private/scripts/mocha-init.js</file> <file>www/private/scripts/progressbar.js</file> <file>www/private/scripts/prop-files.js</file> <file>www/private/scripts/prop-general.js</file> <file>www/private/scripts/prop-trackers.js</file> <file>www/private/scripts/prop-webseeds.js</file> <file>www/private/setlocation.html</file> <file>www/private/shareratio.html</file> <file>www/private/statistics.html</file> <file>www/private/transferlist.html</file> <file>www/private/upload.html</file> <file>www/private/uploadlimit.html</file> <file>www/public/css/login.css</file> <file>www/public/login.html</file> <file>www/public/scripts/lib/mootools-1.2-core-yc.js</file> </qresource> </RCC>
From above full content of webui.qrc pay attention into 3 fillename which has version number on it :
<file>www/private/scripts/lib/mootools-1.2-core-yc.js</file> <file>www/private/scripts/lib/mootools-1.2-more.js</file> <file>www/public/scripts/lib/mootools-1.2-core-yc.js</file>
The rcc? outputting the following excerpt from the qmlcache_loader.cpp
namespace _www_private_scripts_lib_mootools_1_js { extern const unsigned char qmlData[]; const QQmlPrivate::CachedQmlUnit unit = { reinterpret_cast<const QV4::CompiledData::Unit*>(&qmlData), nullptr, nullptr }; } namespace _www_public_scripts_lib_mootools_1_js { extern const unsigned char qmlData[]; const QQmlPrivate::CachedQmlUnit unit = { reinterpret_cast<const QV4::CompiledData::Unit*>(&qmlData), nullptr, nullptr }; } namespace _www_private_scripts_lib_mootools_1_js { extern const unsigned char qmlData[]; const QQmlPrivate::CachedQmlUnit unit = { reinterpret_cast<const QV4::CompiledData::Unit*>(&qmlData), nullptr, nullptr }; }
As you can see above it seems that rcc? has problems with files which has number dot number in it's filename. Also "_core_js" and "_more_js" naming inside the qmlcache_loader.cpp being deleted by the rcc?.
And of course QT projects compilation will failed with the following error example :
release\qmlcache_loader.cpp(185): error C2374: 'QmlCacheGeneratedCode::_www_private_scripts_lib_mootools_1_js::unit': redefinition; multiple initialization
Above example could be become like these if i am not mistaken?
namespace _www_private_scripts_lib_mootools_1_2_core_js { extern const unsigned char qmlData[]; const QQmlPrivate::CachedQmlUnit unit = { reinterpret_cast<const QV4::CompiledData::Unit*>(&qmlData), nullptr, nullptr }; } namespace _www_public_scripts_lib_mootools_1_2_core_js { extern const unsigned char qmlData[]; const QQmlPrivate::CachedQmlUnit unit = { reinterpret_cast<const QV4::CompiledData::Unit*>(&qmlData), nullptr, nullptr }; } namespace _www_private_scripts_lib_mootools_1_2_more_js { extern const unsigned char qmlData[]; const QQmlPrivate::CachedQmlUnit unit = { reinterpret_cast<const QV4::CompiledData::Unit*>(&qmlData), nullptr, nullptr }; }
Thanks for reading, i hope it will be fixed soon.
Attachments
For Gerrit Dashboard: QTBUG-68608 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
224548,11 | Fix CONFIG+=qtquickcompiler with umlauts in the file path | 5.11 | qt/qtdeclarative | Status: MERGED | +2 | 0 |