Highlighted

Undefined symbols for architecture armv7

Community Beginner ,
Apr 03, 2014

Copy link to clipboard

Copied

Hello,

I'm in the process of creating an ANE for an iOS SDK and I'm encountering issues when using the generated ANE in a test project.

When trying to debug the app on the device via Flash Builder here is the error I'm getting:

Error occurred while packaging the application:

Undefined symbols for architecture armv7:

  "_OBJC_CLASS_$_ASIdentifierManager", referenced from:

      objc-class-ref in com.mycompany.MySDKANE.o

ld: symbol(s) not found for architecture armv7

Compilation failed while executing : ld64

It looks like the error is saying that I've not added the AdSupport.framework when packaging my ANE.

When I look at the ANT script I've implemented I can see that the platform.xml file correctly lists all the iOS frameworks I need.

Here is an excerpt of my ANT script :

[...]

<!-- Package -->

     <target name="package" description="Create the extension package">

          <exec executable="${flex.sdk}/bin/adt" failonerror="true" dir="../temp">

               <env key="AIR_SDK_HOME" value="${flex.sdk}"/>

               <arg value="-package"/>

               <arg value="-target"/>

               <arg value="ane"/>

               <arg value="${name}.ane"/>

               <arg value="../build/extension.xml"/>

               <arg line="-swc swc/${name}.swc"/>

               <arg line="-platform iPhone-ARM -platformoptions ../build/platform.xml -C ios/ ."/>

               <arg line="-platform iPhone-x86 -platformoptions ../build/platform.xml -C iosSimulator/ ."/>

               <arg line="-platform default -C default/ ."/>

          </exec>

        <move file="../temp/${name}.ane" todir="../bin"/>

        <delete dir="../temp"/>

    </target>

[...]

and the content of the platform.xml :

<?xml version="1.0" encoding="utf-8" ?>

<platform xmlns="http://ns.adobe.com/air/extension/13.0">

     <sdkVersion>7.1</sdkVersion>

     <linkerOptions>

          <option>-ios_version_min 5.1.1</option>

          <option>-framework Accelerate</option>

          <option>-weak_framework AdSupport</option>

          <option>-framework CoreGraphics</option>

          <option>-framework Foundation</option>

          <option>-framework QuartzCore</option>

          <option>-framework Security</option>

          <option>-weak_framework StoreKit</option>

          <option>-framework SystemConfiguration</option>

          <option>-framework UIKit</option>

     </linkerOptions>

</platform>

The script runs fine and generates a valide ANE but when I use is in my project I encounter the error above.

Here is my environment:

- Flash Builder 4.7

- AIR SDK 13.0.0.76

- Xcode 5.1 with iOS 7.1

Does anyone have an idea on the source of my problem?

Thank you.

TOPICS
Development

Views

7.8K

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more

Undefined symbols for architecture armv7

Community Beginner ,
Apr 03, 2014

Copy link to clipboard

Copied

Hello,

I'm in the process of creating an ANE for an iOS SDK and I'm encountering issues when using the generated ANE in a test project.

When trying to debug the app on the device via Flash Builder here is the error I'm getting:

Error occurred while packaging the application:

Undefined symbols for architecture armv7:

  "_OBJC_CLASS_$_ASIdentifierManager", referenced from:

      objc-class-ref in com.mycompany.MySDKANE.o

ld: symbol(s) not found for architecture armv7

Compilation failed while executing : ld64

It looks like the error is saying that I've not added the AdSupport.framework when packaging my ANE.

When I look at the ANT script I've implemented I can see that the platform.xml file correctly lists all the iOS frameworks I need.

Here is an excerpt of my ANT script :

[...]

<!-- Package -->

     <target name="package" description="Create the extension package">

          <exec executable="${flex.sdk}/bin/adt" failonerror="true" dir="../temp">

               <env key="AIR_SDK_HOME" value="${flex.sdk}"/>

               <arg value="-package"/>

               <arg value="-target"/>

               <arg value="ane"/>

               <arg value="${name}.ane"/>

               <arg value="../build/extension.xml"/>

               <arg line="-swc swc/${name}.swc"/>

               <arg line="-platform iPhone-ARM -platformoptions ../build/platform.xml -C ios/ ."/>

               <arg line="-platform iPhone-x86 -platformoptions ../build/platform.xml -C iosSimulator/ ."/>

               <arg line="-platform default -C default/ ."/>

          </exec>

        <move file="../temp/${name}.ane" todir="../bin"/>

        <delete dir="../temp"/>

    </target>

