私のプロジェクトディレクトリには、次のものがあります。
- ソースから glew をコンパイルした (make を実行した) ./external/glew
- ./external/glfw には、glfw もソースからコンパイルされています (make x11 を実行)
私の.cソースコードで:
#include <stdio.h>
#include <stdlib.h>
#include "external/glew/include/GL/glew.h"
#include "external/glfw/include/GL/glfw.h"
私はGCCを使用してコンパイルしようとしました:
gcc test1.c -o test1 -DGLEW_STATIC -L./external/glew/lib -lGLEW -lGLU -lGL \
-L./external/glfw/lib/x11 -lglfw
./external/glew/lib は libGLEW.a の場所で、./external/glfw/lib/x11 は libglfw.a の場所です。
エラーなしでコンパイルされます。しかし、次に ./test1 を実行しようとすると、次のようになります。
./test1: error while loading shared libraries: libGLEW.so.1.6: cannot
open shared object file: No such file or directory
glew と glfw を静的にコンパイルするにはどうすればよいですか?
EDIT 1助けてくれてありがとう。stackoverflow と古い nabble の人々の助けを借りて、静的にリンクされた GLFW と GLEW に何をする必要があるかを書き留めて、http: //www.phacks.net/static-compile-glfw-and-glew に置くことができました。 /