上下文:
我正在尝试运行Jarno Elonen在http://elonen.iki.fi/code/tpsdemo/提供的薄板样条的代码。它需要安装OpenGL + GLUT和Boost uBlas库。我已下载代码,但由于编译器无法找到GLUT和Boost文件,因此无法运行它。
我希望有人可以在网站上运行代码(而不只是解决我面临的直接问题),并告诉我要让它运行的确切步骤。 (我不介意你完全愚蠢,我是初学者:))
到目前为止我做了什么:
我不知道该怎么做...我应该把这些文件放在哪里,以便tpsdemo-1.2的代码可以访问它们?我已经尝试将它放在同一目录中,但这似乎需要使用带引号的#include "filename"
而不是带有尖括号的#include <filename>
,这在提供的代码中。如果我这样改变它,那么似乎我将不得不改变GLUT和Boost中的所有include语句(目前使用尖括号),这不是一个小任务。 (我真的不想修改太多的代码......)这样做的正确方法是什么?我在编译时尝试使用-Idir
标签,但这会遇到其他问题,虽然我不知道这个问题是否与GLUT / Boost有关(这就是我希望看到的原因)如果其他人可以让代码运行!)
答案 0 :(得分:1)
#include
中的楔形括号用于表示系统或框架级别上存在的文件。因此,永远不会通过将它们移动到“正确”的位置来获取它们,而是指定哪些目录被视为“系统”或“框架”级别。最终的确切方法取决于所使用的编译器,但所有主要编译器都能理解-I${PATH_TO_INCLUDE_DIRECTORY
命令行选项表示法。可以多次指定-I…
以指定多个目录。
使用wedge括号包括专门用于项目第三方的头文件和/或构成项目框架的头文件是一种很好的风格。对于属于项目模块的标题,应使用引号。