Для начала Mono в Linux сохраняет GAC в виде списка файлов, путей и ссылок между ними. Большая часть кода, который создает базовую моно-среду выполнения, использует флаг времени компиляции с именем MONO_ASSEMBLIES. Это значение по умолчанию установлено в $ prefix / lib в системе сборки.
В большинстве дистрибутивов Linux префикс $ установлен на "/ usr", поэтому MONO_ASSEMBLIES
будет / usr / lib.
С учетом этого фактические базовые пути для GAC $prefix/lib/mono/gac
. Вы также можете установить переменную окружения для моно (MONO_GAC_PREFIX
), которая позволяет вам установить несколько базовых путей для GAC.
Поскольку этот путь можно изменить для каждой установки, а моно позволяет использовать несколько путей с использованием переменной среды, вам может понадобиться базовый путь Assembly.Location . Кроме того, Assembly.GlobalAssemblyCache поможет вам определить, нужно ли вообще проверять его путь.
Надеюсь, это поможет!