0
私は自分のopenglコードをコンパイルしていますが、これを削除するにはこのerror.howに直面していますか?エラーが未定義の `FTExtrudeFont :: FTExtrudeFont(char const *) 'への参照
all: sample2D
sample2D: Sample_GL3_2D.cpp glad.c
g++ -o sample2D Sample_GL3_2D.cpp glad.c -lGL -lglfw -ldl -std=c++11
clean:
rm sample2D
これはMakefileの の私の内容と
const char* fontfile = "Monaco.ttf";
GL3Font.font = new FTExtrudeFont(fontfile); // 3D extrude style rendering
if(GL3Font.font->Error())
{
cout << "Error: Could not load font `" << fontfile << "'" << endl;
glfwTerminate();
exit(EXIT_FAILURE);
}
// Create and compile our GLSL program from the font shaders
fontProgramID = LoadShaders("fontrender.vert", "fontrender.frag");
GLint fontVertexCoordAttrib, fontVertexNormalAttrib, fontVertexOffsetUniform;
fontVertexCoordAttrib = glGetAttribLocation(fontProgramID, "vertexPosition");
fontVertexNormalAttrib = glGetAttribLocation(fontProgramID, "vertexNormal");
fontVertexOffsetUniform = glGetUniformLocation(fontProgramID, "pen");
GL3Font.fontMatrixID = glGetUniformLocation(fontProgramID, "MVP");
GL3Font.fontColorID = glGetUniformLocation(fontProgramID, "fontColor");
GL3Font.font->ShaderLocations(fontVertexCoordAttrib, fontVertexNormalAttrib, fontVertexOffsetUniform);
GL3Font.font->FaceSize(1);
GL3Font.font->Depth(0);
GL3Font.font->Outset(0, 0);
GL3Font.font->CharMap(ft_encoding_unicode);
ありがとう今私は、エラー 'シンボル検索エラー直面しています:/usr/local/lib/libftgl.so.2:未定義のシンボル:glad_glGenTextures' – nike
はあなた、シンボルの概念を理解LIBS、彼らはどのようにか解決されましたか?そうでなければ、私はそれを読んでお勧めします。 libのシンボルは、後にリンクされたコードで解決する必要があります。 glfwはGLを使用するので、リンクする必要があります。あなたが持っているg ++ラインは、実際には2つのステージです。ソースコードをコンパイルし、オブジェクトファイルをリンクします。 TBH私は、ソースファイルでlib依存関係を解決しようとしたことがありませんので、ライブラリにglad.cをコンパイルし、ftglの後にリンクする標準パターンに従います。 –