Я запускаю Ubuntu 12.04 на двух более старых башнях Dell и Mac G5. После большого исследования я стал Моно 3.12.0 для установки на одной из Лощин, но не другой. Требуемый для перемещения моего 3D программного обеспечения печати (который требует Моно 3 +) к G5, потому что это является немного более мгновенным.
Я попробовал различные репозитории, но всегда заканчивал с невстреченными зависимостями и 'Вы держали поврежденные пакеты'. Когда попытка разрешить моновремя выполнения зависимостей, кажется, требуется, который я не могу найти.
В конце я загрузил Моно 3.12.1.tar с Моно веб-сайта разработчика. Это споткнулось во время, Делают с этим:
CC libmonoruntimesgen_static_la-sgen-layout-stats.lo
CC libmonoruntimesgen_static_la-sgen-qsort.lo
CCLD libmonoruntimesgen-static.la
CC pedump.o
CCLD pedump
./.libs/libmonoruntime.a(libmonoruntime_la-loader.o): In function `mono_stack_walk_async_safe':
/home/peter/Apps/mono-3.12.1/mono/metadata/loader.c:2322: undefined reference to `mono_sigctx_to_monoctx'
/usr/bin/ld: pedump: hidden symbol `mono_sigctx_to_monoctx' isn't defined
/usr/bin/ld: final link failed: Bad value
collect2: ld returned 1 exit status
make[3]: *** [pedump] Error 1
make[3]: Leaving directory `/home/peter/Apps/mono-3.12.1/mono/metadata'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/peter/Apps/mono-3.12.1/mono'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/peter/Apps/mono-3.12.1'
make: *** [all] Error 2
Я не могу быть единственным, сталкивающимся с этой проблемой. Извините, я - глупый парень Mac.
Моно Проект предоставляет инструкции установить последние версии Моно, обеспеченных Xamarin:
Debian, Ubuntu и производные
Добавьте Моно ключ подписи GPG Проекта и хранилище пакетов к Вашей системе (если Вы не используете
sudo
, обязательно переключитесь на корень):sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list sudo apt-get update
Выполните обновление пакета для обновления существующих пакетов до последнего доступного. Затем установка, Моно, как описано в разделе Usage.
Примечание: В то время как пакет APT создается против Хрипящего Debian, это совместимо со многими производными Debian (включая Ubuntu), что означает, что можно использовать тот же репозиторий через все эти дистрибутивы.
mod_mono
(Ubuntu 13.10 и позже, Debian 8.0 и позже)Включить
mod_mono
установка на Ubuntu 13.10 и позже, и Debian 8.0 и позже (и их производные), необходимо будет добавить второй репозиторий к системе, в дополнение к универсальному репозиторию Debian/Ubuntu выше (если Вы не будете использоватьsudo
, обязательно переключитесь на корень):echo "deb http://download.mono-project.com/repo/debian wheezy-apache24-compat main" | sudo tee -a /etc/apt/sources.list.d/mono-xamarin.list
[…]
Более старая Ubuntu выпускает (Ubuntu 12.10 и 12.04)
Для включения установки на более старых релизах Ubuntu, таких как Ubuntu 12.04 и Ubuntu 12.10 (и их производные) необходимо будет добавить второй репозиторий к системе, в дополнение к универсальному репозиторию Debian/Ubuntu (если Вы не будете использовать
sudo
, обязательно переключитесь на корень):echo "deb http://download.mono-project.com/repo/debian wheezy-libtiff-compat main" | sudo tee -a /etc/apt/sources.list.d/mono-xamarin.list
[…]
Использование
Пакет
mono-devel
должен быть установлен для компиляции кода.Пакет
mono-complete
должен быть установлен для установки всего – это должно покрыть большинство случаев “блока, не найденного” ошибки.Пакет
referenceassemblies-pcl
должен быть установлен для поддержки компиляции PCL – это разрешит большинство случаев “Платформы, не установленной:.NETPortable” ошибки во время компиляции программного обеспечения.Пакет
ca-certificates-mono
должен быть установлен для получения сертификатов SSL для Подключений HTTPS. Установите этот пакет при столкновении с проблемой, делающей Подключения HTTPS.[…]
Примечания
После установки, завершенной успешно, это - хорошая идея пробежать основное привет, мировые примеры на этой странице для проверки Моно работают правильно.
Моно на Linux прежде 3.12 по умолчанию не доверял никаким сертификатам SSL, таким образом, Вы получили ошибки при доступе к ресурсам HTTPS. Это больше не требуется как 3,12, и позже включайте новый инструмент, который работает на установке пакета и синхронизирует хранилище сертификатов Mono с системным хранилищем сертификатов (на более старых версиях, которые необходимо было импортировать список Mozilla доверяемых сертификатов путем выполнения
mozroots --import --sync
). Некоторые системы настроены способом так, чтобы необходимый пакет не был втянут, когда Моно установлен, в тех случаях удостоверяютсяca-certificates-mono
пакет установлен.