So I try the most simple configuration, but I still get link error (didn't find symbols qWindowsVersionInfo),
I tried to cygwin64 shell in the most simple configuration:
CD/cygdrive/d/Qt/Qt - build
./qt - everywhere - SRC - 5.12.3/configure - v - platform cygwin - g + +
Result error:
G + + - o "../bin/qmake "...
Qglobal. O: In the function 'winSp_helper:
/cygdrive/d/Qt/Qt - everywhere - SRC - 5.12.3/qtbase/SRC/corelib/global/qglobal CPP: 2098: 'qWindowsVersionInfo ()' undefined reference
/cygdrive/d/Qt/Qt - everywhere - SRC - 5.12.3/qtbase/SRC/corelib/global/qglobal CPP: 2098: (. Text + 0 x179) : truncated re ws-addressing to match: R_X86_64_PC32 for undefined symbol qWindowsVersionInfo ()
Qglobal. O: In the function 'osVer_helper:
/cygdrive/d/Qt/Qt - everywhere - SRC - 5.12.3/qtbase/SRC/corelib/global/qglobal CPP: 2114: (. Text + 0 x33a) : truncated re ws-addressing to match: R_X86_64_PC32 for undefined symbol qWindowsVersionInfo ()
Collect2: Error: ld returns 1
Make: * * * [Makefile: 189:../bin/qmake] Error 1
I found in the source code found qWindowsVersionInfo function, D: \ Qt \ Qt - everywhere - SRC - 5.12.3 \ qtbase \ SRC \ corelib \ global \ qoperatingsystemversion_win CPP
I analyzed the generated Makefile (D: \ Qt \ Qt - build \ qtbase \ qmake \ Makefile), there are target qoperatingsystemversion_win. O
$(SOURCE_PATH)/SRC/corelib/global/qoperatingsystemversion_win CPP
$(CXX) - c - o $@ $(CXXFLAGS) $& lt;
So the goal is to exist,
But qoperatingsystemversion_win. O has not been any references,
Error is by g + o "../bin/qmake to:
"
$(BUILD_PATH)/bin/qmake $(EXEEXT) : $(OBJS) $(QOBJS) qlibraryinfo. O
"$$(CXX) - o @" $(OBJS) $(QOBJS) qlibraryinfo. O $(LFLAGS)
It does not use qoperatingsystemversion_win. O target,
How do I use qoperatingsystemversion_win. O goal? The Makefile automatically generated by the configure command, can't manually change
In addition, I don't know which in this case - platform is correct? Win32 - g + + or cygwin - g + +?
If I change to the cygwin - g + +, the configure command will use cat Makefile. Unix. Unix configuration as the ultimate Makefile, error
If I change to the win32 - g + +, configure will Makefile. Unix. Win32 configuration eventually Makefile, was immediately met a new error:
G + + - c o main. O...
/cygdrive/d/Qt/Qt - everywhere - SRC - 5.12.3 qtbase/qmake/main CPP: In the function 'int installFileOrDirectory (const QString& The const QString&) ':
/cygdrive/d/Qt/Qt - everywhere - SRC - 5.12.3 qtbase/qmake/main CPP: 303:15: Error: ': : symlink' is not declared
Still unable to run normally,
So please tell me on the Windows 10, for the win32 platform - the difference between the g + + and cygwin - g + +, thank you!
CodePudding user response:
Don't use cyg, automatic installation, directly with msys2 QWT SSL all haveCodePudding user response:
There are some sys2 articles in my blog