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
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.
Please create a new report on
Developer Community or GitHub with
your current version information, steps to reproduce, and relevant error
messages or log files if you are hitting an issue that looks similar to
this resolved bug and you do not yet see a matching new report.
After upgrading to latest stable Xamarin release (220.127.116.11), previous DLL's which were being linked fine are now failing with error MT3001: Could not AOT the assembly.
I've provided the "mtouch-cache" folder so you can reproduce the issue.
My guess is the linker is failing on empty interface declarations.
Version information below.
=== Xamarin Studio ===
Version 5.9.3 (build 1)
Installation UUID: aad8e2c1-53aa-4766-af0b-57b0ba105a0e
Mono 4.0.1 ((detached/ed1d3ec)
GTK+ 2.24.23 (Raleigh theme)
Package version: 400010044
=== Apple Developer Tools ===
Xcode 6.3.2 (7718)
=== Xamarin.iOS ===
Version: 18.104.22.168 (Business Edition)
Build date: 2015-05-21 21:55:09-0400
=== Xamarin.Android ===
Version: 22.214.171.124 (Business Edition)
Android SDK: /Users/Developer/Library/Developer/Xamarin/android-sdk-mac_x86
Supported Android versions:
2.3 (API level 10)
4.0.3 (API level 15)
4.4 (API level 19)
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 ===
=== Xamarin.Mac ===
Version: 126.96.36.199 (Business Edition)
=== Build Information ===
Release ID: 509030001
Git revision: 5a524e1726ed103fdd4fe37e0356f2b35466ce9d
Build date: 2015-06-02 16:35:08-04
Xamarin addins: 51957cfbd06be911b212671ad05c2c6221ac90f9
=== Operating System ===
Mac OS X 10.10.3
Darwin 192-168-1-7.tpgi.com.au 14.3.0 Darwin Kernel Version 14.3.0
Mon Mar 23 11:59:05 PDT 2015
Created attachment 11656 [details]
Created attachment 11711 [details]
Build log with -v -v -v -v
Please note this is a very serious issue for us now since our Apple distribution license has expired and we cannot recompile the app. It's totally down for everyone at the moment.
If a previous version of Xamarin.iOS worked, you can download it from your Xamarin Store account (https://kb.xamarin.com/customer/portal/articles/1699777-how-do-i-downgrade-to-an-older-version-) and use it until we fix this bug.
The recent MT3001 errors comes from additional checks done by the AOT compiler .
That spotted a bug in the linker where an assembly could be invalid (e.g. peverify would not be happy) but that did not affect most application (it never was reported before).
However that new check nows prevent a successful build. As such it's being, temporarily, disabled for 8.10.2.x. You can download it from , it's identical to the beta being released today - but it also removes the check.
 the check is new in XI 8.10.1.x, going back to 8.10.0.x should be fine (or the issue is different) using https://kb.xamarin.com/customer/portal/articles/1699777-how-do-i-downgrade-to-an-older-version
Can you please advise which stable build and ETA this will be permanently fixed in for future maintenance purposes?
Tried  but error still occured and also got about 11 other code-based errors which were never there before (related to Newtonsoft.JSON.dll and use of JObject).
Tried downgrading to 188.8.131.523 but AOT MT3001 error persisted (same stacktrace different dll).
Now am downgrading to 184.108.40.2067 and will see.
220.127.116.117 didnt work either. Same error. Downgrading to 8.9 now.
Sorry. An MT3001 means the AOT compiler did not produce an output file (and the real cause vary and the stack trace is always identical as it comes from `mtouch` not the AOT compiler). Your build log contained the following line:
> Error setting up IGraph`1 class vtable
which can only happen in 8.10.1.x (and 8.10.2 build before the one I linked). That's the error that was removed from the new build  I linked earlier.
However it might not have been the only error - otherwise it would have been fixed (like other reports). Build logs can be difficult to read since all AOT compilation process are done in parallel (and that makes the logs hard to decipher).
It would be useful if you could attach another build log (either with  or with 8.10.0.x or earlier) so we can compare them.
Right now the simplest workaround is to use the previous version of XI that was used to build your application.
Beside the workaround in the 8.10 service releases the root cause is also fixed in XI 8.99 previews.