Att: Qt Engineers - No Visual Studio for Qt



  • I have tried to get Qt Creator/Qt 5.2.1 to run with Visual Studio 20-12/13 and Windows SDK combo, but to no avail. Qt Crator seems to be unable to locate the CL compiler. Please follow this "link.":http://qt-project.org/forums/viewthread/39085/P15/#167168
    But this is not a simple glitch, this is a pattern, see the bug report 11539 "here":https://bugreports.qt-project.org/browse/QTCREATORBUG-11539. In trying to solve this problem, I have also tried the same solution suggested in the above mentioned bug report, but I have found another issue with in the solution, an issue that might lead to the permanent solution to this bug.
    Here is my attempt to run Qt Creator from a batch:
    @@echo off
    @call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86_amd64
    @pause
    REM start C:\Qt64\Tools\QtCreator\bin\qtcreator.exe@
    When line 2 is executed, vcvarsall.bat runs calling the this line:
    @if /i %1 == x86_amd64 goto x86_amd64@

    which in turn calls this line:
    @:x86_amd64
    if not exist "%~dp0bin\x86_amd64\vcvarsx86_amd64.bat" goto missing
    call "%~dp0bin\x86_amd64\vcvarsx86_amd64.bat"
    goto :SetVisualStudioVersion@

    This will run the vcvarsx86.bat which when executing this
    @
    @call :GetVSCommonToolsDir
    @if "%VS120COMNTOOLS%"=="" goto error_no_VS120COMNTOOLSDIR
    @call "%VS120COMNTOOLS%VCVarsQueryRegistry.bat" 32bit 64bit@

    it goes to this line:
    @@REM -----------------------------------------------------------------------
    :error_no_VS120COMNTOOLSDIR
    @echo ERROR: Cannot determine the location of the VS Common Tools folder.
    @goto end@

    and graciously displays the error message on the console.

    Why would MS' batch files not be able to work as it a MS created file after all?
    Can any of you shed some light into this solution?

    Special Note
    I would love it if a person directly involved in the deployment of Qt to MS Windows get involved in this solution.

    Thanks in advance



  • Hi,

    this problem with MS' batch files has nothing to do with Qt, i.e. it usually occurs because the environment variables are not set properly when you installed Visual Studio 2013 (or because you uninstalled it).

    Start a CMD (an ordinary one, not the Developer Command Prompt) and type "set" to see if VS120COMNTOOLS is in there. If it's not, you can repair it.



  • Humm... It is not just an MS' problem when you think of it, if the MS' batch file is having problems finding VS120COMNTOOLS , it just might be that Qt Creator is having the same problem?
    On the other hand, I followed your suggestion regarding the set tool, this is what I got from it:
    ALLUSERSPROFILE=C:\ProgramData
    APPDATA=C:\Users\My Account\AppData\Roaming
    MyAccount=D:\Program Files\MyAccount
    asl.log=Destination=file
    CommonProgramFiles=C:\Program Files\Common Files
    CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
    CommonProgramW6432=C:\Program Files\Common Files
    COMPUTERNAME=MyAccount-PC
    ComSpec=C:\Windows\system32\cmd.exe
    DXSDK_DIR=C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)
    FP_NO_HOST_CHECK=NO
    HOMEDRIVE=C:
    HOMEPATH=\Users\My Account
    MEE_TEMP=D:\Temp
    MEE_TMP=D:\tmp
    LOCALAPPDATA=C:\Users\My Account\AppData\Local
    LOGONSERVER=\MyAccount-PC
    NUMBER_OF_PROCESSORS=4
    OS=Windows_NT
    Path=C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Windows\System32\WindowsPowerShell\v1.0;D:\Program Files\SQLiteViewer\SQLite Database Browser 2.0 b1.exe;C:\Program Files (x86)\Graphviz2.30\bin;C:\Program Files\Microsoft\Web Platform Installer;C:\Program Files (x86)\QuickTime\QTSystem;C:\Program Files\Microsoft SQL Server\110\Tools\Binn;C:\Program Files (x86)\Windows Kits\8.0\Windows Performance Toolkit
    PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
    PROCESSOR_ARCHITECTURE=AMD64
    PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 23 Stepping 10, GenuineIntel
    PROCESSOR_LEVEL=6
    PROCESSOR_REVISION=170a
    ProgramData=C:\ProgramData
    ProgramFiles=C:\Program Files
    ProgramFiles(x86)=C:\Program Files (x86)
    ProgramW6432=C:\Program Files
    PROMPT=$P$G
    PSModulePath=C:\Windows\system32\WindowsPowerShell\v1.0\Modules
    PUBLIC=C:\Users\Public
    SystemDrive=C:
    SystemRoot=C:\Windows
    TEMP=C:\Users\MEO~1\AppData\Local\Temp
    TMP=C:\Users\MEO~1\AppData\Local\Temp
    tvdumpflags=8
    USERDOMAIN=MyAccount-PC
    USERNAME=My Account
    USERPROFILE=C:\Users\My Account
    VS110COMNTOOLS=C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\Tools
    *VS120COMNTOOLS=C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools*
    windir=C:\Windows
    XNAGSv4=C:\Program Files (x86)\Microsoft XNA\XNA Game Studio\v4.0
    I hope the information presented would be enough to solve this riddle.

    Thanks



  • Ok, your environment seems fine, so it could be this error due to you previously installed Visual Studio 2013 on your D: drive and then C:, or something like that :-)

    Anyway, what I mean, the error in this case is probably in your registry, open regedit and check that the following key is correct:

    HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\SxS\VS7
    to the right it should say: 12.0 REG_SZ C:\Program Files (x86)\Microsoft Visual Studio 12.0
    (not D: or something like that!)



  • Thank you so very much for your help. It is true, a long time ago I installed Visual Studio(s) in the D:, later on I remove them from there to reinstall'em in the C:. I did as you suggested, but the "registry ":https://onedrive.live.com/?cid=8f8db1a4f405473f#cid=8F8DB1A4F405473F&id=8F8DB1A4F405473F!136 seems to be OK.
    This is one pesky problem, but I am not the first one to have it and many others have not resolved it, but I am confident that one day a solution will be reached, be it provided from Qt or the combined effort of all participants of this forum; I will keep posting, so please keep the effort to reaching a solution. After all, if we cannot find it here, who else would?
    I would like to have this discussion and its resolution recorded for future programmers facing the same predicament.



  • Hi, indeed if you google you can see others also have this problem.

    I checked the script again in vcvarsx86_amd64.bat.
    Ok, your registry key HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\SxS\VS7 is good, but can you also check for two others if they exist?

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\SxS\VS7
    and
    HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio\SxS\VS7

    If they exist, they could block the script from seeing the correct one.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.