LinuxSir.cn,穿越时空的Linuxsir!

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

(已解决)威盛via c3处理器安装gentoo问题

[复制链接]
发表于 2009-10-16 22:06:27 | 显示全部楼层 |阅读模式
最近弄了台低功耗的mini itx主机,处理器是威盛via c3 800采用samuel 2核心,属于586不支持i686发行版。下了gentoo最新minimal安装cd和i486的stage3安装成功,在gentoo系统下emerge安装软件出错无法完成编译,提示编译出错。尝试安装盘启动,chroot到新安装的gentoo下再emerge安装软件,也是一样的错误。不知何解?出错信息忘了保存。

之前安装了debian速度很慢,后来安装了slackware用huge.s内核速度还可以。

Safe Cflags
CHOST="i586-pc-linux-gnu"
CFLAGS="-march=c3 -m3dnow -O2 -pipe -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"
发表于 2009-10-17 08:35:44 | 显示全部楼层
http://en.gentoo-wiki.com/wiki/Safe_Cflags/Via, 楼主的是对的。但如果装的是i486, 改成上面的safe cflags后重新编译了系统没有? 如果没有会出错吧, 不可能用i486的瓶子装i586的酒.

$ sudo emerge -e system
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-10-17 12:33:35 | 显示全部楼层
分析的有道理,c3性能很低emerge -e system很费时间,抽空再试一次。
回复 支持 反对

使用道具 举报

发表于 2009-10-17 22:05:52 | 显示全部楼层
其实可以在快一点的机里面建个目录, chroot后装在这个目录里面。之后再tar 过去,又快又省事。

有一点要注意的是这个目录里面的/etc/make.conf要和目标机的写得一样。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-10-17 23:29:26 | 显示全部楼层
在chroot环境emerge -e system
第一个portage很顺利,第二个zlib就出错了,问题还是一样。
出错信息见截图

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2009-10-18 13:12:30 | 显示全部楼层
把布build.log 放出来.看看

建议这个机器还是玩debian把,cpu太低.emerge 太费劲了.折磨人.如果非要搞,就用虚拟机在性能好点机器上编译一套,然后每天rsync
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-10-18 15:21:21 | 显示全部楼层
因为性能差所以想装gentoo,整机功耗不到40w整晚开机编译用不了多少电。现在装了slackware 13,感觉还是慢,板载泰鼎显卡8M显存,接19寸宽屏lcd移动窗口都有些延迟。还是xp sp3下速度快些,但受限于显卡驱动上不了宽屏分辨率。看来只能用puppy等迷你发行版了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-10-18 16:19:58 | 显示全部楼层
zlib的build.log,好像是gcc版本缘故

>>> Unpacking source...
>>> Unpacking zlib-1.2.3.tar.bz2 to /var/tmp/portage/sys-libs/zlib-1.2.3-r1/work
[32;01m*[0m Applying zlib-1.2.3-build.patch ...
[A[120C  [34;01m[ [32;01mok[34;01m ][0m
[32;01m*[0m Applying zlib-1.2.3-visibility-support.patch ...
[A[120C  [34;01m[ [32;01mok[34;01m ][0m
[32;01m*[0m Applying zlib-1.2.1-glibc.patch ...
[A[120C  [34;01m[ [32;01mok[34;01m ][0m
[32;01m*[0m Applying zlib-1.2.1-build-fPIC.patch ...
[A[120C  [34;01m[ [32;01mok[34;01m ][0m
[32;01m*[0m Applying zlib-1.2.1-configure.patch ...
[A[120C  [34;01m[ [32;01mok[34;01m ][0m
[32;01m*[0m Applying zlib-1.2.1-fPIC.patch ...
[A[120C  [34;01m[ [32;01mok[34;01m ][0m
[32;01m*[0m Applying zlib-1.2.3-r1-bsd-soname.patch ...
[A[120C  [34;01m[ [32;01mok[34;01m ][0m
[32;01m*[0m Applying zlib-1.2.3-LDFLAGS.patch ...
[A[120C  [34;01m[ [32;01mok[34;01m ][0m
[32;01m*[0m Applying zlib-1.2.3-mingw-implib.patch ...
[A[120C  [34;01m[ [32;01mok[34;01m ][0m
>>> Source unpacked in /var/tmp/portage/sys-libs/zlib-1.2.3-r1/work
>>> Compiling source in /var/tmp/portage/sys-libs/zlib-1.2.3-r1/work/zlib-1.2.3 ...
Checking for shared library support...
No shared library support; try without defining CC and CFLAGS
Building static library libz.a version 1.2.3 with i586-pc-linux-gnu-gcc.
Checking for unistd.h... No.
Checking for attribute(visibility) support... No.
Checking whether to use vs[n]printf() or s[n]printf()... using s[n]printf()
Checking for snprintf() in stdio.h... No.
  WARNING: snprintf() not found, falling back to sprintf(). zlib
  can build but will be open to possible buffer-overflow security
  vulnerabilities.
Checking for return value of sprintf()... No.
  WARNING: apparently sprintf() does not return a value. zlib
  can build but will be open to possible string-format security
  vulnerabilities.
Checking for errno.h... No.
Checking for mmap support... No.
make -j2
i586-pc-linux-gnu-gcc -march=c3 -m3dnow -O2 -pipe -fomit-frame-pointer -DNO_snprintf -DHAS_sprintf_void -DNO_ERRNO_H   -c -o example.o example.c
i586-pc-linux-gnu-gcc: No such file or directory
make: *** [example.o] Error 1
[31;01m*[0m
[31;01m*[0m ERROR: sys-libs/zlib-1.2.3-r1 failed.
[31;01m*[0m Call stack:
[31;01m*[0m               ebuild.sh, line   49:  Called src_compile
[31;01m*[0m             environment, line 2546:  Called die
[31;01m*[0m The specific snippet of code:
[31;01m*[0m               emake || die
[31;01m*[0m  The die message:
[31;01m*[0m   (no error message)
[31;01m*[0m
[31;01m*[0m If you need support, post the topmost build error, and the call stack if relevant.
[31;01m*[0m A complete build log is located at '/var/tmp/portage/sys-libs/zlib-1.2.3-r1/temp/build.log'.
[31;01m*[0m The ebuild environment file is located at '/var/tmp/portage/sys-libs/zlib-1.2.3-r1/temp/environment'.
[31;01m*[0m

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-10-18 17:19:28 | 显示全部楼层
找到问题所在了
# cd /usr/i486-pc-linux-gnu/gcc-bin/4.3.2
# ln -s i486-pc-linux-gnu-c++  i586-pc-linux-gnu-c++
# ln -s i486-pc-linux-gnu-cpp  i586-pc-linux-gnu-cpp
# ln -s i486-pc-linux-gnu-g++  i586-pc-linux-gnu-g++
# ln -s i486-pc-linux-gnu-gcc  i586-pc-linux-gnu-gcc
# ln -s i486-pc-linux-gnu-gcc  i586-pc-linux-gnu-gcc-4.3.2
# ln -s i486-pc-linux-gnu-gfortran i586-pc-linux-gnu-gfortran
之后可以编译了
回复 支持 反对

使用道具 举报

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

本版积分规则

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