LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1055|回复: 11

[已解决]疑惑:emerge mplayer怎么要安装gcc3.3.6?

[复制链接]
发表于 2007-5-16 09:49:44 | 显示全部楼层 |阅读模式
今天emerge mplayer
所用的USE为:
echo media-video/mplayer a52 aac ac3 dts dvdread quicktime live mad mp2 mp3 matroska sdl srt gtk dvd ggi mmx mmxext opengl oss real sse sse2 theora truetype win32codecs xv x86 xvid >> /etc/portage/package.use

结果在emerge的时候居然附带也安装了gcc3.3.6
怎么会这样阿?

问题1:我原来已经将gcc升级到4.1.2了,这以后在emerge安装软件的时候,到底会使用哪个版本的gcc呢?

问题2:能否避免emerge mplayer的时候避免安装gcc3.3.6?同时保持安装后的功能正常。

哪位遇到过这类问题,如何解决?

多谢相助~~
 楼主| 发表于 2007-5-16 10:25:39 | 显示全部楼层
自己来部分解答一下:
问题1:可以通过gcc-config -l来显示当前使用的是哪个版本的gcc,用gcc-config XXX(前一条命令显示的信息)来设置需要使用哪个版本的gcc。

问题2:尚未解决
回复 支持 反对

使用道具 举报

发表于 2007-5-16 11:11:56 | 显示全部楼层
很简单!
把gcc锁定在4.1.2版本。
解决方法:
编辑 /etc/portage/package.mask
添加:<sys-devel/gcc-4.1.1-r3  //对应你现在使用的版本,我的是gcc-4.1.1-r3!所以这样写,当然你这样写也不会有问题。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-16 11:54:49 | 显示全部楼层
多谢相助~~
下次再安装的时候试一下。
回复 支持 反对

使用道具 举报

发表于 2007-5-16 18:02:00 | 显示全部楼层
其实完全没有必要理会,你注意一下3.3.6的安装目录,是单独的3.3.6目录,而不是gcc目录,所以对系统调用gcc的编译版本完全没有影响。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-16 19:49:17 | 显示全部楼层
哦,原来是这样,谢谢~~。
主要是疑惑,安装这个干什么
难道需要该版本gcc的什么东西
回复 支持 反对

使用道具 举报

发表于 2007-5-16 20:06:14 | 显示全部楼层
Post by 小楼东风
其实完全没有必要理会,你注意一下3.3.6的安装目录,是单独的3.3.6目录,而不是gcc目录,所以对系统调用gcc的编译版本完全没有影响。


楼上的仁兄说话可不能太片面咯!
GCC3.3.6版可是不支持-march=pentium-m等参数哦!

注:
"-march"选项表示为特定的cpu类型编译二进制代码"-march"
pentium-m是迅驰I/II代笔记本的cpu,而gentoo默认指定的参数为-march=i686

假如你和我一样是使用迅驰本本的话就会编译失败!
回复 支持 反对

使用道具 举报

发表于 2007-5-16 20:17:04 | 显示全部楼层
Post by forget1214
楼上的仁兄说话可不能太片面咯!
GCC3.3.6版可是不支持-march=pentium-m等参数哦!

是啊
因为我们不用它,所以它支不支持没有影响啊

要知道谁依赖它,可以加个-t参数,这样依赖关系会以树状显示
回复 支持 反对

使用道具 举报

发表于 2007-5-16 20:21:28 | 显示全部楼层
Post by forget1214

"-march"选项表示为特定的cpu类型编译二进制代码"-march"
pentium-m是迅驰I/II代笔记本的cpu,而gentoo默认指定的参数为-march=i686

假如你和我一样是使用迅驰本本的话就会编译失败!

用gentoo的应该没有人不了解-march的作用
用了-march=i686也不会编译失败。相反,用了它可以保证编译出的软件一定可以运行,除非你的cpu是pentium或pentium之前的型号。
回复 支持 反对

使用道具 举报

发表于 2007-5-17 10:16:28 | 显示全部楼层
Post by zhllg
用gentoo的应该没有人不了解-march的作用
用了-march=i686也不会编译失败。相反,用了它可以保证编译出的软件一定可以运行,除非你的cpu是pentium或pentium之前的型号。


呵呵,不知道是你理解错误,还是我写的不明白!
我说的是官方默认的使用-march=i686,这样编译软件不会出问题。
而我是迅驰本本,用了-march=pentium-m,所以才会失败!
因为gcc3.3.6不支持这个参数。
看来我的表达能力有待提高了!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表