【发布时间】:2020-11-23 16:15:03
【问题描述】:
首先,请允许我给你一些背景知识。我正在尝试模仿我童年时代的游戏。关于emulating said game 已经完成了很多工作,我通过here. 的Windows 设置指南取得了一些不错的进展 我建议先看一下,因为了解我之前完成的步骤可能有助于回答这个问题。
目前我正在进行第 10 步,即构建 Vana 解决方案。当我在 Visual Studio 2019 中构建它时,我遇到了 3 个错误。登录、频道和世界服务器项目无法打开“libmysql.lib”。输出如下:
LINK : fatal error LNK1104: cannot open file 'libmysql.lib'
并在错误列表下显示:
LNK1104 cannot open file 'libmysql.lib'
它并没有告诉我为什么它不能打开它,它只是说它不能打开它。它没有给我任何位置,也没有提供太多关于我应该做什么的线索。我在 MySQL 服务器社区 8 文件夹中找到了“libmysql.lib”,并将该文件放在“LazurBeemz”目录的 SQL 文件夹中,但得到了同样的错误。
然后我尝试将其放入 MySQL 服务器 5.0 文件夹,因为这是我将“LazurBeemz”包指向的位置,不幸的是我得到了完全相同的错误。老实说,我不知道应该把它放在哪里,也不知道为什么会出现这些错误。它超出了我的范围。我检查了错误代码(LNK1104)的细节,它有很多可能性。我需要知道的主要事情是这个文件应该放在哪里?
有什么想法吗?
【问题讨论】:
-
该错误很可能是以下 3 件事中的一项或多项: 1. 该库不在您的链接器->常规->项目的附加库目录设置中列出的任何文件夹中, 2. 您正在混合使用 32 位和 64 位,或者 3. 库文件已损坏。
-
@drescherjm 感谢您的帮助!所以我去了链接器->通用->附加库目录设置。它是这样的: $(MySqlDirectory32)\lib;$(Configuration)_VC$(PlatformToolsetVersion)\Common;$(LazurBeemz)\$(PlatformToolsetVersion)\lib\$(Configuration);%(AdditionalLibraryDirectories) 我如何找到这?我似乎无法在我的计算机上找到此位置。我从未见过带有美元符号 ($) 之类的目录。我搜索了我的两个驱动器,结果空手而归。
-
这意味着您尚未将
libmysql.lib的位置添加到此列表中。你需要这样做。 -
我从未见过带有美元符号 ($) 之类的目录 这些是 Visual Studio 中可用的变量,可帮助您项目。您的图书馆不会在这些位置中的任何一个,您不应该尝试将它放在那里。这些位置用于存放系统文件。
-
@HarryFlores
$(MySqlDirectory32)\lib这听起来像是libmysql.lib应该在的位置,但您可能没有配置MySqlDirectory32构建变量。设置它的最简单方法是定义一个环境变量MySqlDirectory32指向您拥有它的实际目录。或者,只需将$(MySqlDirectory32)\lib替换为实际目录,尽管您必须在项目引用它的所有地方都这样做。
标签: c++ visual-studio visual-studio-2019 emulation libmysql