在Solaris 10系统上搭建编译环境时,首要任务通常就是安装GCC编译器。尽管官方早已停止对该老版本操作系统的维护,但许多遗留项目仍在其上稳定运行。本文将完整梳理Solaris 10安装GCC的详细流程,每步均结合实战经验,助你有效避坑。
1. 系统环境准备
Solaris 10默认的shell为sh,使用体验不太流畅。因此,第一步建议将root用户的shell切换为bash,后续操作会更加便捷。
# which bash
/usr/bin/bash
# usermod -s /usr/bin/bash root
接着,创建系统的.profile文件。直接复制系统自带的模板即可完成:
# cp /etc/skel/local.profile /.profile
随后添加关键的环境变量。路径务必配置完整,特别是/usr/sfw/bin和/opt/csw/bin等不常用的目录,许多第三方工具包默认安装在此处:
PATH=/usr/bin:/usr/local/bin:/usr/ucb:/etc:/usr/sbin:/usr/bin:/usr/sfw/bin:/usr/ccs/bin:/opt/csw/bin:.
export PATH
export PS1='\u:\w#'
最后,从Solaris 10安装光盘中补装几个必要的工具包。切勿遗漏,否则后续wget命令可能无法正常运行:
# pkgadd -d /cdrom/Solaris_10/Product SUNWwgetr
# pkgadd -d /cdrom/Solaris_10/Product SUNWwgetu
# pkgadd -d /cdrom/Solaris_10/Product SUNWwgetS
# pkgadd -d /cdrom/Solaris_10/Product SUNWgcmn
2. 下载gcc软件
系统环境准备就绪后,从sunfreeware这一老牌镜像站点下载GCC及其依赖库文件。注意选择x86架构的Solaris 10版本,避免下载错误:
# wget ftp://ftp.sunfreeware.com/pub/freeware/intel/10/gcc-3.4.6-sol10-x86-local.gz
# wget ftp://ftp.sunfreeware.com/pub/freeware/intel/10/libiconv-1.11-sol10-x86-local.gz
# wget ftp://ftp.sunfreeware.com/pub/freeware/intel/10/libgcc-3.4.6-sol10-x86-local.gz
# wget ftp://ftp.sunfreeware.com/pub/freeware/intel/10/libintl-3.4.0-sol10-x86-local.gz
第一个文件为GCC本体,后面三个分别是libiconv、libgcc和libintl的库文件,缺一不可。
3. 解压和安装
下载的文件均为.gz压缩包,先用gunzip解压,再通过pkgadd安装。安装顺序没有严格要求,但建议优先安装库文件,再安装GCC本体:
# gunzip gcc-3.4.6-sol10-x86-local.gz
# gunzip libiconv-1.11-sol10-x86-local.gz
# gunzip libgcc-3.4.6-sol10-x86-local.gz
# gunzip libintl-3.4.0-sol10-x86-local.gz
# pkgadd -d gcc-3.4.6-sol10-x86-local
# pkgadd -d libiconv-1.11-sol10-x86-local
# pkgadd -d libgcc-3.4.6-sol10-x86-local
# pkgadd -d libintl-3.4.0-sol10-x86-local
4. 修改.profile文件
安装完成后,还需在.profile文件中追加两行配置,使系统能够找到GCC的库文件,并默认使用gcc编译器:
export LD_LIBRARY_PATH=/usr/local/lib:.
export CC=gcc
至此,GCC已成功部署。重新登录或执行source .profile后,即可通过gcc --version验证安装结果。虽然版本3.4.6算不上新,但应对Solaris 10上的日常编译工作已完全足够。
