【发布时间】:2016-05-04 21:49:24
【问题描述】:
我正在尝试重新学习 C++,我正在使用 MinGW 在 Windows 上使用 Eclipse CDT,我想在不修改 MinGW 安装的情况下包含一个外部库。目前,我正在使用 SDL2,但这是一个更笼统的问题。
我已经使用以下步骤成功编译并运行了我的测试程序:
- 下载
SDL2-devel-2.0.4.mingw.tar.gz(here) 并解压 - 将文件从
SDL2-2.0.4\复制到我的MinGW安装:- \include\SDL2 到 %MinGW%\include\
- \lib\libSDL2.a 到 %MinGW%\lib\
- \lib\libSDL2.dll.a 到 %MinGW%\lib\
- \lib\libSDL2.la 到 %MinGW%\lib\
- \lib\libSDL2main.a 到 %MinGW%\lib\
- \bin\SDL2.dll 到 %MinGW%\bin\
- 通过 Project->Properties 将库(按顺序)添加到链接器:C/C++ Build->Settings:(“Tool Settings”选项卡)MinGW C++ Linker->Libraries:“Libraries (-l)”部分
- SDL2main
- SDL2
-
#include <SDL2\SDL.h>在我的 cpp/h 文件中 - 构建程序
- 使用我的.exe 将
SDL2.dll复制到输出目录 - 运行
在这台特定的机器上,我使用的是 SDL2-2.0.4 的 i686-w64-mingw32 构建,但我想直接将链接器指向这个,而不是在上面的步骤 2 中复制到 MinGW 安装。然后我可以简单地将这些文件包含在我的 repo 中,而无需期望正确修改 MinGW 安装,或更改指向 x86_64-w64-mingw32 构建在另一台机器上的指针等。
在一个稍微不同的注释(可能是一个单独的问题)上,是否有自动化步骤 6 的方法?我似乎找不到它,并且在每个干净的构建上手动复制 dll 相当烦人......
【问题讨论】:
标签: mingw eclipse-cdt