c - 由于 lib 错误,Visual Studio 未编译
问题描述
我安装了“Irrklang”声音库以将其包含在项目中,但是每当我尝试编译时,我都会收到类似的错误
Severity Code Description Project File Line Suppression State
Error unexpected token '\b' C:\Users\HRJunior\Documents\IRRklang\lib\Winx64-visualStudio\irrKlang.lib 4
我在一个文件(irrklang.lib)中有大约 800 个,知道吗?
VS 企业 2019 / W10 1903
解决方案
您需要在项目属性.lib
中指定该文件,看起来您可能已尝试将其包含在.#include
如果您查看下载,您应该会看到许多文件和目录,例如:
lib\Winx64-visualStudio\irrKlang.lib
bin\winx64-visualStudio\
包含一些示例和 3 个 DLLinclude\
包含一堆.h
文件。examples\
包含一堆示例项目包括 Visual Studio 解决方案。
所以我们这里有一个 DLL 库,带有一个导入库 ( .lib
) 和一堆头文件。
示例项目是一个很好的比较和查看你的项目哪里出错的东西。
如果您右键单击您的项目 -> 属性 -> 链接器 -> 常规。在“附加库目录”-> 编辑下添加一行包含该.kib
文件的目录,例如C:\Users\HRJunior\Documents\IRRklang\lib\Winx64-visualStudio\
(此时我会注意到,如果将项目提供给其他任何人,该项目可能无法运行。您可以将 IRRklang 放在您的子目录中项目,例如C:\Users\HRJunior\Documents\CoolProject\thirdparty\IRRklang\lib\Winx64-visualStudio\
然后在 MSVC 中使用$(SolutionDir)thirdparty\IRRklang\lib\Winx64-visualStudio\
,然后你可以给任何人C:\Users\HRJunior\Documents\CoolProject\
,它应该可以工作)。
然后在 Linker -> Input 下,对于 Additional Dependencies -> Edit 添加一行irrKlang.lib
. 或者#pragma comment(lib, "irrKlang.lib")
在源代码中的某处添加该行。
然后在 C/C++ -> General 下,对于 Additional Include Directories -> Edit 在包含标题的目录中添加一行,C:\Users\HRJunior\Documents\IRRklang\include
.
此时您的项目应该构建,但尝试运行您会得到一个缺少 DLL 的错误,将这 3 个 DLL 文件复制到包含您的 exe 的输出目录。您可以让 VS 通过在 Build Events -> Post Build Event 的属性中自动执行此操作,然后使用复制命令在命令行中执行此操作,例如:xcopy "C:\Users\HRJunior\Documents\IRRklang\bin\winx64-visualStudio\*.dll" "$(OutDir)" /Y
推荐阅读
- db2 - Db2:有没有办法将一个数据库模式表结构复制到另一个数据库模式中......?
- jquery - Hole li 用 jquery 按一潜排序
- appveyor - 指定 AppVeyor 创建的 ZIP 文件的名称
- android - 两个不同的应用程序未安装在单个设备中
- node.js - [Vue 警告]:创建钩子时出错:“错误:{“clientConfig”:{},“port”:443,“servicePath”:“vision.googleapis.com”,“scopes”:
- python - Python Zeep 缺少提供的 XML 属性
- html - Bootstrap Carousel:字幕不显示
- c# - 在 Visual Studio Build Framework 中无法选择 .NET Core 3.0
- c# - 在 .NET Core 应用程序中添加 OrchardCMS 时出现参考错误
- amazon-web-services - AWS EMR 集群的最佳 Airflow 架构是什么?