0

I'm getting this error when compiling my project and linking the Flurry Analytics library. Ony when compiling to the simulator. Compiling to device works fine.

The error is: Undefined symbols: "__Unwind_Resume", referenced from: +[FlurryAPI setAppVersion:] in libFlurry.a(FlurryAPI.o)

I found someone saying the solution was to add "-cxx -lgcc_eh" to my build parameters and this also makes the error go away. However then I get:

The assembly mscorlib.dll was not found or could not be loaded. It should have been installed in the `/Developer/MonoTouch/Build/simulator/lib/mono/2.0/mscorlib.dll' directory.

when trying to run or debug the application in the simulator.

I hope someone can help as it would save much time if I was able to test in the simulator instead of installing on the device every time.

Best regards

Soren

poupou
  • 43,413
  • 6
  • 77
  • 174
jub
  • 43
  • 1
  • 7
  • Just using --cxx should be enough, see http://stackoverflow.com/questions/7109548/monotouch-linea-pro-sdk-issue-with-build-arguments Also mscorlib.dll should not be loaded from a '2.0' directory. There's likely something in your code that does that (even if indirectly). Edit your post to include anything else shown in the application output and please state the version of MonoTouch and MonoDevelop you're presently using. – poupou Aug 31 '11 at 11:54

1 Answers1

0

For your main question just using --cxx should be enough, -lgcc_eh should not be required - but you already found that out by yourself. For references see http://ios.xamarin.com/Documentation/Linking_Native_Libraries

mscorlib.dll should not be loaded from a '2.0' directory. There's likely something in your code that does that (even if indirectly). A likely culprit is that you have some assemblies that were compiled against .NET 2.0 (the full framework) and not against MonoTouch 2.1-based profile.

Try removing, one by one, assemblies references in your project and rebuild it (you'll need to adjust your code to do so). Do this for all the binary assemblies (the ones you're not rebuilding from sources in the solution) and not provided by MonoTouch (i.e. the BCL).

Once you find the 'bad' assembly then replace it by one you have built yourself (compiled against MonoTouch-provided assemblies).

poupou
  • 43,413
  • 6
  • 77
  • 174
  • Hmmm ok, I will have to try that, but how come it only does that when I'm compiling to the iOS Simulator. Compiling to device works perfect.. – jub Sep 05 '11 at 12:01
  • Please be specific as you listed two issues. Also make sure your 'extra mtouch arguments' are identical between your all your configuration (debug/release) and plaforms (iPhoneSimulator|iPhone) – poupou Sep 05 '11 at 15:14