I'm currently continuing to try to build "portable class libraries" or "portable library projects" for cross platform development.
When I try to create any class library which uses System.Func or System.Action, then MonoDevelop always complains about the delegate requiring between one <T1> and ten <T1, ... T10> type arguments.
- use MonoDevelop 3.0.2
- create a new portable library project
- in the generated myClass.cs file, use constructor
- hit compile and the error messages are along the lines of "Using the generic type 'System.Func<T1, T2,...., T9, TResult>' requires '10' type argument(s) (CS0305)
If it helps at all when you look at this bug, then I've seen similar issues when coding the portable libraries and MonoTouch projects within VS2010 using VSMonoTouch.
These have generally been resolved by tweaking the way the project links to mscorlib using instructions from http://slodge.blogspot.co.uk/2012/05/if-you-install-visual-studio-11-and.html
But not sure that will help...
When building the PCL, these diferences occur:
mscorlib resolves to /Developer/MonoTouch/usr/lib/mono/2.1/mscorlib.dll
but is built with /Library/Frameworks/Mono.framework/Versions/2.10.9/lib/mono/2.0/mscorlib.dll
As in the comments:
Current stable mcs can only build against the mscorlib that it's running on.
This makes it ~impossible to build against arbitrary frameworks such as PCL.
The MonoTouch mscorlib has the Action and Func<T>, but the Mono framework does not.
The end part of that comment is:
To fix this, you'll need to update to Mono 2.12, which is currently in alpha.
You're probably running into bug 6649.
You can find a workaround here: http://stackoverflow.com/questions/12041290/monodevelop-is-it-possible-to-switch-pcls-compiler/12062589#12062589
Notice (2018-05-24): bugzilla.xamarin.com is now in
Please join us on
Visual Studio Developer Community and in the
Mono organizations on GitHub
to continue tracking issues. Bugzilla will remain available for
reference in read-only mode. We will continue to work on open Bugzilla
bugs, copy them to the new locations as needed for follow-up, and add
the new items under Related Links.
Create a new report for Bug 5329 on Developer
Community or GitHub if you have new information to add and do not yet see a matching
In special cases on GitHub you might also want the comments:
GitHub Markdown with public comments
Our sincere thanks to everyone who has contributed on this bug tracker
over the years. Thanks also for your understanding as we make these
adjustments and improvements for the future.