Hi According of this: http://quickgit.kde.org/?p=marble.git&a=blobdiff&h=c06ac2def37fde136ead5021a865fecf8b3795e1&hp=bf982672783c576c1cac755b847bb9f9954639f0&hb=030b7dea47a29d40b497106602148d8e66a4088d&f=cmake%2Fmodules%2FFindquazip.cmake in http://quickgit.kde.org/?p=marble.git&a=blob&h=c2fc76e8418426fa4d5069217fb5ea859479e315&hb=302efc0d343a40240c32167f1642d4992a743f66&f=src%2Fplugins%2Frunner%2Fkml%2FKmzHandler.cpp lines #16 # and 17, the path of quazip is hardcoded. if only install a quazip builded with qt5 (headers save in /foo/include/quazip5, fail build whit missing file Reproducible: Always Steps to Reproduce: 1.installl/build quazip with qt5 supoort 2.download marble from git 3. build 4 wait to crash (missing quazip header file) Actual Results: fail build Expected Results: build ok workground is change #include <quazip/quazip.h> #include <quazip/quazipfile.h> to #include <quazip5/quazip.h> #include <quazip5/quazipfile.h> or fix by dev (sorry i'm not coder)
We need some way to determine whether quazip was built against Qt4 or Qt5. When using quazip/Qt4 with Marble/Qt5, you'll get a crash at runtime. @Rex: How does Fedora package quazip? From a quick look at the sources it seems quazip itself does not use any Qt 5 special postfixes in its installation. Is that changed in Fedora? I'm wondering because of http://quickgit.kde.org/?p=marble.git&a=commit&h=030b7de
Quazip upstream uses a "5" postfix, starting from: https://sourceforge.net/p/quazip/code/254/ which is why I made the aforementioned commit to marble to follow suit. (I guess I should have referenced that in the marble commit to make that clear, my apologies)
quazip, qhen build with Qt5 install: /usr/ /usr/include/ /usr/include/quazip5/ /usr/include/quazip5/JlCompress.h /usr/include/quazip5/crypt.h /usr/include/quazip5/ioapi.h /usr/include/quazip5/quaadler32.h /usr/include/quazip5/quachecksum32.h /usr/include/quazip5/quacrc32.h /usr/include/quazip5/quagzipfile.h /usr/include/quazip5/quaziodevice.h /usr/include/quazip5/quazip.h /usr/include/quazip5/quazip_global.h /usr/include/quazip5/quazipdir.h /usr/include/quazip5/quazipfile.h /usr/include/quazip5/quazipfileinfo.h /usr/include/quazip5/quazipnewinfo.h /usr/include/quazip5/unzip.h /usr/include/quazip5/zip.h /usr/lib/ /usr/lib/libquazip.a /usr/lib/libquazip5.so /usr/lib/libquazip5.so.1 /usr/lib/libquazip5.so.1.0.0 /usr/share/ /usr/share/cmake-3.2/ /usr/share/cmake-3.2/Modules/ /usr/share/cmake-3.2/Modules/FindQuaZip5.cmake and when build with qt4: /usr/ /usr/include/ /usr/include/quazip/ /usr/include/quazip/JlCompress.h /usr/include/quazip/crypt.h /usr/include/quazip/ioapi.h /usr/include/quazip/quaadler32.h /usr/include/quazip/quachecksum32.h /usr/include/quazip/quacrc32.h /usr/include/quazip/quagzipfile.h /usr/include/quazip/quaziodevice.h /usr/include/quazip/quazip.h /usr/include/quazip/quazip_global.h /usr/include/quazip/quazipdir.h /usr/include/quazip/quazipfile.h /usr/include/quazip/quazipfileinfo.h /usr/include/quazip/quazipnewinfo.h /usr/include/quazip/unzip.h /usr/include/quazip/zip.h /usr/lib/ /usr/lib/libquazip.so /usr/lib/libquazip.so.1 /usr/lib/libquazip.so.1.0 /usr/lib/libquazip.so.1.0.0 /usr/share/ /usr/share/cmake-3.2/ /usr/share/cmake-3.2/Modules/ /usr/share/cmake-3.2/Modules/FindQuaZip.cmake both buid with: qmake-qt{4,5} PREFIX=/usr (both from SVN) (waiting to release for use a cmake build system)
Thanks for the fast replies. I was looking at quazip-0.7.1, which is the latest release but still before the introduction of the 5 postfix. I can reproduce the problem now, working on a fix.
Git commit e640a4bf12fdbd33ccb9c5b7820effe341898535 by Dennis Nienhüser. Committed on 01/06/2015 at 20:02. Pushed by nienhueser into branch 'master'. quazip for Qt5 is installed to quazip5/ since rev 254 See http://sourceforge.net/p/quazip/code/254/ M +2 -2 cmake/modules/Findquazip.cmake M +2 -2 src/plugins/runner/kml/KmzHandler.cpp http://commits.kde.org/marble/e640a4bf12fdbd33ccb9c5b7820effe341898535