Solaris 11中用于编译c程序的CC编译器是什么。makefile指定类似于“makefile”的内容;CC=CC-Xa-mt-xc99=无“库”;

Solaris 11中用于编译c程序的CC编译器是什么。makefile指定类似于“makefile”的内容;CC=CC-Xa-mt-xc99=无“库”;,c,gcc,solaris,cc,C,Gcc,Solaris,Cc,我的make文件中有以下行: ifeq ($(SYSTEM),SOLARIS) # SUN Solaris 8 no c99 ifeq ($(OSVER),510) CC=c99 -Xa -mt LD=c99 else CC=cc -Xa -mt -xc99=no_lib LD=cc 我必须在Solaris 11中编译代码。以前有人在Solaris 10或9中编译过。不知道是哪个 如果我执行哪个CC它给

我的make文件中有以下行:

ifeq ($(SYSTEM),SOLARIS)
    # SUN Solaris 8 no c99
    ifeq ($(OSVER),510)
        CC=c99 -Xa -mt 
        LD=c99
    else
        CC=cc -Xa -mt -xc99=no_lib
        LD=cc 
我必须在Solaris 11中编译代码。以前有人在Solaris 10或9中编译过。不知道是哪个


如果我执行
哪个CC
它给出了“用户/bin中没有CC”错误。但我的Solaris 11中安装了GCC。我是否更改了CC=GCC或安装了新的CC。如果我必须安装新的CC,我必须安装哪一个?

CC
通常指向系统默认编译器。在Solaris上,这将是SolarisStudio的一部分(可能安装也可能未安装)

如果
cc
不可用(使用
which cc
测试),但
gcc
可用,则应调整生成文件以指向
gcc
位置

您的Makefile现在可能看起来像:

ifeq ($(SYSTEM),SOLARIS)
    # SUN Solaris 8 no c99
    ifeq ($(OSVER),510)
        CC=c99 -Xa -mt 
        LD=c99
    else ifeq ($(OSVER),11)
        CC:=/usr/sfw/bin/gcc
    else
        CC=cc -Xa -mt -xc99=no_lib
        LD=cc 

可执行文件区分大小写,可能
CC
不存在,但
CC
存在。
which cc
的输出是什么?您好,谢谢您的回复。which cc:no cc in(/usr/bin:/usr/sbin)这就是我得到的。@Tim大写的
cc
这里有一个
make
变量,按照惯例,它用于标识生成文件要使用的C编译器。例如:谢谢。如果没有安装cc,并且如果我想安装我必须安装的版本,我可以从哪里获得它?尝试按照线程进行操作。您可以在
/usr/sfw/bin
中找到编译器,也可以从Thank You fiifim下载安装SolarisStudio。我已经安装了SolarisStudio。