Git Product home page Git Product logo

Comments (12)

dbzhang800 avatar dbzhang800 commented on May 18, 2024

Hi Pavel, is perl installed properly in your computer? what happened when you run

perl -v

from qtxlsxwriter.

Mar4eli avatar Mar4eli commented on May 18, 2024

Thanks for prompt reply.

On mac: This is perl 5, version 16, subversion 2 (v5.16.2) built for darwin-thread-multi-2level

On win 8.1: This is perl 5, version 18, subversion 2(v5.18.2) ...

from qtxlsxwriter.

dbzhang800 avatar dbzhang800 commented on May 18, 2024

Hi, maybe a bug of the Qt build-system.

The error

   Project ERROR: Module does not define version

is reported by qmake instead of make.

The error will occur when qmake fail to load .qmake.conf file which located in QtXlsx's top directory.

You can give a try to remove the .qmake.cache file manually which is generated when you run qmake last time, then run following commands again

qmake -r
make

Or you can copy all contents of the .qmake.conf the to xlsx.pro file.

Hope this is useful for you.

from qtxlsxwriter.

Mar4eli avatar Mar4eli commented on May 18, 2024

Manually delete qmake.cache. Run qmake -r. The result on Win is:

Info: creating cache file C:/Users/CurrUser/Desktop/qtProject/qtx/.qmake.cache
Reading C:/Users/CurrUser/Desktop/qtProject/qtx/src/src.pro
 Reading C:/Users/CurrUser/Desktop/qtProject/qtx/src/xlsx/xlsx.pro
Project WARNING: You should probably load(qt_build_config) first in xlsx.pro for QtXlsx, as the latter also load()s qt_module.
Project MESSAGE: Not doing so may lead to qt_module.prf overriding compiler/link
er options in your .pro file.
Project MESSAGE: Ignore this warning with CONFIG+=no_qt_module_warning if you know what you are doing.
Project ERROR: Module does not define version.

When i tried to open xlsx.pro in (src/xlsx) i get this in Qt Creator:

Error while parsing file C:/Users/currUser/Desktop/qtProject/qtx/src/xlsx/xlsx.pro. Отмена.
Project WARNING: You should probably load(qt_build_config) first in xlsx.pro for QtXlsx, as the latter also load()s qt_module.
Project MESSAGE: Not doing so may lead to qt_module.prf overriding compiler/linker options in your .pro file.
Project MESSAGE: Ignore this warning with CONFIG+=no_qt_module_warning if you know what you are doing.
Project ERROR: Module does not define version.

What modules do you have in QT += ?

On the other hand, i can add your great project by *.pri to my project and everything works fine.

from qtxlsxwriter.

dbzhang800 avatar dbzhang800 commented on May 18, 2024

Hi,


I'm nearly sure that the error is caused by qmake's failure to load .qmake.conf, but I can not reproduce it in my OS X10.9 and WinXP.

You can run following command to see what happened

qmake -d -d -r > error.log

You should open the qtxlsx.pro project instead of the src/xlsx.pro project, and make sure that the source code is clean.

from qtxlsxwriter.

Mar4eli avatar Mar4eli commented on May 18, 2024
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_build_config.prf:54:
 CONFIG := lex yacc debug exceptions depend_includepath testcase_targets import_plugins import_qpa_plugin rtti_off incremental_off windows qt warn_on release link_prl debug_and_release debug_and_release_target precompile_header copy_dir_files release shared rtti no_plugin_manifest qpa win32 mingw gcc pcre release compile_examples sse2 sse3 ssse3 sse4_1 sse4_2 avx avx2largefile prefix_build force_independent create_prl link_prl prepare_docs qt_docs_targets no_private_qt_headers_warning QTDIR_build no_dll exceptions_off testcase_exceptions
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_build_config.prf:64:
 defined test function qtBuildPart
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_build_config.prf:71:
 defined test function qtNomakeTools
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_build_config.prf:71:
 leaving block, okey=true
