【问题标题】:Install pdcurses on Visual Studio 2017在 Visual Studio 2017 上安装 pdcurses
【发布时间】:2017-03-10 01:11:22
【问题描述】:

我在 Code::Blocks 上制作 2048 游戏,但由于调试问题,我转到 Visual Studio Community 2017。conio.h 似乎在那里不起作用,所以我正在尝试切换到 curses .h 库。

我已经阅读了很多教程,但没有一个对我有用。我访问了他们的网站并下载了 .zip 文件,大小为 384 KB,但我不知道如何处理这些文件。

请帮忙?

【问题讨论】:

    标签: visual-studio-2017 curses pdcurses


    【解决方案1】:

    我找到了very useful website which talks about PDCurses and its installation in Visual Studio。尽管它是针对 2010/2013 年的,但它在 VS2017 中确实对我有用——甚至是演示程序(有非常细微的变化)!

    所以这是我做的步骤(因为你已经有了 PDCurses):

    1. 在VS2017社区版的开发者命令提示符下输入 在set PDCURSES_SRCDIR=<PDCurses Directory Location>;在我的情况下 是

      set PDCURSES_SRCDIR=C:\pdcurses-master
      

      注意:这里我们设置编译需要的环境变量。如果您需要 pdcurses 库定义的附加功能,您可能需要在此步骤中设置相应的变量。例如,如果您需要宽字符支持,您可以使用set WIDE=1。要查看所有可用选项,您可以在任何文本编辑器中打开 make 文件(在下一步中提到)并查找 if 条件

    2. 在命令窗口中导航到 PDCurses/win32 的目录(在我的例子中是C:\pdcurses-master\win32

      nmake –f vcwin32.mak
      

      (这是 PDCurses 的 make 文件。)它将为我们的 Visual Studio 创建pdcurses.lib

    3. 现在我们需要将生成的库合并到我们的项目中。所以打开你的项目并转到项目属性

      • 在“VC++ 目录”中,更改:
        • 包含目录:向 PDCurses 安装目录添加一个新的文件路径,在我的例子中是 C:\pdcurses-master
        • 库目录:向 PDCurses 安装库目录添加一个新的文件路径,在我的例子中是 C:\pdcurses-master\win32
      • 在 C/C++ 中:
        • 在“代码生成”选项卡中,将“运行时库”更改为“多线程调试 (/MTd)”。 (通常已经设置好了)
      • 在链接器中:
        • “输入”选项卡中,将pdcurses.lib 添加到附加依赖项(我一开始很困惑 - 请记住,它是链接器的输入选项卡)
      • 点击应用,然后确定。

    然后哇!我从 pdcurses 项目中运行了一些示例程序(演示),所有这些程序都对我有用,只需稍作修改。

    注意:我使用 Visual Studio 2017 创建了一个 Windows(也称为 Win32,如 Win32 API)控制台应用程序并加载了该项目。我确实包含了 stdafx.h 并且编译成功,并且我能够在终端窗口中看到输出。

    上述网站也提供了一个PDF文件。那里的说明从从网站下载 pdcurses 开始。

    【讨论】:

    • 不客气 :)。那你能把它标记为已解决吗?它会帮助别人。问候...
    • 我可以确认它在 VS2015 中也适用于我。我很欣赏这个链接。
    • 请注意,在 PDCurses 的最新版本中,文件夹已更改。所以我们需要对目录和名称进行细微的更改。 win32改成wincon,visual c编译器make文件不是Makefile.vc而是vcwin32.mak
    • 当我尝试使用上述设置配置 Visual Studio 2017 时,在“C/C++”部分下的第 3 步中找不到设置“运行时库”。无论如何,我尝试编译,但没有成功。有人可以帮忙吗?
    • @AlexWang ,你访问过项目的属性吗? (您可以从菜单“项目”访问它或右键单击您的项目名称,然后您应该看到项目属性。然后在“配置属性”部分转到 C/C++,然后您将能够看到“代码生成”选项卡。并按照说明进行操作。一切顺利。
    【解决方案2】:

    这已经是老新闻了,但它可能会帮助人们知道 pdcurses 已打包在 vcpkg 上。

    要使用它,(当然,假设你已经安装了 vcpkg,(Installing vcpkg))

    vcpkg install pdcurses

    然后你就去参加比赛了。 vcpkg 将负责确保所有包含和库路径都已设置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-09-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-09
      • 2018-02-01
      • 2018-04-08
      相关资源
      最近更新 更多