【问题标题】:Linking errors when trying to build GLFW尝试构建 GLFW 时出现链接错误
【发布时间】:2016-02-17 08:09:56
【问题描述】:

我正在使用 CMAKE 构建 GLFW,但它会出现以下错误:No CMAKE_C_COMPILER could be found.This 是整个输出日志,尽管我认为重要的是:

LINK : 致命错误 LNK1104: 无法打开文件 'ucrtd.lib'

我进行了一些搜索,似乎我的 Visual Studio 安装被炸了,当我尝试修复它时,我收到大量关于无法找到的包的错误。我尝试重新安装一些 C++ redist 和 Windows 7 SDK,但没有解决它。

【问题讨论】:

    标签: c++ cmake


    【解决方案1】:

    更新:

    运行cmake时需要指定生成器,如果你使用VS2013:

    cmake . -G "Visual Studio 12 2013 Win64"
    

    对于 Visual Studio 2015,它应该是

    cmake . -G "Visual Studio 14 2015 Win64"
    

    Here is the complete list of generators. 或许你必须省略“Win64”部分。

    原帖:

    根据

    https://connect.microsoft.com/VisualStudio/feedback/details/1160492/linker-errors-after-upgrading-from-ctp5-to-ctp6

    您可以尝试将 $UniversalCRT_LibraryPath 添加到配置属性 -> VC++目录 -> 库目录。这能解决您的问题吗?

    您也可以尝试卸载并重新安装 MSVC。

    【讨论】:

    • 感谢您的评论!该错误来自 CMAKE 命令,而不是 Visual Studio 本身。为了清楚起见,我浏览到我的 GLFW 文件夹并执行 cmake . Visual Studio 可以构建项目就好了。
    • @TJHeuvel 我更新了我的答案。您应该指定 VS 作为您的生成器。
    • 我试过了,没有用。我什至尝试了 VS 2013,因为我也安装了它,但得到了与问题中列出的相同的错误。
    猜你喜欢
    • 1970-01-01
    • 2018-06-29
    • 1970-01-01
    • 2019-11-07
    • 1970-01-01
    • 2014-07-06
    • 1970-01-01
    • 2012-01-15
    • 2014-05-26
    相关资源
    最近更新 更多