[...]

and the content of the platform.xml :

<?xml version="1.0" encoding="utf-8" ?>

<platform xmlns="http://ns.adobe.com/air/extension/13.0">

     <sdkVersion>7.1</sdkVersion>

     <linkerOptions>

          <option>-ios_version_min 5.1.1</option>

          <option>-framework Accelerate</option>

          <option>-weak_framework AdSupport</option>

          <option>-framework CoreGraphics</option>

          <option>-framework Foundation</option>

          <option>-framework QuartzCore</option>

          <option>-framework Security</option>

          <option>-weak_framework StoreKit</option>

          <option>-framework SystemConfiguration</option>

          <option>-framework UIKit</option>

     </linkerOptions>

</platform>

The script runs fine and generates a valide ANE but when I use is in my project I encounter the error above.

Here is my environment:

- Flash Builder 4.7

- AIR SDK 13.0.0.76

- Xcode 5.1 with iOS 7.1

Does anyone have an idea on the source of my problem?

Thank you.

TOPICS
Development

Views

7.8K

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Apr 03, 2014 0
Community Beginner ,
Apr 04, 2014

Copy link to clipboard

Copied

Here is a link to the test ANE  : http://cl.ly/UoKm

I feel that the frameworks I'm specifiying, AdSupport in the platform.xml file, are not taken into account when packaging the ANE.

Some help would be greatly appreciated.

Thank you.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Apr 04, 2014 0
Community Beginner ,
Apr 10, 2014

Copy link to clipboard

Copied

Hi all, I'm still struggling with this issue.

Some help would be greatly appreciated.

In advance, thank you.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Apr 10, 2014 0
Community Beginner ,
Apr 16, 2014

Copy link to clipboard

Copied

I looks like AIR SDK 13.0.0.x does not include the -platformoptions when packaging the ANE in the ANT build script.

Just tried with a previous version of the AIR SDK 4.0 and the ANE is created and the iOS frameworks in my platform.xml are finally included.

Someone in the staff can confirm the bug?

Thank you.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Apr 16, 2014 1
Apr 16, 2014

Copy link to clipboard

Copied

Hi karagoal,

Thanks for reporting the issue. The bug is reproducible at our end and we're investigating it.

-Nimisha

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Apr 16, 2014 1
New Here ,
Jul 30, 2014

Copy link to clipboard

Copied

Any updates on this issue? My company is running into the same issue.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Jul 30, 2014 0
Jul 30, 2014

Copy link to clipboard

Copied

Hi idle,

Issue is fixed in latest build of AIR 14. Please use the same build for packaging your app.

-Nimisha

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Jul 30, 2014 0
New Here ,
Jul 31, 2014

Copy link to clipboard

Copied

Thanks for the follow up. I was on Air 13 and upgraded to Air 14, but unfortunately the problem remains. Here's the exact error. It might be specific to the ANE we're packaging, but it only recently started happening. I forget exactly at which Air version, but I believe 3.4 worked with this ANE:

Error occurred while packaging the application:

ld: warning: CPU_SUBTYPE_ARM_ALL subtype is deprecated: C:\<MY USER NAME>\AIRSDK\\lib\\aot/lib/libDebugger1.arm-air.a(avmplusDebugger.cpp.o)

Undefined symbols for architecture armv7:

  "_OBJC_CLASS_$_ASIdentifierManager", referenced from:

      objc-class-ref in libcom.freshplanet.ane.AirDeviceId.a(AirDeviceId.o)

ld: symbol(s) not found for architecture armv7

Compilation failed while executing : ld64

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Jul 31, 2014 0
Aug 01, 2014

Copy link to clipboard

Copied

Please share the files(ANE contents i.e.extension.xml, swc, XCode project,etc and AIR sample app contents i.e. swf, app-xml, sources, assets.) with me so that I can reproduce issue at my end.

-Nimisha

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Aug 01, 2014 0
New Here ,
Aug 06, 2014

Copy link to clipboard

Copied

