使用 Qt 链接静态库,该库还使用外部库

我正在制作一个使用 C++ 的 2D 游戏引擎,并且我想使用 Qt 创建一个地图编辑器。我面临的问题是,我想在我的 Qt 应用程序中使用游戏引擎,因此我将游戏引擎作为静态库与 Qt 应用程序进行了链接,但是引擎还使用了一些库,如 SDL、OpenGL 和 Lua,所以我在链接中遇到了问题,在我的 Qt 应用程序中得到了"undefined reference to 'SDL_Init'",我无法解决这个问题。

这是我从引擎中的 .pro 文件中尝试链接 SDL 的示例:

INCLUDEPATH += /usr/include/SDL2
LIBS += -L/usr/local/lib -lSDL2

但这似乎不起作用。 需要指出的是,当我使用 CMake 作为构建系统时,一切都正常工作,而且我正在 Ubuntu 环境下工作。

点赞