zoukankan      html  css  js  c++  java
  • qt5.7.1 (create4.2.0)+msvc2015 安装后无法编译 & 缺少h文件

    其实问题的本质是,系统中没有vs2015的注册信息导致

    一开始是报:

    "'cl' 不是内部或外部命令,也不是可运行的程序"解决方案 

    通过在环境变量中添加了C:Program Files (x86)Microsoft Visual Studio 14.0VCin 路径解决,但是这不治本质

    后来能编译后,报缺少h文件的问题。

    深入了解后,发现是qt使用了msvc的编译版本:Microsoft Visual C++ Compiler 14.0 (amd64) 

    在qt中应用此版本的编译器后,会自动调用:C:Program Files (x86)Microsoft Visual Studio 14.0VCvcvarsall.bat 

    此bat脚本会根据版本信息,自动调用与之相应的bat,代码如下,也可以自己查看全部代码:

    :check_platform
    if /i %1 == x86 goto x86
    if /i %1 == amd64 goto amd64
    if /i %1 == x64 goto amd64

    我的版本实际调用时,时跳转到了:C:Program Files (x86)Microsoft Visual Studio 14.0VCinamd64vcvars64.bat 

    但因为,注册表中没有vs2015信息,会在此语句出报错:

    :start
    @call :GetVSCommonToolsDir
    @if "%VS140COMNTOOLS%"=="" goto error_no_VS140COMNTOOLSDIR

    直接跳到:

    :error_no_VS140COMNTOOLSDIR
    @echo ERROR: Cannot determine the location of the VS Common Tools folder.
    @goto end

    别的博客解决办法,在我这里都没没有效果,其中手写部分bat代码,将获取路径代码换成绝对路径代码,但是问题是涉及到的环境路径太多了,最终放弃

    修改环境变量的办法也无法奏效。

    最终无可奈何,安装了另外版本的win10,之后所有的qt安装工作异常顺利。

    不过折腾的整个过程,非但不是浪费时间,反而非常有用。理解了安装过程的各个步骤,学到了非常多知识。

     

  • 相关阅读:
    PAT:1006(换个格式输出整数想·)
    PAT 1008(数组循环右移问题)
    kaliLinux 工具dmitry参数解析
    PAT 1004(成绩排名)(C++)
    PAT乙级:我要通过(1003)
    PAT乙级:写出这个数(1002)
    PAT乙级:(3n+1)猜想 (1001)
    Linux初体验
    C语言基础入门:起源
    Linux_ pipe 匿名管道 浅解
  • 原文地址:https://www.cnblogs.com/braveCloud/p/9819187.html
Copyright © 2011-2022 走看看