`
clwbeyond
  • 浏览: 42606 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

Solaris 10 gcc setting

阅读更多
~/.profile 是在用户的主目录下的一个文件,每次用户登陆都会执行这里边的ENV环境变量设置

I am a new man to solaris and get some contents from website to config  the gcc on solaris as follows:
/etc/profile是一个全局的环境变量设置,只要登陆系统的用户都会执行里面的ENV环境变量设置

~/.kshrc是在用户的主目录下面的,每次执行KSH下面的子shell的时候,都会执行这里面的ENV环境变量设置

~/.dtprofile是在用户的主目录下面的,在这里设置你进入CDE时的一些变量设置,如果用户没有通过CDE进入过系统,那么将不会产生这个文件 只有用户曾经用CDE进入过系统后就会自动生成一个.dtprofile文件,然后还可以对里边的变量进行设置

所以我的环境变量的设置是在/etc/profile中的
PATH=/usr/sbin:/usr/bin:/sbin:/usr/ucb:/usr/local/bin:/usr/ccs/bin
LD_LIBRARY_PATH=/usr/local/lib

第一行是一些命令的路径
第二行是在用GCC/G++调试程序的时候使用到的库文件路径

由于Solaris在安装后没有GCC/GDB的调试工具,所以必须手动安装,我下载了些以下的安装包,然后ftp到我的虚拟机器上,安装步骤如下

From the website we can download the following packages:
http://www.sunfreeware.com/programlistintel10.html#db4

gunzip expat-1.95.5-sol10-intel-local.gz 
gunzip gdb-6.6-sol10-x86-local.gz        
gunzip libiconv-1.11-sol10-x86-local.gz
gunzip gcc-3.4.6-sol10-x86-local.gz      
gunzip libgcc-3.4.6-sol10-x86-local.gz   
gunzip ncurses-5.6-sol10-x86-local.gz

pkgadd -d expat-1.95.5-sol10-intel-local
pkgadd -d gdb-6.6-sol10-x86-local  
pkgadd -d libiconv-1.11-sol10-x86-local
pkgadd -d gcc-3.4.6-sol10-x86-local   
pkgadd -d libgcc-3.4.6-sol10-x86-local 
pkgadd -d ncurses-5.6-sol10-x86-local  

首先是解压,然后是利用solaris安装包的命令,安装了包体
在这里再说个卸载包的命令:pkgrm

其实有个包可以不安装的,就是因为没有设置LD_LIBRARY_PATH这个变量,没有找到libstdc++.so.6,所以我就误认为没有装 libgcc-3.4.6-sol10-x86-local 这个包,重复安装了,还是没有出什么大的问题,但是一定要设置上面所说的那个变量,否则在运行c程序的时候会抱错
以上就是偶安装gcc/gdb的一个简单的过程,其中还有一些ftp的操作,主要的还是ftpd文件夹下的ftpusers中的一些说明

or
1.打开左上角菜单“系统” - “系统管理” - “Package Manager”。

2. 在工具栏下方的“Search”文本框中输入:SUNWgcc,回车。勾选下方列表中出现的SUNWgcc包,点击工具栏中的“Install /Update”按钮。

3. 出现 Install/Update Confirmation 提示窗口,查看包依赖和下载信息,点击“Next”按钮,开始下载文件,并自动进行安装。

在package manager里面输入gcc,可以看到有几个跟gcc相关的包,然后安装就行了。
gcc和gcc-dev应该是必须的好像

到这个网站http://www.sunfreeware.com/programlistintel10.html下载libiconv-1.11-sol10-x86-local.gz及gcc-3.4.6-sol10-x86-local.gz的安装包,解压缩用pkgadd -d安装.

#gunzip libiconv-1.11-sol10-x86-local.gz
#pkgadd –d libiconv-1.11-sol10-x86-local
#gunzip gcc-3.4.6-sol10-x86-local.gz

gcc -o hello hello.c
collect2: ld terminado con la señal 9 [Killed]
ld.so.1: ld: fatal: libld.so.4: version `SUNWprivate_4.2' not found (required by file /usr/bin/ld)
ld.so.1: ld: fatal: libld.so.4: open failed: No such file or directory
ld.so.1: ld: fatal: relocation error: file /usr/bin/ld: symbol ld32_main: referenced symbol not found
Running 'pkg install SUNWtoo' to fix the above problem
Or pfexec pkg install gcc-dev

You Can also see:
http://www.lupaworld.com/bbs/thread-22938-1-13.html
Solaris 安装GCC编译器
    GCC是GNU组织的免费C编译器,Linux的很多发布缺省安装的就是这种。很多流行

  的自由软件原代码基本都能在GCC编译器下编译运行。

  虽然GCC有很多平台(操作系统)的版本,一般商业UNIX系统是不安装GCC的,要想在

  这些操作系统上使用GCC,就必须自己动手安装。

  下面主要介绍在SUN Solaris操作系统中获取GCC,安装和调试步骤。

  1 取得针对操作系统和操作系统版本保持一致的GCC软件

  如果你要在Solaris 2.5.1上使用GCC,要取得相映的GCC

  ftp://ftp.cdit.edu.cn/pub/unix/solaris/sparc25/gcc-2.7.2.1.gz

  2 解压缩

  .gz表示是这是一个经过GZIP压缩过的文件。需要用gzip/gunzip软件首先

  解压缩。

  $ gunzip gcc-2.7.2.1.gz

  3 安装

  解压缩之后的就是安装包。在solaris操作系统中安装包有一套专门的命令和程序

  #pkgadd -d ./gcc-2.7.2.1

  在接下来的安装中,会有一个交互性安装过程。

  4 调试

  以gcc-2.7.2.1为例,GCC缺省安装的路径为/opt/GCC2721,这个路径可能不在

  用户的PATH变量表示的范围内,所以需要对PATH变量更新,方便使用GCC。

  对使用csh的用户:

  % setenv PATH=$PATH:/opt/GCC2721/bin

  对使用sh的用户:

  $ PATH=$PATH:/opt/GCC2721/bin

  $ export PATH

  如果不想每次使用GCC都要更新PATH环境变量,可以将以上内容写在用户初始文件

  中:

  对csh用户: 写在用户主目录下的.cshrc文件中

  对sh用户:写在用户主目录下的.profile文件中

  5 常见问题

  Q:解压缩gcc-version.gz文件时,提示"gunzip 没找到"

  A:有可能是你没有事先安装gzip/gunzip软件,首先下载gzip for 相应OS,然后

  安装。

  还有可能是gzip/gunzip没在PATH搜索路径中,查看/usr/local/bin,如果有,

  使用gunzip时加上绝对路径。

  Q: 成功安装了gcc,在编译软件时出错"can't find gcc"。

  A: 最大的可能就是gcc的执行目录没有在用户当前的搜索路径PATH中。按照本

  文第4步讲述的方法去做。

  Q: 怎么安装使用c++编译器 [added:1999/10/24]

  A: gcc提供了g++作为c++的替代,一般还要使用g++的库来支持,下载针对你的OS

  版本的libstdc++包,然后安装。

  安装完毕,要设置LD_LIBRARY_PATH环境变量,让libstdc++库能被其它程序利用

  $LD_LIBRARY_PATH=/usr/local/lib

  $export LD_LIBRARY_PATH

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics