Chinaunix首页 | 论坛 | 博客
  • 博客访问: 151266
  • 博文数量: 4
  • 博客积分: 1410
  • 博客等级: 上尉
  • 技术积分: 405
  • 用 户 组: 普通用户
  • 注册时间: 2006-01-05 11:35
文章分类

全部博文(4)

文章存档

2008年(4)

我的朋友

分类: LINUX

2008-12-21 16:30:14

声明此文章不可用于商业用途,转载附上链接地址。
http://blog.chinaunix.net/u/12446/showart.php?id=1732685

  很久没有写blog了,因为桌面应用软件的安装已经很长时间没有难倒我了,一般碰到问题也很快解决了,但在fedora 10下安装amarok花了我好4、5个小时,惭愧阿。。。
  
  首先amarok确实是一个不错的音乐播放软件,以前都是玩debian上的安装xmms、BMP、mplayer,既然有新软件而且声誉不错,我就狠下心准备装这个,linux下工作没音乐相伴怎么行了,废话不多说了,下面就开始安装之旅。

说明:由于MP3的版权问题,fedora无法将支持mp3格式的amarok放到fedora的源上,所以我们得自己编译安装amarok。
参考网站:

1、卸载原来的amarok,运行命令yum erase amarok

2、安装设置新的yum源,
Fedora 8, 9, and 10做如下动作
   
rpm -Uvh
  
  rpm -Uvh
  然后就安装这个包,运行这个命令yum install gstreamer-plugins-ugly
 
Amarok 2 (使用 phonon-backend-gstreamer):
安装这个包:yum install gstreamer-plugins-ugly

其他版本的细节主要参考如下网站:



3、下载源代码
 
  解压:tar xjf amarok-x.y.z.tar.bz2
  进入目录:cd amarok-2.0
  编译安装:cmake -DCMAKE_INSTALL_PREFIX=`kde4-config --prefix`
             
make
             
sudo "make install"
  当执行cmake生成 Makefile的这一步,可能会出现各种错误,这里我不可能把所有的列出来,因为我不是神仙,主要靠自己的猜测,还可以看cmake的log文件 CMakeFiles/CMakeError.log

以下是我机子上安装的mysql的相关包(我已经分辨不出那些需要,那些不需要,自己猜吧):
mysql.i386                                                                                 
mysql++.i386                                                                              
mysql++-devel.i386                                                                        
mysql-devel.i386          
mysql-embedded.i386
mysql-embedded-devel.i386    
mysql-libs.i386                     
mysql-server.i386                   
qt-mysql.i386
因为amarok要用到mysql的库,还是嵌入式的,很大一部分时间都去解决下面这个错误了:
错误显示:MySQL Embedded not found
要求安装:mysqld

我晕,该装的都装上了,感觉不该装的也装上了,怎么弄都过不去,接下来只好去看cmake的脚本了。

检测mysql的文件是这个cmake/modules/FindMySQLAmarok.cmake
第51行有如下代码:
51 check_cxx_source_compiles( "#if (defined(_WIN32) || defined(_WIN64))\n#define __LCC__\n#endif\n#include \nint main() { int i    = MYSQL_OPT_USE_EMBEDDED_CONNECTION; }" HAVE_MYSQL_OPT_EMBEDDED_CONNECTION )
主要看
MYSQL_OPT_USE_EMBEDDED_CONNECTION这个变量在不在,然后设置HAVE_MYSQL_OPT_EMBEDDED_CONNECTION的值,但是我把嵌入式的包都装上了,cmake阶段还是过不去,然后我选择跳过这个变量直接过去,结果表明最后编译没有出现错误。

具体就是把后面if和endif(MYSQL_INCLUDE_DIR AND MYSQL_EMBEDDED_LIBRARIES AND HAVE_MYSQL_OPT_EMBEDDED_CONNECTION)红色全部去掉。
注:这样做我不知道以后会出现什么问题。

下面的包应该是必须的,都安装上吧
yum install libgpod-devel libmp4v2-devel libmtp-devel curl-devel libxml2-devel loudmouth-devel
yum install gettext-devel.i386
yum install kdebase-devel.i386
yum install libgcrypt-devel
.i386
yum install taglib-devel.i386

最后编译到后面时找不到
/usr/lib/libpcre.so和/usr/lib/libgif.so,我发现该装的都装了,那就建立两个符号链接吧,如下:
ln -s /usr/lib/libpcrecpp.so.0 /usr/lib/libpcre.so
ln -s /usr/lib/libgif.so.4 /usr/lib/libgif.so

中文乱码(这个别人已经有现成的了)
造成乱码的主要原因:
amarok 1.4之后已经抛弃了对UTF8以外所有的id3tag编码支持,一律采用UTF-8编码,这导致大量的中文歌曲在Amarok里显示为乱码(因为绝大部分的中文歌曲id3tag采用的是中文GB编码,而非UTF)。
为此,我们需要把中文编码的
id3tag改为UTF-8,这样才能使Amarok不出现中文的乱码。

操作如下:
wget
chmod +x mid3iconv
yum install
python-mutagen.noarch
find songs/ -type f -exec /root/mid3iconv -e GBK --remove-v1 {} +
脚本mid3iconv需要
python-mutagen库,其他应该不需要解释了吧。



  















阅读(2154) | 评论(1) | 转发(0) |
0

上一篇:slickedit 常用配置

下一篇:没有了

给主人留下些什么吧!~~

chinaunix网友2008-12-25 22:51:28

说明:由于MP3的版权问题,fedora无法将支持mp3格式的amarok放到fedora的源上,所以我们得自己编译安装amarok。 --- 错! yum info amarok 载入插件: fastestmirror, refresh-packagekit 已经提供的包 名称 : amarok 架构 : i386 版本 : 2.0 发行 : 2.fc10 大小 : 8.5 M Repo : updates 语法 : Media player 统一资源定位符: http://amarok.kde.org/ 许可证 : GPLv2+ 升级 : Amarok is a multimedia player with: - fresh playlist concept, : very fast to use, with drag and drop - plays al