我正在尝试使用freeglut2在OpenGL中渲染文本。当我包含以下标题时,
#include <freetype2/ft2build.h>
它出现以下错误:
/usr/local/include/freetype2/ft2build.h:37:38: fatal error: freetype/config/ftheader.h: No such file or directory
但是当我去/usr/local/include/freetype2/freetype/config
时,我找到了文件ftheader.h。
请帮我弄清问题。谢谢。
我去了this,但没有任何效果。
答案 0 :(得分:5)
您的编译器在/usr/local/include
中搜索包含,因此当您执行以下操作时:
#include <freetype2/ft2build.h>
找到/usr/local/include/freetype2/ft2build.h
但此文件尝试包含freetype/config/ftheader.h
且没有
/usr/local/include/freetype/config/ftheader.h
但
/usr/local/include/freetyp2/freetype/config/ftheader.h
因此,您应将-I/usr/local/include/freetyp2
传递给编译器并执行
#include <ft2build.h>
是正确的。
如果您的系统支持它 - 使用pkg-config
实用程序,它可以提供所有编译标记,例如:
$ pkg-config --cflags freetype2
-I/usr/include/freetype2
$ pkg-config --libs freetype2
-lfreetype
答案 1 :(得分:2)
阅读本文档:http://freetype.org/freetype2/docs/tutorial/step1.html#section-1
您需要将/ usr / local / include / freetype2添加到包含路径。
然后将ft2build.h包含在:
中#include <ft2build.h>
然后当ft2build.h包含freetype / config / ftheader.h时,它将在include路径中查找freetype2目录并找到它。