无法打开手动编译的共享对象文件

无法打开手动编译的共享对象文件

我的 LD_LIBRARY_PATH 设置为 /usr/local/lib

blahblah@test:~$ ls -al /usr/local/lib
total 1392
drwxr-xr-x  5 root root    4096  .
drwxr-xr-x 10 root root    4096  ..
lrwxrwxrwx  1 root root      12  libglfw.so -> libglfw.so.3
lrwxrwxrwx  1 root root      14  libglfw.so.3 -> libglfw.so.3.3
-rw-r--r--  1 root root  335888  libglfw.so.3.3
lrwxrwxrwx  1 root root      23  libsfml-graphics.so -> libsfml-graphics.so.2.5
lrwxrwxrwx  1 root root      25  libsfml-graphics.so.2.5 -> libsfml-graphics.so.2.5.1
-rw-r--r--  1 root root  475800  libsfml-graphics.so.2.5.1

当我使用 SFML 库时,它运行良好。但是当使用 GLFW 时,编译器返回错误消息。

error while loading shared libraries: libglfw.so.3: cannot open shared object file: No such file or directory

如果我像下面这样设置 LD_LIBRARY_PATH 来运行程序,它又可以正常工作了。我不知道这里发生了什么。

blahblah@test:~$ LD_LIBRARY_PATH=/usr/local/lib ./my_program

相关内容