首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用csc时的奇数警告

使用csc时的奇数警告
EN

Stack Overflow用户
提问于 2018-08-31 12:45:44
回答 1查看 609关注 0票数 1

当我使用csc.exe编译时,我收到了一个奇怪的警告:

代码语言:javascript
复制
C:\...\>csc HelloWorld.cs /o- /target:exe
Microsoft (R) Visual C# Compiler version 2.9.0.63208 (958f2354)
Copyright (C) Microsoft Corporation. All rights reserved.

warning CS1668: Invalid search path 'C:\Program Files (x86)\Windows Kits\10\lib\10.0.17134.0\ucrt\x86' specified in 'LIB environment variable' -- 'directory does not exist'

编译似乎很好,但是是什么触发了这个警告呢?这个LIB变量是什么?

我在Developer提示符VS 2017中运行这个命令,当我直接从一个普通命令提示符运行时,一切都很好:

代码语言:javascript
复制
C:\...\>"C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\Roslyn\csc.exe" HelloWorld.cs /target:exe /o+
Microsoft (R) Visual C# Compiler version 2.9.0.63208 (958f2354)
Copyright (C) Microsoft Corporation. All rights reserved.

查看winsdk.bat文件,有几个对UCRT的引用。我认为这些应该包括C运行时库,但是对于10.0.17134.0版本,它们并不存在于磁盘上。

EN

回答 1

Stack Overflow用户

发布于 2018-08-31 17:03:42

C#编译器(csc)在当前目录、-lib选项中提到的任何路径和LIB环境变量中查找引用。不幸的是,当您启动Visual命令提示符时,它会运行vcvarsall.bat,它设置了LIB环境变量,但是C++链接器也使用它来查找库(静态库)。您在问题中提到的文件夹有C++库,但没有任何托管代码。我想这是一种错误的行为。我确实看到它安装在我的机器里。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52115776

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档