Встроить Mono: не удается найти mono-2.0.dll

Я на Windows 8.1 с использованием VS2012.

Я пытаюсь следовать http://www.mono-project.com/docs/advanced/embedding/ встроить Mono CLR в проект C. После некоторой проблемы у меня это сейчас компилируется.
Я использовал файл .def в статье: http://github.com/mono/mono/blob/master/msvc/mono.def
Обратите внимание, что этот файл говорит: LIBRARY mono-2.0.dll

Когда я запускаю его, я получаю сообщение об ошибке, что mono-2.0.dll не может быть найден.

У меня установлен mono-3.2.3, и я нигде не вижу mono-2.0.dll.

  1. Какой mono .dll реализует API mono_xxx (например, mono_jit_init)?
  2. Нужно ли устанавливать env-vars для того, чтобы моно-папка была известна ОС?

Я немного обеспокоен тем, что в документе говорится, что mono-2.0 предназначен для более старых версий, и следует использовать «mono» — но mono.dll также не существует …

2

Решение

Смотрите этот ответ: Получение / компиляция Mono-2.0.dll для встраивания

Библиотеки, которые вы ищете, могут быть найдены в каталоге bin папки моно установки. Собственно после установки моно 3.2.3 в каталоге MONO_INSTALLATION_PATH \ bin \ есть две библиотеки: libmonoboehm-2.0.dll и libmonosgen-2.0.dll (вы должны выбрать либо Бем или же SGen GC реализация)

(Ссылки для Boehm а также SGen Теперь перенаправить на ту же веб-страницу)

Я никогда не использовал встроенный Mono в Windows (я всегда использую Linux), но, возможно, меняюсь в вашем .def файл с этими именами библиотек ваша программа будет работать.

Например, для Boehm вы должны скачать mono.def и отредактируйте это так:

; file generated by create-windef.pl
LIBRARY libmonoboehm-2.0.dll
EXPORTS

Для SGen просто скачайте monosgen.def и отредактируйте это так:

; file generated by create-windef.pl
LIBRARY libmonosgen-2.0.dll
EXPORTS
3

Другие решения


По вопросам рекламы [email protected]