在Linux RH9下安装mplayer很多ơ了Q以前都是以p|而告l,前两天终于装成功了,己感到庆q。大家以后安装的时候可以作Z个参考(有些地方我也是参考别人的Q?/P>
mplayer是linux下播N度最?正确安装了显卡驱?Q支持媒体格式最多的播放器之一 Q它几乎能播放所有的win媒体文gQ下面介l它的安装方法:
安装大前?
要编译这个Y?认你系l安装了相应的XFree86-devel,q有如果你要~译gui操作界面
(./configure --enable-gui),q请认你的pȝ有libpng,libpng-devel,gtk?
gtk-devel(要求版本大于1.2)q四个Y?可以?A >www.rpmfind.net扑ֈ相应的rpm?
Q这些包通过安装Gnome桌面可以获得Q?BR>1、在下蝲mplayer的最新版本及安装所需软g包的集合?BR>
2、升UgccQ?(必要,推荐gcc版本?.9.5?.2.x)
查你的gcc版本Q运行gcc -v看输出是多少Q如果是3.0以下的话Q则安装gcc3.0?
上(Ҏmplayer的官方说明,3.0以下的gcc可以?/configre --disable-gcc-checking
参数~译Q但可能不稳定)Q安装gcc3的方法是Q进入gcc3目录Q运行rpm -ivh *.rpm
--nodepsQ全部百分百安装后,开一个终端窗口,q行mv /usr/bin/gcc /usr/bin/gcc2
和mv /usr/bin/gcc3 /usr/bin/gccQ再q行gcc -vQ看输出是否?.0.2Q如果是Q则ok Q不是,则检查安装步骤?nbsp;
3、编译安装mplayerQ?
tar vxf MPlayer-****.tarQcd MPlayer-****Q?/configure Q如果你?
要gui的操作界面,则换用这个命?/configrue --enable-guiQ但gq个版本的gui~?
译有错,我和linuxCN都无法成功,pre4版本则没问题Q,makeQmake
installQ都成功q行一下mplayerQ这是ؓ了让它在家目录下建立.mplayerq个配置目录
(.mplayer为隐藏目?用ls -a指o可以看见,cd ~/.mplayer指o可以q入)Q好q行下一
步操作)
./configure --prefix=/usr/local --enable-gui --enable-live --enable-menu --enable-freetype --enable-fontconfig --enable-win32 --enable-dshow --enable-real --enable-divx4linux --enable-xvid --disable-arts --language=zh_CN --enable-dynamic-plugins --with-codecsdir=/usr/local/lib/codecs --with-win32libdir=/usr/local/lib/codecs --with-reallibdir=/usr/local/lib/codecs --with-livelibdir=/usr/local/lib/live --with-freetype-config=/usr/bin/freetype-config
重要参数说明Q?
--prefix= 安装路径?usr/local
--enable-gui 使用囑Ş界面Qmplayer有命令行和图形界面两U运行方?
--enable-live 使用媒体支?
--enable-freetype 字幕字体可以使用ttf字体
--enable-win32 可以使用win32?dll格式的解码器
--enable-real 支持real格式
--language=zh_CN mplayer界面的格式ؓ中文
--with-codecsdir=/usr/local/lib/codecs 指定解码器搜索\?
--with-win32libdir=/usr/local/lib/codecs 指定win32解码器搜索\?
--with-reallibdir=/usr/local/lib/codecs 指定real解码器搜索\?
--with-livelibdir=/usr/local/lib/live 指定live解码器搜索\?
现在使用
make
自动~译软gQ可以去吃饭Q回来再?nbsp;
make install //安装
q行mplayer
./mplayer
4、拷贝配|文?Q注意:下面q个etc目录是上一步中解压出来的MPlayer-***?录下的,?etcQ?
cp etc/codecs.conf ~/.mplayer
cp etc/example.conf ~/.mplayer/config
5、安装font和skin:Q如果你选择?/configure --enable-gui那才需要skinQ否则skin
不用安装Q?
q入自己的home目录Q显C隐藏文Ӟq入.mplayer文g夹,?个徏文g夹:font?
Skin?/P>
下蝲font文gQ(mplayer官方|站上有Q拷入到font内拷贝simsun.ttf到~/.mplayer目录?
拯Blue皮肤目录?usr/local/share/mplayer/Skins目录?BR>
6、运行方?
两种Q(1Qmplayer /路径/要播攄媒体文g名;Q?Qgmplayer(只有?/configure
--enable-gui~译的这个命令才有效)
现在可以q行mplayer和gmplayer了。但是gmplayer字幕出现问题Q提C找不到
字幕字体文g。按照提C拷贝simsun.ttfQ其他字体文件也可以Q到~/.mplayer目录中(Ҏ件名Q?BR>
7、关于~/.mplayer/config文g的一些配|说?
vo=xv(选择默认的播放模式,xv模式是支持显卡硬加速功能的模式Q对cpu的占用很,
推荐Q更多的昄模式可以用命令mplayer -vo help看,其中的vesa模式可以在不启动
xwin界面时播放,有点象当qDOS下的金山影霸)
ao=ossQ选择声音的播放模式,oss是兼Ҏ最好的播放模式Q推荐;你也可以试试sdl?
式)
fs=yesQ全屏模式,yes的话默认以全屏播放,no或前面加#h释掉q行的话则默认是1
Q?播放模式Q?
zoom=yesQ即时改变电q面大,yes的话则可以用鼠标随意播攄面拉大拉,no
的话不能Q?
gui = yesQ默认是囑Ş化操作界面,q需要你先前?/configure --enable-gui来编?
Q否则的话就yes也没有gui操作界面Q?
skin = defaultQ设|默认的skinQ将{号双的值换成skin所攄录就可以讄惌?
skin为默认了Q这个参数在用gui操作界面才有效)
cache = 8192Q默认的播放~存大小Q如果机器内存够大,则将它加大一点,如果不是?
大,譬如128以下Q还是用默认的算了)
framedrop = yesQ允许蟩帧,如果你的机器CPU速度非常非常慢的话请这个yesQ默?
是no或前面加#号将q行止Q对?66MHZ以上的机器,都设成no或前面加#P
其他讄用默认就?nbsp;?BR>
需要用到的软g包有两个Qglut 和tmake,分别可以从以下两个网址下蝲Q?BR>http://www.opengl.org/resources/libraries/glut/glut-3.7.tar.gz
ftp://ftp.trolltech.com/freebies/tmake/tmake-1.8.tar.gz
下蝲后的文g假设都放?usr/src?/P>
首先是安装glut库,以下是从www.linux.com扑ֈ的编译glut库的手册?/P>
Install GLUT 3.7 Distribution (optional)
If you installed the MesaDemos/MesaLib package, then you have already installed GLUT 3.7 since it is included with MesaDemos. However, you may be interested in installing the GLUT
manpages and you can skip right to the "Install GLUT manual pages", below ...
Installing GLUT is a bit tricky. I'm not too familiar with imake, the program that it uses to manage the Makefiles, and didn't quite see how to get GLUT to install to where I wanted it (/usr/lib,
but MesaDemos will do this without any trouble though). It can be done manually anyhow:
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.
ideas如果q行成功的话Q说明glut已经可以用了,q时可以include/GL下的glut{头文g复制?usr/include中去?/P>
上面的几步中,下蝲的glut包放?usr/src目录下,如果攑֜其他目录下,?usr/src改ؓ相应的目录即可?BR>此外应该注意的是两个Makefile文g的修?BR> ?nbsp;
· OPENGL = $(TOP)/../lib/libMesaGL.so
GLU = $(TOP)/../lib/libMesaGLU.so
?BR> OPENGL = -lGL
GLU = -lGLU
因ؓ所指定的目录中没有libMesaGL.so和libMesaGLU.so?/P>
之后是tmake的配|,后面我们可以用它来生成pro工程文g和makefile文g?/P>
先将下蝲的tmake解压~,tar -zxvf tmake-1.8.tar.gz
得到tmake-1.8目录,之后讄两个环境变量QPATH和TMAKEPATH
PATH=$PATH:/usr/src/tmake-1.8/bin
export PATH
TMAKEPATH=/usr/src/tmake-1.8/lib/linux-g++
export TMAKEPATH
新徏一个测试目录testQ将glut-3.7目录下的progs/redbook目录下的hello.c复制到test目录?/P>
之后生成一个pro文gQprogen -o hello.pro
然后生成makefile文gQtmake hello.pro -o Makefile
~辑生成的Makefile文gQ在加蝲动态连接库的行里面加入 -lglut -lXi -lXmu
保存Qmake?/P>
./hello 可以看到q行l果可以了?/P>
前些天在Redhat Linux弄过OpenGL的开发环境,那时是自q译的glut库,然后用tmake~写makefileQ感觉很方便?/P>
五一期间装了个FreeBSDQ?.3 releaseQKDE桌面Q感觉还是不错的Q用多了感觉囑Ş界面都快赶上WindowsXP了?/P>
q是入正题吧。我惌试glutQpkg_info|grep glut
发现有个libglut.6...的,是支持OpenGL的,不知道是不是我想要的glut.
查找libglut.so,发现?usr/X11R6/lib里面了,版本3Q对头?/P>
把在linux里用q的tmakeQ和opengl redbook源码拷了q来Q设|好tmake相关的环境变?/P>
当然最重要的是改相应的tmake.conf文g了,glut相关的库加进?/P>
新徏目录testQ将hello.c拯去,
progen -o hello.pro
tmake hello.pro "CONFIG+=opengl" -o Makefile
可以先检查一下生成的MakefileQ我没有发现问题
makeQ成功,生成可执行的hello
./hello出现一新窗口,本来应该高兴的,却有点不对劲Q窗口上什么也没话
而且是白色背景,应该是黑色背景然后画一个白色的正方形?/P>
google了好久,l于发现有h跟我遇到q同L问题
解决的方法很?link的时候加?-pthread选项,我先改了一下生成的MakefileQ加上了Qpthread
makeQ也通过了,看来问题有可能解决了
./hello l于正确的结果出C