哈爾濱海月數(shù)據(jù)恢復(fù),技術(shù)亞洲領(lǐng)先 設(shè)為首頁(yè)加入收藏RSS訂閱
中國(guó)區(qū):哈爾濱(總部)鄭州福建深圳沈陽(yáng)合肥大連包頭淄博上海廣州
    南京杭州嘉興武漢濟(jì)南青島新疆太原
亞太區(qū):印度韓國(guó)泰國(guó)新加坡馬來(lái)西亞澳大利亞
IBM-AIX
AIX開(kāi)發(fā)環(huán)境介紹

  AIX開(kāi)發(fā)環(huán)境介紹

  2006-03-05 12:14:04 作者:秦寶軍 來(lái)自:http://www-900.ibm.com

  隨著IBM pSeries服務(wù)器市場(chǎng)占有率的不斷增加,AIX操作系統(tǒng)也為越來(lái)越多的IT業(yè)者所喜愛(ài)。AIX作為UNIX家族中出色的一員,有著豐富的開(kāi)發(fā)環(huán)境,AIX******的版本為AIX 5L版本2,***常見(jiàn)的版本為4.3.3,以5L版本為例,缺省安裝直接支持J2EE,這里主要介紹AIX系統(tǒng)的C/C++開(kāi)發(fā)部分。

  首先應(yīng)當(dāng)清楚,AIX并不集成C/C++,要使用這部分功能,必須安裝IBM C或者Visual Age C++(包含C編譯器),這篇文章只介紹Visual Age C++,將按照Visual Age C++的安裝、配置、編譯器的使用、程序調(diào)試的順序介紹,使用的平臺(tái)為AIX 5L。

  安裝Visual Age C++

  Visual Age C++要在AIX 5L上使用,******的版本為5.0.2,******的版本為6.0。Visual Age C++是一個(gè)功能強(qiáng)大的集成開(kāi)發(fā)環(huán)境,和Windows平臺(tái)的Visual C++一樣,從項(xiàng)目的管理、編輯、編譯、調(diào)試等各方面,提供一系列完善的圖形化的操作界面。要完全安裝(包含IDE圖形界面)Visual Age C++,可遵循以下步驟:

  1) 確定IDE圖形界面需要的Motif文件集已經(jīng)安裝,命令如下:

  lslpp -l X11.compat.adt.Motif12

  如沒(méi)有安裝,應(yīng)先從AIX操作系統(tǒng)安裝介質(zhì)安裝這一文件集。

  2) 將Visual Age C++的安裝介質(zhì)放入機(jī)器的光驅(qū)中

  注意,如果是Visual Age C++的產(chǎn)品盤,并不需要mount CD盤

  3) 開(kāi)始安裝Visual Age C++文件集,命令如下:smitty install_latest

  安裝目錄選擇光區(qū),使用F4鍵選擇,如下,

  回車后將顯示如下界面:

 

  如需要選擇安裝部分文件集,可在_all_latest菜單項(xiàng)下按F4鍵,使用F7鍵選擇要安裝的文件集,按回車鍵即可。

  上面介紹的是是一種完整的安裝方式,如果只是使用C/C++的編譯器,不許要安裝Visual Age C++的圖形界面,可借助于下面的命令:

  installp -aXgd /dev/cd0 vacpp.cmp

  這條命令的運(yùn)行結(jié)果是安裝我們需要的所有文件集。

  配置Visual Age C++

  正確安裝完Visual Age C++以后,還不能立刻使用,需要配置使用許可才可以正確使用。Visual Age C++的使用許可通過(guò)LUM(License Use Management)系統(tǒng)管理,所以正確的配置方法是先配置LUM服務(wù)器,再配置Visual Age C++的使用許可。

  ******步:配置LUM

  LUM在AIX 4.3.3及5L版本中是一個(gè)必須的部件,系統(tǒng)的初始安裝過(guò)程中已經(jīng)安裝,但是并沒(méi)有配置,使用i4cfg命令配置,如下:

  # cd /usr/opt/ifor/bin

  # ./i4cfg -a n -S a

  這條命令將配置LUM成為并發(fā)的節(jié)點(diǎn)鎖定服務(wù)器工作方式(Concurrent Nodelock Server),如果沒(méi)有錯(cuò)誤輸出,下一步是啟動(dòng)LUM服務(wù)器:

  # ./i4cfg -start

  之后,可以用以下命令檢測(cè)LUM服務(wù)器的工作狀態(tài):

  # ./i4cfg -list

  將顯示為:

 

  第二步:配置Visual Age C++的使用許可

  正確安裝Visual Age C++產(chǎn)品以后,可以在/usr/vac和/usr/vacpp兩個(gè)目錄下看到后綴為lic的文件,這些文件記載了Visual Age C++的使用許可協(xié)議,需要做的就是將需要的許可協(xié)議添加到LUM的管理中。使用的命令為i4blt,使用方法為:

  i4blt -a -f license_file_name -R u -T license_num

  具體過(guò)程如下:

  首先添加C的使用許可,

  #cd /usr/opt/ifor/bin

  #./i4blt -a -f /usr/vac/cforaix_cn.lic -R u -T 10

  然后再配置C++的使用許可,

  #./i4blt -a -f /usr/vacpp/vacpp_cn.lic -R u -T 10

  在上面的例子中配置的許可數(shù)為10,正確的配置完后可通過(guò)如下命令驗(yàn)證許可數(shù)是否正確或許可協(xié)議有沒(méi)有正確的被添加,

  i4blt -sl cn

  注意以上的配置是在AIX 5L版本上進(jìn)行的,如在AIX 4.3.3版本上,則i4cfg、i4blt命令存在/var/ifor/bin目錄下。

  Visual Age C++的使用

  安裝、配置以后,可以使用C/C++編譯器了,但當(dāng)你運(yùn)行cc時(shí)卻發(fā)現(xiàn),cc沒(méi)有找到,不必懷疑安裝的正確性,這是沒(méi)有設(shè)置環(huán)境變量的緣故,在/usr/vac/bin目錄下有一個(gè)腳本文件replaceCSET,它會(huì)完成這一切。

  可以用一個(gè)經(jīng)典的小程序hello.c來(lái)測(cè)試一下編譯器的正確性,程序內(nèi)容如下:

  #include

  main() {

  printf("Hello!\n");

  }

  編譯、連接:

  cc -o hello hello.c

  將生成hello可執(zhí)行程序。

  一般情況下,我們習(xí)慣直接使用cc編譯程序,實(shí)際上AIX的C/C++編譯器還提供了其他的使用方法,如后綴為_(kāi)r就有xlc_r、xlC_r,這里我們做一個(gè)完整的介紹。

  AIX平臺(tái)上缺省的C++編譯器為xlC,而C的編譯器有三個(gè):

  cc: 這是***習(xí)慣用的,擴(kuò)展模式的C編譯器

  xlc: ANSI C編譯器,使用UNIX的頭文件

  c89: ANSI C編譯器,使用ANSI頭文件

  具體選擇何種編譯器,需根據(jù)程序的情況來(lái)選擇,一般我們可以使用cc。另外,還有一些后綴供我們選擇,結(jié)合以上的基本編譯器,給我們提供了更大的選擇范圍,如下:

  _r 連接UNIX98標(biāo)準(zhǔn)線程庫(kù)

  _r4 連接POSIX Draft4(DCE)標(biāo)準(zhǔn)線程庫(kù)

  _r7 連接POSIX Draft7標(biāo)準(zhǔn)線程庫(kù)

  128 Double型類型為128位并使用連接相關(guān)的庫(kù)

  128_r Double類型為128位并使用UNIX98線程庫(kù)

  128_r4 Double類型為128為并使用連接POSIX Draft4線程庫(kù)

  128_r7 Double類型為128位并使用連接POSIX Draft7線程庫(kù)

  另外,UNIX98已經(jīng)兼容涵蓋了UNIX95、POSIX標(biāo)準(zhǔn)的內(nèi)容,所以,如果程序中使用到線程函數(shù),只許增加后綴_r就可以了。舉例說(shuō),編譯連接ANSI C并使用POSIX線程庫(kù),可以使用xlc_r編譯器,當(dāng)然也可以使用xlc -lpthread的形式。

  這里提到的只是***基本的東西,還有很多方面的內(nèi)容并沒(méi)有介紹到,例如如何生成使用動(dòng)態(tài)庫(kù),這些更詳細(xì)的東西需要參考相關(guān)的手冊(cè),或撥打IBM技術(shù)支持電話尋求技術(shù)支持。

  程序調(diào)試

  調(diào)試程序比較復(fù)雜,一方面需要我們借助一些調(diào)試工具,如dbx 、truss、tprof等,另一方面也需要我們具有一些調(diào)試經(jīng)驗(yàn)。

  這里介紹一個(gè)用dbx調(diào)試運(yùn)行中的程序的方法,重點(diǎn)在于調(diào)試步驟,而不在于dbx工具的使用,以一個(gè)簡(jiǎn)單的程序?yàn)槔绦驗(yàn)椋?

  #include

  main() {

  long count=0;

  int loop_count;

  while(1) {

  count *= (count++);

  printf(" Test debug, count : %ld\n", count);

  for (loop_count = 0; loop_count < 10; loop_count++) {

  sleep(1);

  }

  }

  }

  程序名為dbg.c

  調(diào)試步驟如下:

  1) 編譯dbg.c

  xlc -g -o dbg dbg.c

  2) 運(yùn)行dgb程序

  ./dbg

  3) 查看dbg程序的進(jìn)程ID

  ps -ef | grep dbg | grep -v grep

  假設(shè)dbg的PID為12345

  4) 調(diào)試dbg程序

  dbx -a 12345

  5) 這時(shí)我們運(yùn)行dbx的命令調(diào)試dbg程序了,下面是幾個(gè)常用的命令:

  step : 單步運(yùn)行

  stop at line_number : 在某一行設(shè)置斷點(diǎn)

  stop in subroutine_name: 設(shè)置斷點(diǎn)到某一個(gè)函數(shù)

  cont : 繼續(xù)運(yùn)行

  6) 退出調(diào)試

  注意退出時(shí)應(yīng)使用detach而不是exit,否則會(huì)影響程序的運(yùn)行,導(dǎo)致程序退出。

  這篇文章只是簡(jiǎn)單介紹AIX的開(kāi)發(fā)環(huán)境,實(shí)際工作中用到的內(nèi)容將遠(yuǎn)遠(yuǎn)不止這些知識(shí),需要開(kāi)發(fā)者查閱大量的相關(guān)資料,或訪問(wèn)以下網(wǎng)址:

  http://www-900.ibm.com/developerWorks/cn/index.shtml

 

 
