【发布时间】:2018-10-01 05:23:55
【问题描述】:
我正在为我的 opengl 项目链接 glfw3 库。我尝试在 Mac 和 Linux 环境中编译和运行我的代码。在 Linux 中,glfw3 库被存储为 libglfw.so.3.2,而在 Mac 中,它被存储为 libglfw.3.2.dylib。
为了在 Mac 中为 g++ 链接这个库,我只需要使用以下代码
g++ -o Animation glad.o Animation.o -L/usr/local/lib -lglfw
在 Linux 中,我必须包含 -ldl,否则会打印错误。
g++ -o Animation glad.o Animation.o -L/usr/lib/x86_64-linux-gnu -ldl -lglfw
为什么-ldl 是.so 文件的必要条件,而不是.dylib 文件的必要条件?提前致谢!
【问题讨论】:
标签: linker g++ shared-libraries glfw dylib