Unresolved external symbol attempting to build 5.2
-
wrote on 2 Oct 2013, 14:16 last edited by SGaist
I followed the instructions for building on windows here (http://qt-project.org/wiki/Building_Qt_5_from_Git). During the nmake I get the following:
@
if exist C:\Users\akrebsbach.WTC-VAN-NT\Desktop\Work\QtSupport\QTCode\qt5\qtbase\lib\Qt5Qmld.dll.embed.manifest copy /Y C:\Users\akrebsbach.WTC-VAN-NT\Desktop\Work\QtSupport\QTCode\qt5\qtbase\lib\Qt5Qmld.dll.embed.manifest C:\Users\akrebsbach.WTC-VAN-NT\Desktop\Work\QtSupport\QTCode\qt5\qtbase\lib\Qt5Qmld.dll_manifest.bak
link /NOLOGO /DYNAMICBASE /NXCOMPAT /BASE:0x66000000 /DEBUG /DLL /VERSION:5.20 /MANIFEST /MANIFESTFILE:C:\Users\akrebsbach.WTC-VAN-NT\Desktop\Work\QtSupport\QTCode\qt5\qtbase\lib\Qt5Qmld.dll.embed.manifest /OUT:C:\Users\akrebsbach.WTC-VAN-NT\Desktop\Work\QtSupport\QTCode\qt5\qtbase\lib\Qt5Qmld.dll @C:\Users\AKREBS~1.WTC\AppData\Local\Temp\nm3D5C.tmp
Creating library C:\Users\akrebsbach.WTC-VAN-NT\Desktop\Work\QtSupport\QTCode\qt5\qtbase\lib\Qt5Qmld.lib and object C:\Users\akrebsbach.WTC-VAN-NT\Desktop\Work\QtSupport\QTCode\qt5\qtbase\lib\Qt5Qmld.expYarrInterpreter.obj : error LNK2019: unresolved external symbol "struct JSC::Yarr::CharacterClass * __cdecl JSC::Yarr::newlineCreate(void)" (?newlineCreate@Yarr@JSC@@YAPAUCharacterClass@12@XZ) referenced in function "public: struct JSC::Yarr::CharacterClass * __thiscall JSC::Yarr::YarrPattern::newlineCharacterClass(voi
d)" (?newlineCharacterClass@YarrPattern@Yarr@JSC@@QAEPAUCharacterClass@23@XZ)YarrJIT.obj : error LNK2001: unresolved external symbol "struct JSC::Yarr::CharacterClass * __cdecl JSC::Yarr::newlineCreate(void)" (?newlineCreate@Yarr@JSC@@YAPAUCharacterClass@12@XZ)
YarrPattern.obj : error LNK2001: unresolved external symbol "struct JSC::Yarr::CharacterClass * __cdecl JSC::Yarr::newlineCreate(void)" (?newlineCreate@Yarr@JSC@@YAPAUCharacterClass@12@XZ)
YarrInterpreter.obj : error LNK2019: unresolved external symbol "struct JSC::Yarr::CharacterClass * __cdecl JSC::Yarr::wordcharCreate(void)" (?wordcharCreate@Yarr@JSC@@YAPAUCharacterClass@12@XZ) referenced in function "public: struct JSC::Yarr::CharacterClass * __thiscall JSC::Yarr::YarrPattern::wordcharCharacterClass(
void)" (?wordcharCharacterClass@YarrPattern@Yarr@JSC@@QAEPAUCharacterClass@23@XZ)YarrJIT.obj : error LNK2001: unresolved external symbol "struct JSC::Yarr::CharacterClass * __cdecl JSC::Yarr::wordcharCreate(void)" (?wordcharCreate@Yarr@JSC@@YAPAUCharacterClass@12@XZ)
YarrPattern.obj : error LNK2001: unresolved external symbol "struct JSC::Yarr::CharacterClass * __cdecl JSC::Yarr::wordcharCreate(void)" (?wordcharCreate@Yarr@JSC@@YAPAUCharacterClass@12@XZ)
YarrPattern.obj : error LNK2019: unresolved external symbol "struct JSC::Yarr::CharacterClass * __cdecl JSC::Yarr::digitsCreate(void)" (?digitsCreate@Yarr@JSC@@YAPAUCharacterClass@12@XZ) referenced in function "public: struct JSC::Yarr::CharacterClass * __thiscall JSC::Yarr::YarrPattern::digitsCharacterClass(void)" (?d
igitsCharacterClass@YarrPattern@Yarr@JSC@@QAEPAUCharacterClass@23@XZ)YarrPattern.obj : error LNK2019: unresolved external symbol "struct JSC::Yarr::CharacterClass * __cdecl JSC::Yarr::spacesCreate(void)" (?spacesCreate@Yarr@JSC@@YAPAUCharacterClass@12@XZ) referenced in function "public: struct JSC::Yarr::CharacterClass * __thiscall JSC::Yarr::YarrPattern::spacesCharacterClass(void)" (?spacesCharacterClass@YarrPattern@Yarr@JSC@@QAEPAUCharacterClass@23@XZ)
YarrPattern.obj : error LNK2019: unresolved external symbol "struct JSC::Yarr::CharacterClass * __cdecl JSC::Yarr::nondigitsCreate(void)" (?nondigitsCreate@Yarr@JSC@@YAPAUCharacterClass@12@XZ) referenced in function "public: struct JSC::Yarr::CharacterClass * __thiscall JSC::Yarr::YarrPattern::nondigitsCharacterClass(v
oid)" (?nondigitsCharacterClass@YarrPattern@Yarr@JSC@@QAEPAUCharacterClass@23@XZ)YarrPattern.obj : error LNK2019: unresolved external symbol "struct JSC::Yarr::CharacterClass * __cdecl JSC::Yarr::nonspacesCreate(void)" (?nonspacesCreate@Yarr@JSC@@YAPAUCharacterClass@12@XZ) referenced in function "public: struct JSC::Yarr::CharacterClass * __thiscall JSC::Yarr::YarrPattern::nonspacesCharacterClass(v
oid)" (?nonspacesCharacterClass@YarrPattern@Yarr@JSC@@QAEPAUCharacterClass@23@XZ)YarrPattern.obj : error LNK2019: unresolved external symbol "struct JSC::Yarr::CharacterClass * __cdecl JSC::Yarr::nonwordcharCreate(void)" (?nonwordcharCreate@Yarr@JSC@@YAPAUCharacterClass@12@XZ) referenced in function "public: struct JSC::Yarr::CharacterClass * __thiscall JSC::Yarr::YarrPattern::nonwordcharCharacterClass(void)" (?nonwordcharCharacterClass@YarrPattern@Yarr@JSC@@QAEPAUCharacterClass@23@XZ)
C:\Users\akrebsbach.WTC-VAN-NT\Desktop\Work\QtSupport\QTCode\qt5\qtbase\lib\Qt5Qmld.dll : fatal error LNK1120: 7 unresolved externals
NMAKE : fatal error U1077: '"c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\link.EXE"' : return code '0x460'
Stop.
NMAKE : fatal error U1077: '"c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: 'cd' : return code '0x2'
Stop.
NMAKE : fatal error U1077: 'cd' : return code '0x2'
Stop.
NMAKE : fatal error U1077: 'cd' : return code '0x2'
Stop.
@As the above shows the problem is linking:
- YarrInterpreter.obj
- YarrJIT.obj
- YarrPattern.obj
I used "-opengl desktop" as part of my configuration but I believe that is the only place I deviated from the instructions.
I'm trying to build this on the VS2010 command line.
Attempting to build each module individually this is an issue in:
- qtdeclarative
- qtdoc
- qtgraphicaleffects
- qtlocation
- qtmultimedia
- qtquick1
- qtquickcontrols
- qtsensors
- qttools
- qttranslations
- qtwebkit
- qtwebkit-examples
- qtwinextras
All the other modules build without error.
-
wrote on 3 Oct 2013, 20:26 last edited by SGaist
Conclusion:
Eventually, I just gave up deleting everything and tried again. This time it worked fine. /sigh
git clone https://code.qt.io/qt/qt5.git qt5 cd qt5 git checkout stable perl init-repository --no-webkit configure -developer-build -opensource -nomake examples -nomake tests -opengl desktop nmake
Fin
[edit: updated URL and coding tags SGaist]
-
wrote on 3 Mar 2014, 09:52 last edited by
got the same issue, here is my solution :
-
in "qt\qtdeclarative\src\qml", check the file "RegExpJitTables.h"
if it's empty, delete it (it's autogenerated with python) -
check that python is in you PATH and INCLUDE environment variable (if it was not the first time, that's why you file was generated empty, but won't be generated again if you do not delete it).
nmake again
-
-
wrote on 7 Apr 2014, 15:38 last edited by
Thanks so much, I had the same problem (with mingw32) and this reply solved it.
-
wrote on 5 Sept 2014, 07:06 last edited by
[quote author="gboulard" date="1393840325"]got the same issue, here is my solution :
-
in "qt\qtdeclarative\src\qml", check the file "RegExpJitTables.h"
if it's empty, delete it (it's autogenerated with python) -
check that python is in you PATH and INCLUDE environment variable (if it was not the first time, that's why you file was generated empty, but won't be generated again if you do not delete it).
nmake again[/quote]
Thank you, this worked for me as well.
-
-
wrote on 5 Nov 2014, 08:16 last edited by
Thanks. Worked for me.
-
wrote on 6 Nov 2014, 16:04 last edited by
Seems to have worked for me to. +1 (if any).
On a partial side rant, why a dependency on python? I understand it's nice to use other tools when building but if I'm putting together a base system I now have to install both ActivePerl and Python. Not to mention if I check out from source instead of using a zip file I need git as well. Why not simplify and either build a small tool inside of Qt (similar to qmake) where it could do your scripted steps or just limit down to 1 language?
Thanks for the answer, you guys are a lifesaver!
-
wrote on 15 Jan 2015, 08:23 last edited byThis post is deleted!
-
wrote on 15 Jan 2015, 08:23 last edited by
Thank you Arthurk.
-
wrote on 15 Jan 2015, 12:17 last edited by
Arthurk, could you please put the procedure in detail
-
wrote on 15 Jan 2015, 12:17 last edited byThis post is deleted!
-
wrote on 12 Nov 2015, 23:59 last edited by
thank you,
but the location for that h file is this
C:\qt-everywhere-opensource-src-5.5.1\qtdeclarative\src\qml.generated\debug
-
wrote on 19 Aug 2016, 15:07 last edited by
@billconan and @gboulard
Thanks a bunch. I had the same issue where I had to install Python half way through nmake, but after re-running nmake it blew up way beyond in with this unrecognizable JSC::Yarr:: errors !!
Deleting RegExpJitTables.h and re-running nmake got me past this.
-
wrote on 13 Jan 2017, 18:29 last edited by
Hi,
This is the complete sequence to install QT on windows x64 bit with VS2015. Hope it will helpAdd license file to this location: %USERPROFILE%.qt-license
Open Visual Studio VS2015 Developer Native Command Prompt
Run command “D:\Qt\Qt5.5.0-VS2015\5.5\Src” to go to the qt folder
set QMAKESPEC=win32-msvc2015
set QTDIR=D:\Qt\Qt5.5.0-VS2015\5.5\Src
set PYTHONDIR=D:\Pulse\agents\work\DAILY_CVXIX_2016_x64_vs110\ix\Tools\Windows\python\Python2.7.1
set PATH=%QTDIR%\qtbase\bin;%PYTHONDIR%;%PATH%
set INCLUDE=%PYTHONDIR%;%INCLUDE%
cd %QTDIR%
Run command “configure -debug-and-release -platform win32-msvc2015 –prefix <location to install to>
Run command “nmake”
Run command “nmake install” -
wrote on 15 Sept 2022, 13:39 last edited by LionelPeeters
Hello,
I tried with the lastest version pulled from git and deleting the file generated the following error
C:\Users\Lionel\AppData\Local\Microsoft\WindowsApps\python.exe C:/Dev/github/qt5/qt5/qtdeclarative/src/3rdparty/masm/yarr/create_regex_tables > .generated\debug\RegExpJitTables.h 'C:\Users\Lionel\AppData\Local\Microsoft\WindowsApps\python.exe' is not recognized as an internal or external command, operable program or batch file. NMAKE : fatal error U1077: 'C:\Users\Lionel\AppData\Local\Microsoft\WindowsApps\python.exe' : return code '0x1' Stop. NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.33.31629\bin\HostX86\x86\nmake.exe"' : return code '0x2' Stop. NMAKE : fatal error U1077: 'cd' : return code '0x2' Stop. NMAKE : fatal error U1077: 'cd' : return code '0x2' Stop. NMAKE : fatal error U1077: 'cd' : return code '0x2' Stop.
and python is properly installed
C:\Dev\github\qt5\qt5>python --version Python 2.7.18
The file is generated each time I call "nmake"
-
Hello,
I tried with the lastest version pulled from git and deleting the file generated the following error
C:\Users\Lionel\AppData\Local\Microsoft\WindowsApps\python.exe C:/Dev/github/qt5/qt5/qtdeclarative/src/3rdparty/masm/yarr/create_regex_tables > .generated\debug\RegExpJitTables.h 'C:\Users\Lionel\AppData\Local\Microsoft\WindowsApps\python.exe' is not recognized as an internal or external command, operable program or batch file. NMAKE : fatal error U1077: 'C:\Users\Lionel\AppData\Local\Microsoft\WindowsApps\python.exe' : return code '0x1' Stop. NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Tools\MSVC\14.33.31629\bin\HostX86\x86\nmake.exe"' : return code '0x2' Stop. NMAKE : fatal error U1077: 'cd' : return code '0x2' Stop. NMAKE : fatal error U1077: 'cd' : return code '0x2' Stop. NMAKE : fatal error U1077: 'cd' : return code '0x2' Stop.
and python is properly installed
C:\Dev\github\qt5\qt5>python --version Python 2.7.18
The file is generated each time I call "nmake"
@LionelPeeters said in Unresolved external symbol attempting to build 5.2:
and python is properly installed
In which folder?
The first error clearly says that C:\Users\Lionel\AppData\Local\Microsoft\WindowsApps\python.exe is NOT recognised! -
wrote on 6 May 2024, 23:39 last edited by
@jsulm I'm having the same issue as @LionelPeeters. Can either of you comment on how to resolve this? I don't see why Jom would be looking for python in this WindowsApps path instead of the Python directory I added to my Path. There is no WindowsApps path in my Path environment variable. And I've already disabled the app execution aliases for python.
-
wrote on 3 Feb 2025, 12:23 last edited by Kutermajster 2 Mar 2025, 12:46
Seems like the problem is that configure is finding a python.exe which is in the:
C:\Users\Lionel\AppData\Local\Microsoft\WindowsApps\python.exeBut this is a 'shortcut' to install python from windows store, not an actual python interpreter path. I'm experimenting how to resolve it.
I can also see, that building Qt5 relies on Python27. It might be good just to prepend the inital 'configure' with setting python path to:
set PATH=c:\Python27;%PATH%