客戶服務(wù) +more
上門服務(wù)
服務(wù)承諾
異地恢復(fù)
收費(fèi)標(biāo)準(zhǔn)
付款方式
疑難解答
服務(wù)特色 +more
·免費(fèi)檢測(cè)
·免費(fèi)提供3天備份
·專業(yè)工程師提供服務(wù)
·免費(fèi)清潔送修的介質(zhì)
·數(shù)據(jù)恢復(fù)前報(bào)價(jià),客戶確認(rèn)后工程師開(kāi)始數(shù)據(jù)恢復(fù)
·數(shù)據(jù)恢復(fù)不成功不收費(fèi)
·與客戶簽訂保密協(xié)議,對(duì)客戶的數(shù)
 據(jù)嚴(yán)格保密,整個(gè)恢復(fù)過(guò)程不會(huì)對(duì)
 客戶的原盤有任何的寫操作,以確
 保原盤的數(shù)據(jù)完全

·免費(fèi)參觀恢復(fù)全過(guò)程

·工程師在線免費(fèi)咨詢

·專業(yè)工程師提供服務(wù)
服務(wù)器數(shù)據(jù)恢復(fù) 點(diǎn)擊這里給我發(fā)消

息
數(shù)據(jù)庫(kù)修復(fù)
點(diǎn)擊這里給我發(fā)

