<direct.h> not found from /Qt/5.9.1/mingw53_32/mkspecs/win32-g++/qplatformdefs.h
-
I am trying to compile this library, which worked perfectly on linux (Qt5.7) but when doing so under windows (Qt5.9.1), I get a strange error that the included 'direct.h' in /Qt/5.9.1/mingw53_32/mkspecs/win32-g++/qplatformdefs.h cannot be found. Any suggestions?
So far, thw windows installed Qt5.9.1 has always worked for all my other projects...
-
hi @ModelTech,
the library has not been updated since 3 years, so it's likely that it won't compile with newer Qt's.
have you seen the (still open) pull request? it contains build fixes for Qt 5.8, maybe they help you.
regards
-
I fixed the bug as they suggested there, which enables to compile it on Linux, but the windows compilation seems to get stuck on a qt problem as the <direct.h> is included in a windows-specific qt platform file qplatformdefs.h. So, I would guess this is not necessarily directly related to the library being outdated but I could be wrong :?
-
Well, I have solved this one problem by adding extra version numbers to the QtOfficeOpenXml.version.in file that is somewhere in the package, but now I run into linking issues:
./.obj/release/kgzipfilter.o:kgzipfilter.cpp:(.text+0x138): undefined reference to `inflateEnd' ./.obj/release/kgzipfilter.o:kgzipfilter.cpp:(.text+0x158): undefined reference to `deflateEnd' ./.obj/release/kgzipfilter.o:kgzipfilter.cpp:(.text+0x198): undefined reference to `deflateReset' ./.obj/release/kgzipfilter.o:kgzipfilter.cpp:(.text+0x1b4): undefined reference to `inflateReset' ./.obj/release/kgzipfilter.o:kgzipfilter.cpp:(.text+0x291): undefined reference to `crc32' ./.obj/release/kgzipfilter.o:kgzipfilter.cpp:(.text+0x397): undefined reference to `inflateInit2_' ./.obj/release/kgzipfilter.o:kgzipfilter.cpp:(.text+0x3fe): undefined reference to `deflateInit2_' ./.obj/release/kgzipfilter.o:kgzipfilter.cpp:(.text+0x525): undefined reference to `deflate' ./.obj/release/kgzipfilter.o:kgzipfilter.cpp:(.text+0x566): undefined reference to `crc32' ./.obj/release/kgzipfilter.o:kgzipfilter.cpp:(.text+0x631): undefined reference to `inflate' ./.obj/release/kzip.o:kzip.cpp:(.text+0x36): undefined reference to `crc32' ./.obj/release/kzip.o:kzip.cpp:(.text+0x2a0b): undefined reference to `crc32' ./.obj/release/kzip.o:kzip.cpp:(.text+0x2df8): undefined reference to `crc32' collect2.exe: error: ld returned 1 exit status