Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Opengl Freeglut程序编译,但运行时显示错误:libglut.so.3:无法打开共享对象文件_Opengl_Shared Libraries_Freeglut - Fatal编程技术网

Opengl Freeglut程序编译,但运行时显示错误:libglut.so.3:无法打开共享对象文件

Opengl Freeglut程序编译,但运行时显示错误:libglut.so.3:无法打开共享对象文件,opengl,shared-libraries,freeglut,Opengl,Shared Libraries,Freeglut,这是我的节目: #include </usr/local/include/GL/glut.h> int main(int argc, char **argv) { glutInit(&argc, argv); glutInitDisplayMode(GLUT_DEPTH | GLUT_DOUBLE | GLUT_RGBA); glutInitWindowPosition(100,100); glutInitWindowSize(320,32

这是我的节目:

#include </usr/local/include/GL/glut.h>

int main(int argc, char **argv) 
{
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_DEPTH | GLUT_DOUBLE | GLUT_RGBA);
    glutInitWindowPosition(100,100);
    glutInitWindowSize(320,320);
    glutCreateWindow("Lighthouse3D- GLUT Tutorial");
}
#包括
int main(int argc,字符**argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_深度| GLUT_双精度| GLUT_RGBA);
位置(100100);
glutInitWindowSize(320320);
glutCreateWindow(“Lighthouse 3D-GLUT教程”);
}
汇编时使用:

g++-lglut-L/usr/local/lib/-o start start.cpp/开始

错误显示:

/开始:加载共享时出错 库:libglut.so.3:无法打开 共享对象文件:没有此类文件或 目录

文件已存在

bashprompt>定位libglut.so.3
/usr/local/lib/libglut.so.3
/usr/local/lib/libglut.so.3.9.0

还尝试:

LD_RUN_PATH=“/usr/local/lib/”
g++-lglut-LLIBDIR-o start.cpp/开始 没有运气

这些是安装时显示的消息(如果有帮助):

root@Nav:/home/Nav/freeglut-2.6.0# 在src中进行安装进行安装
make[1]:输入目录
/home/Nav/freeglut-2.6.0/src'
make[2]:进入目录
/home/Nav/freeglut-2.6.0/src'测试 -z“/usr/local/lib”| |/bin/mkdir-p“/usr/local/lib”/bin/sh../libtool --mode=install/usr/bin/install-c'libglut.la' “/usr/local/lib/libglut.la”
/usr/bin/install-c .libs/libglut.so.3.9.0 /usr/local/lib/libglut.so.3.9.0(cd /usr/local/lib&{ln-s-f libglut.so.3.9.0 libglut.so.3 | |{rm -f libglut.so.3&&ln-s libglut.so.3.9.0 libglut.so.3;};})
(cd/usr/local/lib&{ln-s-f) libglut.so.3.9.0 libglut.so | |{rm-f libglut.so&&ln-s libglut.so.3.9.0 libglut.so;};})/usr/bin/install -c.libs/libglut.lai/usr/local/lib/libglut.la
/usr/bin/install-c.libs/libglut.a /usr/local/lib/libglut.a chmod 644 /usr/local/lib/libglut.a ranlib /usr/local/lib/libglut.a
PATH=“$PATH:/sbin”ldconfig-n /usr/local/lib
----------------------------------------------------------------------库已安装在:
/usr/local/lib,如果发生 要链接到已安装的 给定目录中的库, LIBDIR,您必须使用libtool, 并指定文件的完整路径名 或使用
-LLIBDIR'标志
在链接过程中,至少执行以下操作之一:
以下内容:
-将LIBDIR添加到
LD_LIBRARY_PATH'环境变量 执行期间
-将LIBDIR添加到
LD_RUN_PATH'环境变量
链接期间
-使用
-Wl,--rpath-Wl,LIBDIR'链接器标志
-让系统管理员将LIBDIR添加到“/etc/ld.so.conf”
请参阅任何操作系统文档 有关共享库的更多信息 信息,如ld(1)和 ld.so(8)手册页


您的
LD\u RUN\u PATH
尝试非常接近,但应该是
LD\u LIBRARY\u PATH

export LD_LIBRARY_PATH=/usr/local/lib
./start
此安装程序提示也很方便:

让系统管理员将LIBDIR添加到“/etc/ld.so.conf”


如果你这样做了,你就不需要做那件事了!非常感谢你!您必须在
glutCreateWindow()
之后调用
glutMainLoop()
,否则程序将在窗口出现之前退出。