花费了几乎一个下午和晚上对opengl的Glut进行研究,在windows下的qt内置有glut.h,但在mint上的linux系统缺少这方面,在研究了apt-get install后发现并不是那么容易就能完成安装,因此尝试过程中留意到一份文件是直接安装,但follow一部分步骤后,发现这样是RED HaT的安装方法,rpm,pm等在ubuntu中必须通过Alien软件将rpm转换为deb包,而又研究了一下alien的使用方法后,发现作者提供的并不能支持,原因在于该安装包是i386处理器,与我的系统并不符合,因此再三衡量后,通过google翻墙在opengl官网上找到glut的3.7下载,下载过后发现对于该类型的文件安装还是十分陌生,再三找了资料后,找到一系列安装方式,如:
1. 安装编译工具:$ sudo apt-get install build-essential
2. 推荐将源码包放在/usr/local/src目录下
3. 进入/usr/local/src目录,解压源码包
4. 进入源码目录,用ls命令产看目录中的文件
1). 一般情况下,里面有个configure文件,则运行命令:
配置:$ sudo ./configure
(或者推荐1:$ sudo ./configure —prefix=/usr/local/filename/)
(或者推荐2:$ sudo ./configure —prefix=/opt/filename/)
编译:$ make
安装:$ sudo make install
2). 如果只有Makefile文件,则运行命令:
编译:$ make
安装:$ sudo make install
3). 如果只是Imake文件,则运行命令:
配置:$ xmkmf
编译:$ make
安装:$ sudo make install
5. 卸载软件:$ dpkg -r filename.deb
6. 清除编译过程中产生的临时文件:$ make clean
7. 清除配置过程中产生的文件:$ make distclean (谨用)
8. 卸载软件时,进入源码文件目录:$ make uninstall
二。deb包
方法一:直接双击安装
方法二:命令安装
1. 安装dpkg:$ sudo apt-get install dpkg
2. 安装软件:$ dpkg -i filename.deb
3. 卸载软件:$ dpkg -r filename.deb
三。rpm包
先安装rpm和alien:$ sudo apt-get install rpm alien
方法一:安装:./alien -i filename.rpm
方法二:1. 使用alien将rpm包转换为deb包:$ alien -d filename.rpm
2. 安装:$ sudo dpkg -i filename.deb
3. 卸载:$ sudo dpkg -r filename.deb
四。bin包
1. 更改执行权限:$ sudo chmod a+x filename.bin
2. 安装:$ ./filename.bin
五。pl包
1. 安装perl:$ sudo apt-get install perl
2. 安装软件:$ perl filename.pl
六。sh包或bash包
1. 更改权限:$ sudo chmod a+x filename.sh filename.bash
2. 安装软件:$ ./filename.sh (或 $ ./filename.bash)
七。py包
1. 安装python:$ sudo apt-get install python
2. 安装软件:$ python filename.py
八。二进制包
1. 不用安装,将软件放于某目录下。
2. 直接运行软件:$ ./filename
经过老外的指点后信心满满!!!自己读glut-3.7中的Linux包还看得糊里糊涂,最后make后居然没有库文件,但是经过老外的步骤后,终于生成了库,并进行了一一链接,但最后一试还是目有能成功!!!还是undefined reference这样的错误。。。。。
第二天跑去问大师,大师指出了问题的所在,先看看该函数接口的头文件,发现该函数对应的是glu.h,而通过find命令找到其位置不在/usr/lib 中,因此在pro文件内,
必须给出其文件位置,即
LIBS += -L /usr/lib/x86_64-linux-gnu/ \
-lglut \
1. 安装编译工具:$ sudo apt-get install build-essential
2. 推荐将源码包放在/usr/local/src目录下
3. 进入/usr/local/src目录,解压源码包
4. 进入源码目录,用ls命令产看目录中的文件
1). 一般情况下,里面有个configure文件,则运行命令:
配置:$ sudo ./configure
(或者推荐1:$ sudo ./configure —prefix=/usr/local/filename/)
(或者推荐2:$ sudo ./configure —prefix=/opt/filename/)
编译:$ make
安装:$ sudo make install
2). 如果只有Makefile文件,则运行命令:
编译:$ make
安装:$ sudo make install
3). 如果只是Imake文件,则运行命令:
配置:$ xmkmf
编译:$ make
安装:$ sudo make install
5. 卸载软件:$ dpkg -r filename.deb
6. 清除编译过程中产生的临时文件:$ make clean
7. 清除配置过程中产生的文件:$ make distclean (谨用)
8. 卸载软件时,进入源码文件目录:$ make uninstall
二。deb包
方法一:直接双击安装
方法二:命令安装
1. 安装dpkg:$ sudo apt-get install dpkg
2. 安装软件:$ dpkg -i filename.deb
3. 卸载软件:$ dpkg -r filename.deb
三。rpm包
先安装rpm和alien:$ sudo apt-get install rpm alien
方法一:安装:./alien -i filename.rpm
方法二:1. 使用alien将rpm包转换为deb包:$ alien -d filename.rpm
2. 安装:$ sudo dpkg -i filename.deb
3. 卸载:$ sudo dpkg -r filename.deb
四。bin包
1. 更改执行权限:$ sudo chmod a+x filename.bin
2. 安装:$ ./filename.bin
五。pl包
1. 安装perl:$ sudo apt-get install perl
2. 安装软件:$ perl filename.pl
六。sh包或bash包
1. 更改权限:$ sudo chmod a+x filename.sh filename.bash
2. 安装软件:$ ./filename.sh (或 $ ./filename.bash)
七。py包
1. 安装python:$ sudo apt-get install python
2. 安装软件:$ python filename.py
八。二进制包
1. 不用安装,将软件放于某目录下。
2. 直接运行软件:$ ./filename
现在对于该类型的库文件安装有一点小小心得,首先进入查找readme,认真阅读,对于下载前也要清除的区分到底是windows系统还是类unix系统,在Linux系统安装时,先进入该Linux文件夹认真阅读安装步骤,无非是make等,遇到编译错误,仔细针对错误认真分析,在baidu上查找不了该类型错误后,必须翻墙去google中查找,只要是安装比较久远的库文件等, 大多数问题都能在这里找到解决,因为遇到这样的问题并不只是你一个人,站在各种大神的肩膀上,最终一定可以找到解决方法。
最后在google上找到完整的安装步骤:
cd /usr/src tar -xvzf glut-3.7.tar.gz cd glut-3.7 Read the file: README.linux cd linux READ the file: README cp Glut.cf .. cd .. Edit Glut.cf: remove any Mesa references. Replace any -lMesaGL -lMesaGLU with -lGL -lGLU if needed. In particular, replace: OPENGL = $(TOP)/../lib/libMesaGL.so GLU = $(TOP)/../lib/libMesaGLU.so with: OPENGL = -lGL GLU = -lGLU ./mkmkfiles.imake cd lib/glut cp /usr/src/glut-3.7/linux/Makefile . Edit the Makefile: remove any Mesa references. Replace any -lMesaGL -lMesaGLU with -lGL -lGLU if needed. In particular, replace: OPENGL = $(TOP)/../lib/libMesaGL.so GLU = $(TOP)/../lib/libMesaGLU.so with: OPENGL = -lGL GLU = -lGLU make ln -s libglut.so.3.7 libglut.so ln -s libglut.so.3.7 libglut.so.3 cp -d libglut.* /usr/lib cd .. cd gle # make a shared lib for libgle make gcc -shared -o libgle.so.3.7 *.o ln -s libgle.so.3.7 libgle.so ln -s libgle.so.3.7 libgle.so.3 cp -d libgle.* /usr/lib cd .. cd mui # make a shared lib for libmui make gcc -shared -o libmui.so.3.7 *.o ln -s libmui.so.3.7 libmui.so ln -s libmui.so.3.7 libmui.so.3 cp -d libmui.* /usr/lib # Install the GLUT manual pages (not included with MesaDemos) cd /usr/src/glut-3.7 make SUBDIRS=man Makefile cd man/glut make install.man ldconfig cd ../../progs/demos/ideas # edit the Makefile, change OPENGL = -lGL and GLU = -lGLU make ./ideas # test compiling some demos # take a look at which libraries have to be linked (-lX11 ...) in # the Makefiles. Qt's tmake program available at www.troll.no # is a quick way to make a Makefile but you have to edit it # and add the -l needed.
经过老外的指点后信心满满!!!自己读glut-3.7中的Linux包还看得糊里糊涂,最后make后居然没有库文件,但是经过老外的步骤后,终于生成了库,并进行了一一链接,但最后一试还是目有能成功!!!还是undefined reference这样的错误。。。。。
第二天跑去问大师,大师指出了问题的所在,先看看该函数接口的头文件,发现该函数对应的是glu.h,而通过find命令找到其位置不在/usr/lib 中,因此在pro文件内,
必须给出其文件位置,即
LIBS += -L /usr/lib/x86_64-linux-gnu/ \
-lglut \
lGLU
由此以来glu开头的函数终于能够使用。。。。。。。。。。。。。。。
由此以来glu开头的函数终于能够使用。。。。。。。。。。。。。。。