首先,我看过this question,虽然问题看起来很相似,但不一样。
我正在使用./configure --with-profile4=yes --with-profile4_5=no
运行修剪后的单声道,使用4.5个配置文件构建。
我有一个针对.NET 4.0的应用程序,使用mono xbuild
构建。当我针对修剪下来的单声道安装运行它时,我收到此错误:
The assembly mscorlib.dll was not found or could not be loaded.
It should have been installed in the `/opt/my-app/mono/lib/mono/4.5/mscorlib.dll' directory.
现在,我没有引用4.0装配 - 没有4.5,AFAICS。
为什么我会收到此错误?
我不确定它是否相关,但是在使用xbuild
进行构建时会收到此警告(但在使用msbuild
构建时却没有,但我仍然得到mscorlib.dll
1}}当我对着修剪过的单声道跑道时):
warning CS1685: The predefined type `System.Runtime.CompilerServices.ExtensionAttribute' is defined multiple times.
Using definition from `mscorlib.dll'
我也不确定这是否相关,但构建机器确实安装了.NET 4.5。
答案 0 :(得分:3)
我想通了 - 我需要将MONO_PATH设置为:
/opt/my-app/mono/lib/mono/4.0:/opt/my-app/mono/lib/mono/3.5:/opt/my-app/mono/lib/mono/2.0:.
所以我需要告诉它在哪里寻找图书馆;我(错误地)假设根据单声道可执行文件的位置自动进行。