开发者

libOmnitureAppMeasurement-iPhoneSimulator.a not linking with iOS4 project

开发者 https://www.devze.com 2023-04-01 22:53 出处:网络
I have a Universal Project for iPad and iPhone running iOS 4.0. xCode 4.x I follow the steps to include the above library into a new project.

I have a Universal Project for iPad and iPhone running iOS 4.0. xCode 4.x

I follow the steps to include the above library into a new project.

I am getting the following error during linking:

We are get开发者_开发知识库ting,

“_OBJC_CLASS_$_OMAppMeasurement” Ld: symbol not found for architecture i386.

I have other static library in the same project and those are working fine. In addition, I also try messing with Other Linker Flag, Header Search Path, Library Search Path. No luck.

Any idea?

EDIT: Turns out it is a binary issue, instead of using the binary from developer.adobe.com, I was pointed to another binary and that worked OK for xCode 4.x.


The Omniture omappmeasurement libraries are shipped as separate binaries for the separate architectures, so you have to switch between them as you switch between the simulator and devices. You can join the binaries together with lipo:

lipo -create libOmnitureAppMeasurement-iphoneos-armv6.a libOmnitureAppMeasurement-iphonesimulator-i386.a -output libOmnitureAppMeasurement.a

Then add libOmnitureAppMeasurement.a to your project with 'Add Files to "..."...' in the usual way.

NOTE: If you download them from this forum post you'll find that libOmnitureAppMeasurement-iphoneos-armv6.a contains both armv6 and armv7 code, and libOmnitureAppMeasurement-iphoneos-armv7.a contains armv7 only. Hence using the 'armv6' version above.


I got new libraries from here https://developer.omniture.com/en_US/gallery/app-measurement-for-ios and they work well on simulator and devices.

You will need to create an account to be able to download it.


These libraries are not any more supported by Apple as they use "uniqueIdentifier".

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号