【问题标题】:Allegro 5 Visual Studio 2015?快板 5 Visual Studio 2015?
【发布时间】:2015-11-06 01:28:25
【问题描述】:

我已经浏览了一段时间,很多资源都推荐使用 Allegro 作为 C++ 的第一个 2d 库;然而,在这个时代,我没有发现将 Allegro 5 的库应用到 Visual Studio 15 的教程。

这是可能的还是我必须降级到 Visual Studio 2010?

【问题讨论】:

    标签: visual-studio-2015 allegro5


    【解决方案1】:

    自 2016 年起编辑: 目前,在 Visual Studio 上安装 Allegro 5(目前为 5.2.1 版)的首选方法是通过 NuGet 包。链接是here。这是获取 Allegro 的最简单快捷的方法,也是每个人都应该使用的方法。在 Visual Studio Community 2015 上测试。


    显然,网络上的指南似乎已经过时,或者似乎忘记了Official Site 已准备好下载最新和现代的二进制文件。所以这里是如何设置 Allegro:

    假设

    首先,我将使用 Unstable 分支 5.1,因为它具有新的二进制文件。其次,我将使用 Visual Studio 2013,但它应该与 Visual Studio 2015 完全相同(下面的第 1 步是您可能遇到的唯一区别)。

    步骤 1

    我们将直接从Gna! 存储库下载 Allegro 5。在这里,您可以根据自己拥有的内容和想要执行的操作来选择文件。

    这个目录有4个文件,在我的例子中,我会下载allegro-msvc2013-x86-5.1.12.zip,你会下载allegro-msvc2015-x86-5.1.12 .zip。仅当您知道自己在做什么时才选择 x64 版本。

    第二步

    下载完成后,将内容提取到易于访问且不会移动的位置,例如硬盘的根目录文档内。我将使用根目录,通常是驱动器C:。解压后,C:\allegro\ 中应该有一个文件夹,内容如下:

    allegro\
     |-bin\
     |-include\
     |-lib\
    

    记住提取文件的位置很重要,因为正确设置环境取决于它找到此路径的能力。

    第三步

    这里我们告诉 Visual Studio 如何使用 Allegro。打开 Visual Studio 并创建一个新的 C++ 项目/打开您希望使用 Allegro 的项目。打开项目后,在解决方案资源管理器中右键单击其名称并打开 Properties 然后:

    1. 在顶部显示类似 Configuration: Active(Debug) 的内容,选择 All Configurations
    2. 在左侧菜单中选择C/C++ -> 常规。在此配置页面上,选择 Additional Include Directories 并将其编辑为在其文本字段中包含C:\allegro\include\
    3. 在左侧菜单中选择链接器 -> 常规。在此配置页面上,选择 Additional Library Directories 并对其进行编辑以在其文本字段中包含 C:\allegro\lib\
    4. 点击底部的应用,但不要关闭窗口。
    5. 返回顶部,选择调试配置。
    6. 在左侧菜单中选择链接器 -> 输入。在此配置页面上,选择 Additional Dependencies 并对其进行编辑以在其文本字段中包含 allegro_monolith-debug.lib
    7. (可选)在左侧菜单中选择链接器 -> 系统。在此配置页面上,选择 SubSystem 并从下拉框中将其更改为 Console。这将为您提供一个处于 Debug 模式的工作终端窗口,您可以在其中写入 ...err... debug stuff ;)
    8. 点击底部的应用,但不要关闭窗口。
    9. 返回顶部,选择发布配置。
    10. 在左侧菜单中选择链接器 -> 输入。在此配置页面上,选择 Additional Dependencies 并对其进行编辑以在其文本字段中包含 allegro_monolith.lib
    11. (可选)在左侧菜单中选择链接器 -> 系统。在此配置页面上,选择 SubSystem 并从下拉框中将其更改为 Windows。这将阻止终端窗口出现在您的程序的发布版本上。
    12. 单击应用,然后单击确定,这将关闭项目的属性页并应为 Allegro 做好准备。

    第四步

    这是我们测试一切正常的部分......(或不,请参阅错误后的下一步)

    创建一个 *.cpp 文件或使用您的 main 函数所在的文件并将其更改为这个小测试程序:(我放弃我对它的所有权利并将其置于公共域下)

    #include "allegro5\allegro5.h"
    #include <iostream>
    
    int main(int argc, char** argv)
    {
        al_init();
    
        ALLEGRO_DISPLAY *display = nullptr;
        al_set_app_name("Hello World from Allegro 5.1!");
        display = al_create_display(640, 480);
        if (display == nullptr)
        {
            std::cerr << "Well, something is not working..." << std::endl;
            al_rest(5.0);
            return EXIT_FAILURE;
        }
    
        al_clear_to_color(al_map_rgb(255, 255, 255));
        al_flip_display();
        al_rest(5.0);
        return 0;
    }
    

    如果在编译和运行后你得到一个在 5 秒内关闭的空白窗口,那么 Allegro 就准备好了!如果没有,请发布您的错误消息,我会看看发生了什么。

    第 5 步

    我们在哪里解决执行时丢失的 DLL 错误...

    所以程序应该已经正确编译,Visual Studio 现在将尝试运行它。启动时,可能会出现以下内容:

    解决方案是将allegro_monolith-debug-5.1.dll 文件复制到项目根目录的Debug 文件夹中,使其位于程序的.exe 文件旁边。同样,在 Release 文件夹中,您必须在该文件夹的可执行文件旁边复制 allegro_monolith-5.1.dll。这两个文件都应该位于下载存档的allegro\bin\ 目录中。请记住,您可能需要我所说的另一个 dll,但它也应该包含在您从 Gna! 下载的文件中。

    注意:我链接到的包只提供了基本的 Allegro 5 库,而不是它的依赖项。假设发布二进制文件包含它们,但调试版本可能需要您手动链接它们。它们位于here。为 allegro 5.1.12 的最新版本选择 1.2.0 包。

    【讨论】:

    • 非常感谢,从以前的尝试中,他们都无法识别库文件,我猜:c 我即将开始使用 SDL 作为 2D 库,但大多数人推荐 Allegro 作为您的第一语言。再次非常感谢,您的回答已被接受^_^
    【解决方案2】:

    可能有一些不同的方法,从上面的第 3 步开始。 在“所有配置”下执行以下操作:

    1. 在配置管理器左窗格中的“配置属性”下选择“调试”,在右窗格中选择“环境”并输入:PATH=d:\Programms\Allegro_2015\bin,其中“d:\Programms\Allegro_2015 \" 是 Allegro 库文件夹的路径。
    2. 在左侧窗格中选择“VC++ 目录”并在右侧窗格中选择“包含目录”,然后在“编辑...”文本字段中添加相同的路径,并在末尾添加 \include:d:\Programms\Allegro_2015\包括。
    3. 然后在右侧窗格中选择“库目录”并添加:d:\Programms\Allegro_2015\lib。
    4. 按照上述帖子中的步骤操作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-26
      • 2017-02-09
      • 2016-09-03
      • 1970-01-01
      • 1970-01-01
      • 2016-05-09
      相关资源
      最近更新 更多