2011-10-23 55 views
0

我正在學習opencv for ios now.After我從github.com/macmade下載示例代碼後,我編譯並運行程序,一切正常。然而,當我添加一些代碼OpenCV的波紋管:符號找不到架構i386關於opencv

IplImage* img = 0; 
int height,width,step,channels; 
uchar* data; 
int hIndex,wIndex,cIndex; 
img = cvLoadImage("tapme.png",CV_LOAD_IMAGE_COLOR); 
if (!img) { 
    NSLog(@"img cannot load"); 
    return; 
} 

height = img->height; 
width = img->width; 
step = img->widthStep; 
channels = img->nChannels; 
data = (uchar*)img->imageData; 

NSLog(@"%d:%d:%d:%d",height,width,step,channels); 

然後我重新編譯程序,一切都OK了。但是,當錯誤鏈接時發生:

Undefined symbols for architecture i386: 
"_cvLoadImage", referenced from: 
-[MainViewController showPic:] in MainViewController.o 

我曾嘗試在計算器幾乎所有的方法,但結果仍然不那麼好。任何人都有一個好主意來修復錯誤,等待你的幫助,並感謝你。

回答

1

當您爲模擬器構建時,鏈接器需要用於i386體系結構的庫。當你爲一個設備構建時,鏈接器需要一個用於arm架構的庫。你的模擬器建立設置指向正確的庫嗎?

+0

謝謝你的回答,但我怎麼能指定設置指定的自由派?我無法在Xcode4中找到它,並將體系結構設置爲標準armv6和armv7 –

相關問題