消息
硬盤數(shù)據(jù)恢復(fù)
點(diǎn)擊這里給我發(fā)消

息
主站蜘蛛池模板: 97久久精品午夜一区二区| 亚洲国产视频一区| 69久久精品无码一区二区| 日美欧韩一区二去三区| 久久影院亚洲一区| 无码人妻一区二区三区精品视频 | 国产成人无码一区二区在线观看| 亚洲天堂一区二区| 国产午夜精品免费一区二区三区| 午夜AV内射一区二区三区红桃视| 久久精品国产一区| 精品视频一区二区三区四区五区| 在线精品日韩一区二区三区| 成人免费观看一区二区| 色狠狠AV一区二区三区| 国产在线一区二区| 亚洲日韩精品一区二区三区无码| 亚洲爽爽一区二区三区| 国产精品福利区一区二区三区四区 | 夜夜爽一区二区三区精品| 综合激情区视频一区视频二区| 无码人妻一区二区三区av| 国模大胆一区二区三区| 免费看无码自慰一区二区 | 狠狠色婷婷久久一区二区三区| 视频一区二区三区人妻系列| 波多野结衣精品一区二区三区 | 精品一区二区三区在线观看l| 日本视频一区在线观看免费| 一区二区三区在线|欧| 少妇无码一区二区三区| 中文字幕一区视频| 亚洲大尺度无码无码专线一区| 亚洲AV成人一区二区三区观看| 黑巨人与欧美精品一区| 麻豆精品一区二区综合av| 国产一区二区免费| 精品国产AV一区二区三区| 色屁屁一区二区三区视频国产 | 亚洲日韩AV一区二区三区中文| 在线观看中文字幕一区|