History of remapping
The Mono runtime was shipped with the .NET 1.1 library APIs,
but until recently we did not have strong names or Global
Assembly Cache support so our libraries did not actually
encode the proper information about references.
Lacking this, in the early days of Mono we hardcoded our code
generator to set the values to the version of the .NET 1.0 API
to allow code to move back and forth between Windows and Linux.
With the deployment of the GAC to Mono we no longer distribute
assemblies without version information, and they are only
available through a versioned directory.
To assist people in migrating their applications from the
pre-Beta rollout of Mono, the runtime has a special feature to
remap references to the System.* assemblies with version 3300
to version 5000 but a warning is displayed:
Compat mode: the request from XXXX to load YYYY was remapped (http://www.go-mono.com/remap.html)
To solve this issue, use a new version of Mono to rebuild the
program listed as XXXX, this will remove the warning.
Alternatively, if you do not have the source, you can set the
environment variable MONO_SILENT_WARNING to eliminate those