LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: liwenqiu

怎么用GCC4.1.1编译安装Qemu?[已解决]

[复制链接]
发表于 2007-5-18 07:39:09 | 显示全部楼层
Post by zhllg
请问这样做的原因是什么?
据我所知,package.keywords里的内容格式是
atom keywords...
比如
net-im/eva **
cross-mipsel-unknown-linux-gnu/binutils mips ~mips
只写atom是什么意思呢?

再者
package.keywords的作用是给缺少关键字的包,加上关键字
可是我们常用的x86和amd64的关键字,qemu都不缺啊
http://packages.gentoo.org/search/?sstring=qemu


因为同时要维护amd64和x86两个平台,这样的package.keywords可以两边通用阿。加上以后用的应该是~x86或者~amd64吧, 没有仔细看过文档。
回复 支持 反对

使用道具 举报

发表于 2007-5-18 07:56:23 | 显示全部楼层
为什么一定要使用GCC4.1?维护者用3.3.6还是有他们的理由的吧?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-18 09:57:11 | 显示全部楼层
Post by zhllg
$ gcc-config -l
[1] i686-pc-linux-gnu-3.4.6
[2] i686-pc-linux-gnu-3.4.6-hardened
[3] i686-pc-linux-gnu-3.4.6-hardenednopie
[4] i686-pc-linux-gnu-3.4.6-hardenednopiessp
[5] i686-pc-linux-gnu-3.4.6-hardenednossp
[6] i686-pc-linux-gnu-4.1.2 *
[7] mipsel-unknown-linux-gnu-4.1.2 *

然后
sudo su -
gcc-config 1
source /etc/profile
emerge qemu-softmmu ....
gcc-config 6
source /etc/profle
exit

我的gcc-config -l
[1] i686-pc-linux-gnu-4.1.1 *
回复 支持 反对

使用道具 举报

发表于 2007-5-18 11:34:47 | 显示全部楼层
那你应该emerge一个gcc-3.x.x
否则是无法编译的
回复 支持 反对

使用道具 举报

发表于 2007-5-18 12:29:37 | 显示全部楼层
* qemu requires gcc-3 in order to build and work correctly
* please compile it switching to gcc-3.
* We are aware that qemu can guess a gcc-3 but this feature
* could be harmful.

这里已经讲得很清楚了,什么原因、怎么做一看就知道了,这种问题还问什么呢?

不要说看不懂英文~~
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-18 12:58:25 | 显示全部楼层
作者: zhllg
$ gcc-config -l
[1] i686-pc-linux-gnu-3.4.6
[2] i686-pc-linux-gnu-3.4.6-hardened
[3] i686-pc-linux-gnu-3.4.6-hardenednopie
[4] i686-pc-linux-gnu-3.4.6-hardenednopiessp
[5] i686-pc-linux-gnu-3.4.6-hardenednossp
[6] i686-pc-linux-gnu-4.1.2 *
[7] mipsel-unknown-linux-gnu-4.1.2 *

然后
sudo su -
gcc-config 1
source /etc/profile
emerge qemu-softmmu ....
gcc-config 6
source /etc/profle
exit
谢谢zhllg的帮助,已经成功编译出来了,又学到了一点东西,呵呵
回复 支持 反对

使用道具 举报

发表于 2007-5-18 16:04:55 | 显示全部楼层
qemu目前版本(0.9)是不能用gcc4.x编译出可用版本的。因为qemu使用了动态转换技术来进行目标系统指令到宿主系统指令的翻译。但qemu的实现对中间目标码生成有版本依赖,它的辅助工具只能对gcc-3.x才可以可靠提取中间目标码并生成最终代码。
对gcc-4.x使用这个方法是会出问题的。
之前的qemu 0.7.x和 0.8有人出过gcc-4.x的编译补丁,但0.9版的还没有。这个补丁是把用gcc-3.x的中间目标码提取出来生成最终代码的。
回复 支持 反对

使用道具 举报

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

本版积分规则

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