DEBUG 1: done visiting file C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_b
uild_config.prf
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:20: test
function returned true
DEBUG 2: evaluating expression
DEBUG 2: hashed literal "isEmpty"
DEBUG 2: evaluated expression => isEmpty
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:22: evalu
ating test function "isEmpty"
DEBUG 2: evaluating joined expression
DEBUG 2: new string
DEBUG 2: literal "MODULE"
DEBUG 2: evaluated expression => MODULE
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:22: calling built-in isEmpty(MODULE)
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:22: test
function returned true
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:22: taking 'then' branch
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:22: enter
ing block
DEBUG 2: evaluating expression
DEBUG 2: hashed literal "MODULE"
DEBUG 2: evaluated expression => MODULE
DEBUG 2: evaluating expression
DEBUG 2: new string
DEBUG 2: function section
DEBUG 2: evaluating joined expression
DEBUG 2: new string
DEBUG 2: function list
DEBUG 2: evaluating joined expression
DEBUG 2: new string
DEBUG 2: function basename
DEBUG 2: evaluating joined expression
DEBUG 2: new string
DEBUG 2: literal "_PRO_FILE_"
DEBUG 2: evaluated expression => _PRO_FILE_
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:22: calling built-in $$basename(_PRO_FILE_)
DEBUG 2: evaluated expression => xlsx.pro
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:22: calling built-in $$list(xlsx.pro)
DEBUG 2: evaluated expression => .QMAKE_INTERNAL_TMP_variableName_0
DEBUG 2: evaluating joined expression
DEBUG 2: new string
DEBUG 2: literal "."
DEBUG 2: evaluated expression => .QMAKE_INTERNAL_TMP_variableName_0 .
DEBUG 2: evaluating joined expression
DEBUG 2: new string
DEBUG 2: literal "0"
DEBUG 2: evaluated expression => .QMAKE_INTERNAL_TMP_variableName_0 . 0
DEBUG 2: evaluating joined expression
DEBUG 2: new string
DEBUG 2: literal "0"
DEBUG 2: evaluated expression => .QMAKE_INTERNAL_TMP_variableName_0 . 0 0
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:22: calling built-in $$section(.QMAKE_INTERNAL_TMP_variableName_0, ., 0, 0)
DEBUG 2: evaluated expression => xlsx
DEBUG 2: assigning
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:22: MODUL
E := xlsx
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:22: leavi
ng block, okey=true
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:22: finis
hed 'then' branch
DEBUG 2: evaluating expression
DEBUG 2: hashed literal "isEmpty"
DEBUG 2: evaluated expression => isEmpty
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:23: evalu
ating test function "isEmpty"
DEBUG 2: evaluating joined expression
DEBUG 2: new string
DEBUG 2: literal "VERSION"
DEBUG 2: evaluated expression => VERSION
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:23: calli
ng built-in isEmpty(VERSION)
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:23: test
function returned true
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:23: takin
g 'then' branch
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:23: enter
ing block
DEBUG 2: evaluating expression
DEBUG 2: hashed literal "VERSION"
DEBUG 2: evaluated expression => VERSION
DEBUG 2: evaluating expression
DEBUG 2: new string
DEBUG 2: variable MODULE_VERSION =>
DEBUG 2: evaluated expression =>
DEBUG 2: assigning
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:23: VERSI
ON :=
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:23: leavi
ng block, okey=true
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:23: finis
hed 'then' branch
DEBUG 2: evaluating expression
DEBUG 2: hashed literal "isEmpty"
DEBUG 2: evaluated expression => isEmpty
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:24: evalu
ating test function "isEmpty"
DEBUG 2: evaluating joined expression
DEBUG 2: new string
DEBUG 2: literal "VERSION"
DEBUG 2: evaluated expression => VERSION
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:24: calli
ng built-in isEmpty(VERSION)
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:24: test
function returned true
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:24: AND
DEBUG 2: evaluating expression
DEBUG 2: hashed literal "error"
DEBUG 2: evaluated expression => error
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:24: evalu
ating test function "error"
DEBUG 2: evaluating joined expression
DEBUG 2: new string
DEBUG 2: literal "Module does not define version."
DEBUG 2: evaluated expression => "Module does not define version."
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:24: calli
ng built-in error("Module does not define version.")
Project ERROR: Module does not define version.
DEBUG 1: C:/Qt/Qt5.2.1/5.2.1/mingw48_32/mkspecs/features/qt_module.prf:24: abort
ing block, function status: error
DEBUG 1: C:/Users/pavelantonov/Desktop/qtProject/qtx/src/xlsx/xlsx.pro:5: aborti
ng block, function status: error

