Posted on 2009-03-26 15:36
Prayer 阅读(1514)
评论(0) 编辑 收藏 引用 所属分类:
C/C++ 、
LINUX/UNIX/AIX
节选:http://blog.csdn.net/q30/archive/2004/09/21/111411.aspx
一般情况下,我们习惯直接使用cc编译程序,实际上AIX的C/C++编译器还提供了其他的一些使用方法,如后缀为_r就有xlc_r、xlC_r,这里我们做一个完整的介绍。
AIX平台上缺省的C++编译器为xlC,而C的编译器有三个:
cc: 这是最习惯用的,扩展模式的C编译器
xlc: ANSI C编译器,使用UNIX的头文件
c89: ANSI C编译器,使用ANSI头文件
具体选择何种编译器,需根据程序的情况来选择,一般我们可以使用cc。另外,还有一些后缀供我们选择,结合以上的基本编译器,给我们提供了更大的选择面,如下:
_r
|
连接UNIX98标准线程库
|
_r4
|
连接POSIX Draft4(DCE)标准线程库
|
_r7
|
连接POSIX Draft7标准线程库
|
128
|
Double型类型为128位并使用连接相关的库
|
128_r
|
Double类型为128位并使用UNIX98线程库
|
128_r4
|
Double类型为128为并使用连接POSIX Draft4线程库
|
128_r7
|
Double类型为128位并使用连接POSIX Draft7线程库
|
另外,UNIX98已经兼容涵盖了UNIX95、POSIX标准的内容,所以,如果程序中使用到线程函数,只许增加后缀_r就可以了。举例说,编译连接ANSI C并使用POSIX线程库,可以使用xlc_r编译器,当然也可以使用xlc –lpthread的形式。
这里提到的只是最基本的东西,还有很多方面的内容并没有介绍到,例如如何生成使用动态库,这些更详细的东西需要参考相关的手册,或拨打IBM技术支持电话寻求技术支持。