AIX上提供了XLC编译器也提供了CC编译器,这两个编译器有什么差别呢?

 答:对于不同的调用,支持的标准和默认选项不同,可以参考编译器手册的如下解释:
产品                描述                                                                                                                                       建议
xlc                   用来编译c文件,支持所有的ISO C99标准以及IBM语言扩展的特性。                        编译c文件,建议使用这个命令。
c99                 用来编译c文件,支持所有的ISO C99标准特性,但不支持IBM语言扩展。                想要严格遵循C99标准编译c文件,使用此命令。
c89                 用来编译c文件,支持所有的ANSI C89标准特性,但不支持IBM语言扩展。             想要严格遵循C89标准编译c文件,使用此命令。
cc                   用来编译c文件,支持pre-ANSI C 和许多常用标准。                                                     可以用这个命令编译一些不是严格遵循标准C,比较老的c代码。
xlc++/xlC       使用这个命令来编译c++文件。                                                                                          只要你的代码中包含c++语法,就必须使用这个命令。
gxlc                这个命令会把许多GNU C的选项映射成xlc选项,然后调用xlc编译。                           对xlc编译选项不熟悉的,或者不想改变原来gcc选项的,可以考虑使用该命令。
gxlc++/gxlC   这个命令会把许多GNU C/C++的选项映射成XLC/C++选项,然后调用xlc++编译。 对xlC编译选项不熟悉的,或者不想改变原来g++选项的,可以考虑使用该命令。

 

以上除了gxlc/glxc++外的所有命令都有一个线程安全的版本与之对应(比如xlc_r,xlc++_r等),用来编译并行环境下的代码。

展开阅读全文

没有更多推荐了,返回首页