Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

QtOfficeOpenXml on MacOS



  • Has anybody ever tried to get the QtOfficeOpenXML package from here compiled on MacOS?


  • Lifetime Qt Champion

    Hi
    Not that i have seen.
    Besides perl, seems to have no external dependencies so
    should be semi easy to get compiling ?
    Do you get errors?


  • Lifetime Qt Champion

    Hi,

    Two things to fix:

    • One code error
    • One missing library

    Otherwise it builds.



  • I have been able to get it working on Windows and Linux. On Mac, I get a linking error, see below.
    @SGaist: you talk about a missing library. Could that be the problem here? If so, where can I get it from and how do I install it?

    Undefined symbols for architecture x86_64:
      "_crc32", referenced from:
          KGzipFilter::writeHeader(QByteArray const&) in kgzipfilter.o
          KGzipFilter::compress_(bool) in kgzipfilter.o
          KZip::closeArchive() in kzip.o
          KZip::writeData(char const*, long long) in kzip.o
      "_deflate", referenced from:
          KGzipFilter::compress_(bool) in kgzipfilter.o
      "_deflateEnd", referenced from:
          KGzipFilter::terminate() in kgzipfilter.o
      "_deflateInit2_", referenced from:
          KGzipFilter::init(int, KGzipFilter::Flag) in kgzipfilter.o
      "_deflateReset", referenced from:
          KGzipFilter::reset() in kgzipfilter.o
      "_inflate", referenced from:
          KGzipFilter::uncompress_() in kgzipfilter.o
      "_inflateEnd", referenced from:
          KGzipFilter::terminate() in kgzipfilter.o
      "_inflateInit2_", referenced from:
          KGzipFilter::init(int, KGzipFilter::Flag) in kgzipfilter.o
      "_inflateReset", referenced from:
          KGzipFilter::reset() in kgzipfilter.o
    ld: symbol(s) not found for architecture x86_64
    clang: error: linker command failed with exit code 1 (use -v to see invocation)
    

  • Lifetime Qt Champion

    Nothing to get, it's the zlib symbol that are missing and its already available in the system.

    Edit the karchive.pri file and add macos: LIBS += -lz



  • Thanks, now I remember that I also had to do something there for Windows. This solved it :)


Log in to reply