Sure. I'll try to put together a bare minimal set of files that recreate the issue. I'll get back to you as soon as I can. Thanks for your help.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Aug 06, 2014 0
New Here ,
Aug 12, 2014

Copy link to clipboard

Copied

I have the sam issue with Parse SDK. ANE is generated without errors but project compilation fails with error:

Undefined symbols for architecture armv7:

  "_OBJC_CLASS_$_PFPush", referenced from:

My platformoptions.xml is:

<platform xmlns="http://ns.adobe.com/air/extension/3.5">

  <sdkVersion>6.1</sdkVersion>

    <linkerOptions>

        <option>-ios_version_min 5.0</option>

        <option>-framework Parse</option>

    </linkerOptions>

    <packagedDependencies>

        <packagedDependency>Parse.framework</packagedDependency>

    </packagedDependencies>

</platform>

Some help would be greatly appreciated.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Aug 12, 2014 0
Community Beginner ,
Sep 09, 2014

Copy link to clipboard

Copied

This is a big blocker for me also. Any update on plans to fix this would be much appreciated.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Sep 09, 2014 0
Adobe Employee ,
Sep 10, 2014

Copy link to clipboard

Copied

Hi,

Could you please share a sample app with me at govindag@adobe.com<mailto:govindag@adobe.com>.

Thanks

Govinda Gupta

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Sep 10, 2014 0
Community Beginner ,
Sep 10, 2014

Copy link to clipboard

Copied

It's working for me now. I rebuilt my *.a file from x-code, changing the output from "simulator" to "ios device". Then repackaged my .ane.  This seems to have fixed it.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Sep 10, 2014 0
New Here ,
Jan 04, 2017

Copy link to clipboard

Copied

Did you ever manage to fixed this issue. I'm using Flex 4.6, AIR 14. I can package my ANE but when I try to package my IPA on Windows I get the same type of issue:

     [java]   "_OBJC_CLASS_$_UIVisualEffectView", referenced from:

     [java]       objc-class-ref in libgeolock.mobi.geoscan.ext.GeoScanExt.a(IPDFCameraViewController.o)

     [java] ld: symbol(s) not found for architecture armv7

     [java] Compilation failed while executing : ld64

I've managed to package my IPA with Mac using the -platformsdk flag to my iPhoneOS10.2 SDK. But this is not the ideal solution seeing that our servers are all Windows servers.

If I leave -platformsdk out on Mac I get the following error:

     Id: framework not found ModelIO for architecture armv7

     Compilation failed while executing : ld64

When I try to use -platformsdk on Windows with iPhoneOS.sdk I get the following error:

     [java] Compilation failed while executing : ld64

     [java] ld: library not found for -lgcc_s.1

Any help would be appreciated. I've tried with numerous different versions of AIR but this introduces a lot of other errors. Thanks in advance.

Here is my platformoptions for iOS:

<platform xmlns="http://ns.adobe.com/air/extension/14.0">

    <sdkVersion>8.0</sdkVersion>

    <linkerOptions>

        <option>-ios_version_min 8.0</option>

        <option>-lc++</option>

        <option>-ObjC</option>

        <option>-framework AssetsLibrary</option>

        <option>-framework AVFoundation</option>

        <option>-framework CoreMedia</option>

        <option>-framework CoreGraphics</option>

        <option>-framework CoreVideo</option>

        <option>-framework Foundation</option>

        <option>-framework UIKit</option>

        <option>-framework OnyxKit</option>

        <option>-framework onyx-core</option>

        <option>-framework opencv2</option>

    </linkerOptions>

    <packagedDependencies>

    <packagedDependency>libBarcodeScanner.a</packagedDependency>

    <packagedDependency>Frameworks/OnyxKit.framework</packagedDependency>

    <packagedDependency>Frameworks/onyx-core.framework</packagedDependency>

    <packagedDependency>Frameworks/opencv2.framework</packagedDependency>

    </packagedDependencies>

</platform>

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Jan 04, 2017 0
Community Beginner ,
Jan 16, 2017

Copy link to clipboard

Copied

Hi,

I have tried the same scenario with shared ANE at my end. Packaging is working fine. Please try out with Latest AIR SDK build (Version 24.0.0.180)

Link: http://www.adobe.com/devnet/air/air-sdk-download.html

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Jan 16, 2017 0