我在將ZXingWidget包括到我以前的iOS項目中時遇到了一些問題。包括Zxing到Xcode的未定義符號4.3 + Obj-C
這是一個項目,我開始使用iOS的XCode4.3 + ARC。對於這個項目,我需要包含ZXing進行掃描。
我按照提供的自述文件。
- 複製斑馬線到項目的根目錄,添加ZXingWidget.xcodeproj項目
- 添加在構建階段
- 新增ZXingWidget鏈接libZXingWidget.a目標依賴
- 頭搜索路徑 - 遞歸$(SRCROOT)/斑馬線只讀/ iphone/ZXingWidget /類
- 標題搜索路徑 - 非遞歸$(SRCROOT)/ zxing-read-only/cpp/core/src
- 導入所有需要的iOS框架。
注意事項:
- 斑馬線編譯和正確的iphone模擬器上運行
- 我收到有關未定義符號的約66錯誤。 (下面的例子)
- 從SVN獲得斑馬線代碼(我也嘗試過的zip下載,但同樣的錯誤64)
但我不能直接從我的代碼 (#進口不工作)導入任何文件。
我也試過這solution沒有運氣。
我失蹤的其他可能性?
任何幫助表示讚賞!
我現在得到一些錯誤輸出。
Undefined symbols for architecture i386:
"std::ios_base::Init::Init()", referenced from:
___cxx_global_var_init in libZXingWidget.a(Binarizer.o)
___cxx_global_var_init in libZXingWidget.a(BinaryBitmap.o)
___cxx_global_var_init in libZXingWidget.a(Array.o)
___cxx_global_var_init in libZXingWidget.a(BitArray.o)
___cxx_global_var_init in libZXingWidget.a(BitMatrix.o)
___cxx_global_var_init in libZXingWidget.a(BitSource.o)
___cxx_global_var_init in libZXingWidget.a(Counted.o)
...
"std::terminate()", referenced from:
zxing::Binarizer::Binarizer(zxing::Ref<zxing::LuminanceSource>) in libZXingWidget.a(Binarizer.o)
zxing::Binarizer::~Binarizer() in libZXingWidget.a(Binarizer.o)
zxing::BinaryBitmap::BinaryBitmap(zxing::Ref<zxing::Binarizer>) in libZXingWidget.a(BinaryBitmap.o)
zxing::BinaryBitmap::~BinaryBitmap() in libZXingWidget.a(BinaryBitmap.o)
zxing::BinaryBitmap::getBlackRow(int, zxing::Ref<zxing::BitArray>) in libZXingWidget.a(BinaryBitmap.o)
zxing::BinaryBitmap::getWidth() const in libZXingWidget.a(BinaryBitmap.o)
zxing::BinaryBitmap::getHeight() const in libZXingWidget.a(BinaryBitmap.o)
...
"operator delete(void*)", referenced from:
zxing::Binarizer::~Binarizer() in libZXingWidget.a(Binarizer.o)
zxing::Counted::~Counted() in libZXingWidget.a(Binarizer.o)
zxing::BinaryBitmap::~BinaryBitmap() in libZXingWidget.a(BinaryBitmap.o)
zxing::BinaryBitmap::crop(int, int, int, int) in libZXingWidget.a(BinaryBitmap.o)
zxing::BinaryBitmap::rotateCounterClockwise() in libZXingWidget.a(BinaryBitmap.o)
zxing::Counted::~Counted() in libZXingWidget.a(BinaryBitmap.o)
zxing::BitArray::~BitArray() in libZXingWidget.a(BitArray.o)
...
"___cxa_allocate_exception", referenced from:
zxing::Counted::release() in libZXingWidget.a(Binarizer.o)
zxing::Counted::release() in libZXingWidget.a(BinaryBitmap.o)
zxing::BitArray::setRange(int, int) in libZXingWidget.a(BitArray.o)
zxing::BitArray::isRange(unsigned long, unsigned long, bool) in libZXingWidget.a(BitArray.o)
zxing::BitMatrix::setRegion(unsigned long, unsigned long, unsigned long, unsigned long) in libZXingWidget.a(BitMatrix.o)
zxing::Counted::release() in libZXingWidget.a(BitMatrix.o)
zxing::BitSource::readBits(int) in libZXingWidget.a(BitSource.o)
...
我的「Link Binary With Binaries」中的libZXingWidget.a是紅色的。這是什麼意思? – Orange 2012-07-18 16:00:23
我不注意顏色。我認爲它應該表示指示的文件是否存在,但是鏈接的項目,它似乎不一致,並不重要。 – smparkes 2012-07-19 00:00:34
@橙色,它沒有找到或它沒有正確鏈接。 – Pochi 2012-07-19 00:05:31