我最近购买了 OpenGL SuperBible 6th Edition 以了解 OpenGL 4,它带有 example code 的负载。作者尽最大努力通过提供 Visual Studio 2010 项目和 CMake 文件使代码可在 Windows/Linux 上构建。
话虽如此,我想在 Eclipse 中使用此示例代码,因为这是我首选的 IDE。我的机器上有 Eclipse CDT、Visual Studio 2012 Professional、MinGW 和 CMake 。我认为将项目移植到 Eclipse 项目中会很简单,但到目前为止,我的尝试都没有结果。这是我所做的:
首先 ,我试图从 CMake 文件制作一个 Eclipse 项目。显然,在 CMake(我不熟悉)中,您可以运行一个命令来生成 Eclipse 项目文件。从描述中,我了解到 CMake 文件是为 Linux 设计的,所以我从项目的基本目录中运行了以下命令:
cmake -G "Eclipse CDT4 - Unix Makefiles" ./
第一次检查时,这似乎有效。但是,当我将生成的项目导入 Eclipse 并随后构建它时,我得到了一个 bunch of undefined reference errors ;也许这是一个 Linux/Windows 问题?
第二个 ,失败后,我想我可能能够将 Visual Studio 项目转换为 Eclipse 项目。我用谷歌搜索了一下,得到了 this tutorial from IBM ,它描述了从 VS 导出一个 makefile 然后使用它。然而,它已经过时了(教程是从 2006 年开始的;显然 VS 不久前放弃了“导出 makefile”选项)。我可以从 VS 很好地运行该项目,所以我知道代码都很好。
所以现在,我不知所措。任何人都可以提供有关将此项目移植到 Eclipse 的任何见解吗?我想我可以手动导入代码,但由于我对这段代码还不是很熟悉(这就是我买这本书的原因!)我更愿意使用最简单的方法来避免搞砸。
最佳答案
与使用 Visual Studio 构建的 lib/GLFW_r32.lib 相关的所有链接器问题。
由于 MinGW 和 Visual Studio 库是 incompatible,因此无法使用与代码示例捆绑在一起的 lib/GLFW_r32.lib。
有以下选项:
如果(WIN32)
如果(MINGW)
//为 OpenGL 添加 mingw 特定的库
设置(此处为 COMMON_LIBS mingw 特定的库...)
其他(MINGW)
//特定于 Visual Studio
设置(COMMON_LIBS sb6 优化 GLFW_r32 调试 GLFW_d32)
结束(MINGW)
elif (UNIX)
设置(COMMON_LIBS sb6 glfw ${GLFW_LIBRARIES} GL rt dl)
别的()
设置(COMMON_LIBS sb6)
万一()
关于eclipse - 将 CMake/Visual Studio 项目移植到 Eclipse,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20588358/