我想链接一个已安装的项目(而不是已安装的操作系统)的GLFW版本,以使我的项目更具可移植性。我试图直接同时使用premake和gcc,但是它们都失败了。
glfw目录位于project/libraries/glfw-3.2.1
我尝试通过以下方式构建glfw:
cd project/libraries/glfw-3.2.1
mkdir bin
cd bin
cmake ..
make all
尽管我确实找到了文件libglfw3.a
所以我尝试按以下步骤手动构建它:
g++ main.cpp -I libraries/glfw-3.2.1/include/ -L libraries/glfw-3.2.1/bin/src/libglfw3.a
但是由于找不到glfw对象,因此无法链接。即 我收到如下错误:
/usr/bin/ld: main.cpp:(.text+0x27): undefined reference to `glfwWindowHint'
答案 0 :(得分:1)
尝试
g++ main.cpp -I libraries/glfw-3.2.1/include -L libraries/glfw-3.2.1/bin/src -lglfw3
使用-L
告诉编译器库在哪里,但是应该使用-l链接