Posted on 2009-03-26 15:36
Prayer 閱讀(1523)
評論(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技術支持電話尋求技術支持。