xamarin.ios - How to add the libsqlite3.0.dylib in MonoTouch Binding Project? -
i want integrate aviary sdk objective-c library monotouch project. use 'monotouch binding project' template this. have created api definition file , define linkwith attributes.
[assembly: linkwith ("libaviarysdk.a", linktarget = linktarget.armv6 | linktarget.armv7 | linktarget.simulator, forceload = true, iscxx = true, frameworks="coregraphics quartzcore accelerate storekit coredata", linkerflags="-objc -all_load -fobjc-arc")] it requires following libraries:
- foundation.framework
- uikit.framework
- coregraphics.framework
- quartzcore.framework
- accelerate.framework
- storekit.framework
- libz.1.2.5.dylib
- libsqlite3.0.dylib
- coredata.framework
all these frameworks linked without problems except libsqlite3.0.dylib
the problem encountering, though, library depends on libsqlite3.0.dylib , not know how include these frameworks in monotouch application.
in result - compiler returns following errors:
/developer/monotouch/sdks/monotouch.iphonesimulator.sdk/usr/lib -u _catch_exception_raise -force_load /var/folders/2n/ql7wkht57cg8wfgzz0cr9trm0000gn/t/tmp31d0b99b.tmp/libaviarysdk.a -objc -all_load -fobjc-arc
undefined symbols architecture i386:
"_sqlite3_open", referenced from: -[aflocalyticsdatabase init] in libaviarysdk.a(aflocalyticsdatabase.o)
"_sqlite3_busy_timeout", referenced from: -[aflocalyticsdatabase init] in libaviarysdk.a(aflocalyticsdatabase.o)
"_sqlite3_exec", referenced from: -[aflocalyticsdatabase begintransaction:] in libaviarysdk.a(aflocalyticsdatabase.o)
* and many other same references *
ld: symbol(s) not found architecture i386 collect2: ld returned 1 exit status
mtouch exited code 1
try adding -lsqlite3.0 linkerflags binding instruct (native) linker load sqlite library (and symbols).
[assembly: linkwith ("your_lib.a", linktarget.armv7, forceload = true, linkerflags="-lsqlite3.0")]
Comments
Post a Comment