0

iphone OS 4用のライブラリを作成しようとしましたが、エラーが発生していました。

BerkeleyDBインストールガイドを参照したビルドスクリプトを次に示します。

export DEV_iOS=/Developer/Platforms/iPhoneOS.platform/Developer
export SDK_iOS=${DEV_iOS}/SDKs/iPhoneOS4.2.sdk
export COMPILER_iOS=${DEV_iOS}/usr/bin
export CC=${COMPILER_iOS}/gcc
export CXX=${COMPILER_iOS}/g++
export LDFLAGS="-arch armv6 -pipe -Os -gdwarf-2 -no-cpp-precomp -mthumb -isysroot ${SDK_iOS}"
export CFFLAGS=${LDFLAGS}
export CXXFLAGS=${LDFLAGS}
../dist/configure --host=arm-apple-darwin10 --with-cryptography=no --enable-shared=no
make

ここで、3つの警告を含むエラーメッセージが表示されます。

libtool: link: /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc -O3 -o db_archive -arch armv6 -pipe -Os -gdwarf-2 -no-cpp-precomp -mthumb -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk db_archive.o util_sig.o libdb-5.1.a -lpthread
ld: warning: in db_archive.o, file was built for i386 which is not the architecture being linked (armv6)
ld: warning: in util_sig.o, file was built for i386 which is not the architecture being linked (armv6)
ld: warning: in libdb-5.1.a, file was built for unsupported file format which is not the architecture being linked (armv6)
Undefined symbols:
"_main", referenced from:
_main$non_lazy_ptr in crt1.o
(maybe you meant: _main$non_lazy_ptr)
ld: symbol(s) not found
collect2: ld returned 1 exit status
make: *** [db_archive] Error 1

スクリプトで間違っているところを教えてください。

前もって感謝します。

4

3 に答える 3

2

このスレッドをフォローしている人は、実際のOTNフォーラムのエントリとその回答を確認することをお勧めします。これはここにあります。

よろしく、

デイブ

于 2011-01-15T00:13:26.150 に答える
2

Oracleチームのサポートを受けています。

ライブラリを作成することができました。

ブログに投稿しました。i386およびarmv6アーキテクチャの詳細なビルドスクリプトを確認してください。

http://ankitthakur.wordpress.com/2011/01/16/build-scripts-for-berkely-db-static-libraries-with-ios-development/

于 2011-01-16T11:31:22.323 に答える
0

BerkeleyDBとご質問をご利用いただきありがとうございます。Berkeley DBチームは、このWebサイトの質問に従わないことがよくあります。ここのBerkeleyDBフォーラムに質問を投稿するのが最善です。

http://forums.oracle.com/forums/forum.jspa?forumID=271

そこに投稿していただければ、迅速に対応させていただきます。

よろしく、Alex Gorrod Oracle Berkeley DB

于 2011-01-11T21:27:46.377 に答える