from qtxlsxwriter.

dbzhang800 avatar dbzhang800 commented on May 18, 2024

Can you find following lines in the log file:

DEBUG 1: E:/Qt/QtXlsxWriter2/.qmake.conf: entering block
DEBUG 2: evaluating expression
DEBUG 2: hashed literal "load"
DEBUG 2: evaluated expression => load
DEBUG 1: E:/Qt/QtXlsxWriter2/.qmake.conf:1: evaluating test function "load"
DEBUG 2: evaluating joined expression
DEBUG 2: new string
DEBUG 2: literal "qt_build_config"
DEBUG 2: evaluated expression => qt_build_config
DEBUG 1: E:/Qt/QtXlsxWriter2/.qmake.conf:1: calling built-in load(qt_build_config)
DEBUG 1: visiting file D:\Qt\Qt5.1.0\\5.1.0\mingw48_32/mkspecs/features/qt_build_config.prf

Or you can give a try to copy all the contents of the .qmake.conf to .qmake.cache, then run qmake -r to see what happened.

from qtxlsxwriter.

Mar4eli avatar Mar4eli commented on May 18, 2024

I'm sorry, i haven't had time to check this yet.
But i have noticed, that when i add your project by the *.pri, i get this:

Project MESSAGE: This project is using private headers and will therefore be tied to this specific Qt module build version.
Project MESSAGE: Running this project against other versions of the Qt modules may crash at any arbitrary point.
Project MESSAGE: This is not a bug, but a result of using Qt internals. You have been warned!

By the way, thank you for the time you are spending on this issue.

from qtxlsxwriter.

dbzhang800 avatar dbzhang800 commented on May 18, 2024

Yes, QZipWriter and QZipReader which are private API of the Qt Gui module are used in this library.

Just as the message said,

This is not a bug, but a result of using Qt internals. You have been warned!

Don't worry.

from qtxlsxwriter.

Mar4eli avatar Mar4eli commented on May 18, 2024

I'm sorry. Lots of work.

I don't have qmake.conf.

qmake -r results:

C:\Users\pavelantonov\Desktop\qtProject\qtx>qmake -r
Info: creating cache file C:/Users/pavelantonov/Desktop/qtProject/qtx/.qmake.cac
he
Reading C:/Users/pavelantonov/Desktop/qtProject/qtx/src/src.pro
 Reading C:/Users/pavelantonov/Desktop/qtProject/qtx/src/xlsx/xlsx.pro
Project WARNING: You should probably load(qt_build_config) first in xlsx.pro for
 QtXlsx, as the latter also load()s qt_module.
Project MESSAGE: Not doing so may lead to qt_module.prf overriding compiler/link
er options in your .pro file.
Project MESSAGE: Ignore this warning with CONFIG+=no_qt_module_warning if you kn
ow what you are doing.
Project ERROR: Module does not define version.

Maybe be there is the problem: You should probably load(qt_build_config) first in xlsx.pro ?

Which version of mingw do you have? I have mingw48_32.

from qtxlsxwriter.

dbzhang800 avatar dbzhang800 commented on May 18, 2024

I'm sorry. Lots of work.
I don't have qmake.conf.

That's why you encounter such errors, as both load(qt_build_config) and Module version are all live in the .qmake.conf file.

In normal cases, qmake will load the .qmake.conf file before processing each .pro file. But qmake fail to load it in your compute, so errors occur.

https://github.com/dbzhang800/QtXlsxWriter/blob/master/.qmake.conf

from qtxlsxwriter.

Mar4eli avatar Mar4eli commented on May 18, 2024

with this file on windows everything is ok.

it was a very stupid my mistake. sorry for disturbing you.

from qtxlsxwriter.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.