Xamarin Linker SDK Only targeting iOS fails under Release

RajeshSonarRajeshSonar USMember
edited April 2015 in Xamarin.iOS

Hi,

I have used OxyPlot library to display few graphs in my iOS app which is developed in Xamarin.

When I am trying to build a package for releasing on app store, I am getting following exception

Error MT2002: Failed to resolve "System.Void OxyPlot.PlotModel::.ctor(System.String,System.String)" reference from "OxyPlot, Version=2014.1.546.0, Culture=neutral, PublicKeyToken=638079a8f0bd61e9" (MT2002)

It works perfectly in Debug mode.

I am using "Link SDK assemblies only" linker options, to keep my package size small.

Please advice.

Tagged:

Answers

  • MarcoTMarcoT USMember ✭✭

    Hi,
    I'm using OxyPlot too.
    Under debug mode all is perfect.
    Under release mode, i can build the app but when my testers try the app with TestFlight, they can't see the graph (The also cant see ImageCircles).

    and I'm using too "Link SDK assemblies only".

  • epetutscepetutsc USMember

    HI,

    I have the same problem. DEBUG-Version is ok. RELEASE-Version is NOT ok. It changed after updating Xamarin.iOS. Screenshots and example are attached.

    Observations

    • it does NOT work on Apple iPad Air 16 GB LTE (MD791FD/A), iOS 8.3. It works on Apple iPhone 5 16GB (MD297DB/A), iOS 8.3
    • it depends on two options: architecture in iOS Build/Advanced tag, and Enable developer instrumentation (debugging and profiling) in iOS Build/General tab
    • test Enable developer instrumentation (debugging and profiling) is unchecked. It seems that ARM64 cannot be combined with another architecture

      • architecture ARMv7 -> OK
      • architecture ARMv7s -> OK
      • architecture ARM64-> OK
      • architecture ARMv7 + ARMv7s-> OK
      • architecture ARMv7 + ARM64-> NOK
      • architecture ARMv7s + ARM64-> NOK
      • architecture ARMv7 + ARMv7s + ARM64-> NOK
    • if Enable developer instrumentation (debugging and profiling) is checked AND Enable Debugging is checked -> PlotView is visible

    • Linker option is Link SDK assemblies only

    Environment

    Apple iPad Air 16 GB LTE (MD791FD/A)

    === Xamarin Studio ===

    Version 5.9.1 (build 3)
    Installation UUID: 1f9ba3d7-f82f-4dc6-9504-ddc57de3a888
    Runtime:
    Mono 4.0.0 ((detached/d136b79)
    GTK+ 2.24.23 (Raleigh theme)
    Package version: 400000143

    === Apple Developer Tools ===

    Xcode 6.3.1 (7703)
    Build 6D1002

    === Xamarin.iOS ===

    Version: 8.10.0.267 (Business Edition)
    Hash: 6481535
    Branch: master
    Build date: 2015-04-27 04:38:13-0400

    === Xamarin.Mac ===

    Version: 2.0.0.262 (Starter Edition)

    === Xamarin.Android ===

    Version: 5.1.0.115 (Business Edition)
    Android SDK: /Users/Villach/Library/Developer/Xamarin/android-sdk-macosx
    Supported Android versions:
    2.3 (API level 10)
    4.0.3 (API level 15)
    4.4 (API level 19)
    5.0 (API level 21)
    Java SDK: /usr
    java version "1.7.0_71"
    Java(TM) SE Runtime Environment (build 1.7.0_71-b14)
    Java HotSpot(TM) 64-Bit Server VM (build 24.71-b01, mixed mode)

    === Xamarin Android Player ===

    Not Installed

    === Build Information ===

    Release ID: 509010003
    Git revision: aad75a6e7e48f18120ce41f47d0ff2c6216f49c3
    Build date: 2015-05-08 12:46:18-04
    Xamarin addins: 1246b3044cbb7f56a217334f8fc5489ef8eefe3f

    === Operating System ===

    Mac OS X 10.10.3
    Darwin Teams-MBP.fritz.box 14.3.0 Darwin Kernel Version 14.3.0
    Mon Mar 23 11:59:05 PDT 2015
    root:xnu-2782.20.48~5/RELEASE_X86_64 x86_64

  • epetutscepetutsc USMember

    Adding var dummy = typeof(OxyPlot.Xamarin.Forms.Platform.iOS.PlotViewRenderer) in FinishedLaunching solved the problem

    see http://forums.xamarin.com/discussion/comment/122219

Sign In or Register to comment.