Mono mac os как пользоваться

Обновлено: 07.07.2024

Платформа Mono состоит из нескольких компонентов:

Mono Runtime - среда выполнения ECMA Common Language Infrastructure (CLI). Среда исполнения предоставляет компилятор Just-in-Time (JIT), компилятор Ahead-of-Time (AOT), загрузчик библиотек, сборщик мусора и др.

Mono Class Library – было создано множество классов с дополнительной функциональностью специально для Mono, которые выходят за рамки библиотеки базового класса, предоставляемой Microsoft.

Несмотря на предвзятое отношение разработчиков к платформе Mono, многие известные компании используют его. Например:

  • Novell использует Mono для клиентских и серверных приложений;
  • Unity Technologies использует Mono в инструменте моделирования компьютерных игр Unity 3D. Это дает возможность создавать кросс-платформенные видеоигры;
  • Artisteer использует Mono для переноса своего веб дизайнера на другую платформу. Начиная с версии 2.2, можно запустить свое программное обеспечение с помощью Mono.

Что же предлагает FastReport.Mono?

Давайте рассмотрим детальнее. Итак, с FastReport.Mono можно работать в разных операционных системах. Ну конечно же, Mono кросс-платформенный фреймворк. Поэтому нам доступны системы: Windows, MacOs, семейство Linux.

Для работы с Mono, а соответственно и с FastReport.Mono подходят следующие среды разработки:

Microsoft Visual Studio (под Windows), MonoDevelop (Windows, MacOs, Linux) и Embarcadero Delphi Prism (Windows, MacOs, Linux).

Источники данных, доступные по умолчанию: XML, CSV. А для подключения к базам данных нужно использовать источник данных пользовательского приложения, или внешние коннекторы, устанавливаемые в систему.

Интересные особенности генератора отчетов:

  • диалоговые формы – перед отображением отчета можно вывести форму с элементами управления. Таким образом пользователь отчета может задать параметры отображения отчета. Например, отфильтровать нужные значения;
  • наследование отчетов – возможность использовать отчет как базовый шаблон для других. Это удобно, когда вы делаете много подобных отчетов. Кроме того, изменения в базовом отчете отобразятся во всех наследованных отчетах. Это тоже можно отнести к плюсам. Ведь не нужно изменять большое количество отчетов, если требуются правки базового шаблона;
  • Компонент предварительного просмотра отчета – позволяет просматривать отчет и делать его экспорт, отправлять email, а также управлять просмотром отображая план отчета, переходить между страницами;
  • Дизайнер отчета может быть вызван отдельно как самостоятельная программа, может быть вызван во время разработки пользовательского приложения, а также во время выполнения пользовательского приложения. Последний вариант очень интересен. По сути вы встраиваете дизайнер в свою программу и даете пользователю возможность редактировать отчеты самостоятельно.
  • Продвинутый режим печати – еще один продуманный инструмент. Настройки печати очень богатые.

Список возможных экспортов отчета достаточно большой:

  • Acrobat PDF;
  • Images Jpeg/PNG/BMP/GIF/TIFF;
  • RichText;
  • Word OOXML (docx);
  • PowerPoint OOXML (pptx);
  • HTML;
  • MHT (web archive);
  • Microsoft XPS;
  • Excel OLE;
  • Excel XML;
  • Excel binary (xls);
  • Excel OOXML (xlsx);
  • Comma separated values (CSV);
  • DBF (table);
  • Open Document Speadsheet (OpenOffice);
  • Open Document Text (OpenOffice);
  • Email;
  • PostScript;
  • Json;
  • LaTex;
  • FTP;
  • Text File / Matrix Printer;
  • Clouds (DropBox);
  • Clouds (Box);
  • Clouds (FastReport Cloud);
  • Clouds (GoogleDrive);
  • Clouds (OneDrive).

Обратите внимание, последние элементы списка – Clouds – это по сути сохранение отчета в облачные сервисы.

Я пытаюсь запустить установку Mono на Mac (версия OS X 10.10.5), и хотя установка утверждает, что она успешно завершена, я не могу вызвать mono из терминала.

Чтобы установить его, я запустил uninstallMono.sh от имени пользователя root, чтобы убедиться, что у нас нет остатков, затем запустил MonoFramework-MDK-4.0.4.1.macos10.xamarin.x86.pkg. Установщик завершился успешно, но попытка вызвать моно возвращается

Моно фреймворк действительно установлен:

. но его нет в /usr/bin , и попытка найти его исполняемый файл с помощью which mono ничего не возвращает.

Обновление (так как это все еще получает представления два + года спустя):

В последних версиях процесса установки Mono (5.x) создается файл ( mono-commands ) в /etc/paths.d , который содержит путь:

Так что /usr/local/bin больше не используется .

Оригинал

Более новые версии mono соответствуют требованиям El Capitan: не устанавливать что-либо в / usr/bin и, следовательно, теперь используется / usr/local/bin. Я не уверен, какой моно 4.x релиз, который начался в .

Но я бы предположил, что у вас нет пути/usr/local/bin (?), Попробуйте:

В моем случае у меня установлена ​​4.2.0:

В OS X El Capitan выполните следующее в Terminal для поддержки команды mono

Лучше использовать следующий экспорт:

экспорт PATH = $ PATH: /Library/Frameworks/Mono.framework/Versions/Current/bin/

  1. Вы не изменяйте предыдущий порядок PATH (это очень важно !!)
  2. Вы будете использовать текущую версию (при обновлении версии нет необходимости изменять переменную PATH)

Другой вариант ( лучший вариант ) - включить новую строку в конец файла /etc/paths с содержимым: /Library/Frameworks/Mono.framework/Versions/Current/bin

В этом случае путь будет доступен для всех пользователей в системе.

После первой установки Mono Framework с использованием brew cask я обнаружил, что само brew предлагает Mono (!)

Сначала я удалил Mono.

И установил его с помощью brew install mono и удалил все изменения конфигурации в

Похоже, это намного лучше

Сначала я использовал brew cask для установки Mono Framework, и мне пришлось добавить /Library/Frameworks/Mono.framework/Home/bin в переменную среды PATH .

Поскольку я использую oh-my-zsh , я определил MONO_HOME в

/.zshrc и соответственно изменил PATH :

С этим mono доступно:

Я смотрел эту страницу, потому что у меня тоже были проблемы с установкой Mono (впервые) на El Capitan. Я обнаружил, что фреймворк был установлен, но команды не были помещены в/usr/local/bin. Символьная ссылка на них, похоже, не работает, потому что я получаю ошибки при попытке использовать команду mono, и она ищет библиотеки в неправильном месте.

То, что я наконец нашел работающим (методом проб и ошибок), установило $ PATH для платформы Mono, используя команду в терминале:

Так как я не программист и не программист (по крайней мере, долгое время и никогда не работающий в OS X), это позволило мне запускать Duplicati с использованием mono (именно поэтому я и хотел в первую очередь), но я не конечно, если это правильный способ решить эту проблему или даже если это должно быть сделано вообще. Кто-нибудь с реальным опытом программирования комментировать или уточнять?

El Capitan теперь защищает определенные системные каталоги в "безродном" режиме (например, защита целостности системы). Если вы выполните команду ls -lO/System/Library/LaunchDaemons, вы увидите, что каталоги и файлы в них теперь помечены как "ограниченные".

Вы можете отключить режим без root, например:

  1. Перезагрузитесь в режиме восстановления (перезагрузитесь и удерживайте Cmd-R)
  2. Откройте терминал
  3. Используйте эту команду: csrutil disable

Перезагрузитесь и запустите команду, которая работала до El Capitan

Когда вы закончите, настоятельно рекомендуется повторно включить SIP, выполнив те же шаги, но используя csrutil enable на шаге 3.

Я столкнулся с проблемой с той же основной причиной, пытаясь установить модули pear/pecl и приложения macports/homebrew. Обычно им необходимо установить файлы в/usr/include и/usr/lib, которые теперь также ограничены.

Примечание. Предыдущие ответы в Интернете об этой проблеме содержат инструкции по изменению настроек NVRAM, но Apple заявили, что метод NVRAM перестанет работать с общедоступным выпуском El Capitan. Релиз GM уже отключил обходной путь NVRAM, поэтому этот ответ должен дать вам то, что вам нужно для продвижения вперед.

Краткое описание: Atm, установщик моно-фреймворка работает корректно, только если вы устанавливаете его в root. Он автоматически добавит /Library/Frameworks/Mono.framework/Versions/Current/Commands в $PATH , но я не знаю, нужно ли вам добавлять /Library/Frameworks/Mono.framework/Versions/Current/bin/ вручную или все просто работает. ( Commands является символической ссылкой на bin , но все равно может не работать)

Более подробно: я недавно установил моно из MonoFramework-MDK-4.8.0.520.macos10.xamarin.universal.pkg . Я установил его в /Volumes/osxapps/ вместо root, но при установке все еще ожидалось, что все будет в root. Он добавил /Library/Frameworks/Mono.framework/Versions/Current/Commands в $PATH , но все в /Library/Frameworks/Mono.framework/ было просто пустыми каталогами. Все файлы находились в /Volumes/osxapps/Library/Frameworks/Mono.framework/.

Кроме того, многое из того, что было в /Volumes/osxapps/Library/Frameworks/Mono.framework/ , включая Commands , было не папками, а символическими ссылками, которые не работали, потому что они ожидали, что папки находятся в корневом каталоге. Например: если все было установлено в корневом каталоге, /Library/Frameworks/Mono.framework/Versions/Current/Commands является символической ссылкой на /Library/Frameworks/Mono.framework/Versions/Current/bin , а /Library/Frameworks/Mono.framework/Versions/Current/ также является символической ссылкой.

в .bash_profile , в

/ , что позволило мне запускать команды/исполняемые файлы, но все они умерли с ошибками, потому что все еще ожидали, что что-то будет в корне.

Поэтому я скопировал папку из /Volumes/osxapps/Library/Frameworks в /Library/Frameworks/ , и это решило все ошибки, и все работает правильно, но теперь у меня есть две копии Mono.framework, и я не хотел, чтобы он был установлен в корне в первую очередь, потому что root находится на ssd, а пространство ограничено.

Лучшим решением было бы удалить mono в соответствии с инструкциями внизу эта страница , а затем переустановить на root.

Тем не менее, для меня все же было бы лучше установить на /Volumes/osxapps/ , но я не знаю, как лучше это сделать. (Я мог бы просто воссоздать кучу символических ссылок). Я собирался сказать монопроекту, что их установщик все испортит, если вы не устанавливаете в root, но я не уверен, что это лучший способ сделать это. Итак, вместо этого я разместил здесь то, чему я научился до сих пор, в надежде, что это может помочь кому-то еще.

Нужно, чтобы сабж запускался также под Mac OS X (и именно там!).

Как на Windows машине (т.е. в Visual Studio) откомпилировать проект под Mono?

Это еще бесплатно, или за такую возможность уже нужно платитъ?


Hertz ★★★★★ ( 27.01.15 10:41:26 )
Последнее исправление: Hertz 27.01.15 10:41:57 (всего исправлений: 1)

а как же Write One, Run everywhere?

waker ★★★★★ ( 27.01.15 11:10:19 )
Последнее исправление: waker 27.01.15 11:11:39 (всего исправлений: 1)

Как я знаю, поддержки winforms в mono нет.


На винде то есть.


Поддержка как раз winforms в моно есть.



Поддержка winforms в моно? Лучше бы её небыло. Окромя xamarin за деньги есть monobjc. Сам её сильно не кушал, хелловорлды нормальные. Но проще замарин купить, имхо.

Так у ТС в слове Java - 4 ошибки.


Эм. Открыть студией солюшен и сконпелять не пробовал? (Хотя, моно есть и под венду)


Штоа? Прога на винформсе в моно работает еще как. В монодевелопе нет визуального редактора, но это не мешает быть винформсам в моно.


Замарин вообще не при чем, если речь про винду.



Замарин вообще не при чем, если речь про винду.

Название темы прочесть не судьба?


Как на Windows машине (т.е. в Visual Studio) откомпилировать проект под Mono?

оп-псто прочесть не судьба? Раньше для портабельности была утилита MoMa, которую натравливали на сорц на шарпе и было понятно, взлетит где-то кроме винды или нет.

slackwarrior ★★★★★ ( 27.01.15 15:10:08 )
Последнее исправление: slackwarrior 27.01.15 15:15:11 (всего исправлений: 1)


у меня без перекомпиляции работали WCF службы и winforms приложения с винды на линуксе :) (А шрефты поставить - не?)



Xamarin apps share code across all platforms.


Что это делает на лоре? На макфак.

а как же Write One, Run everywhere?

1) Тебе никто этого не обещал


Или WPF, например)



Xamarin apps share code across all platforms.

ну да, CLI интерфейс рулит.И вообще мышь - зло. Ratpoison рулит

Не надо использовать мощный инструмент не по назначению.

Гуйня на winforms это вообще позор

ну да, CLI интерфейс рулит.И вообще мышь - зло. Ratpoison рулит

Ну да, точно баран.

Надо полагать, херовенько ты программировал. Не программируй больше, гуешлепщик.

Если вы хотите использовать шрифт SF Mono в другом месте MacOS и в других приложениях Mac, следуйте приведенным ниже инструкциям, чтобы установить пакет SF Mono в общую библиотеку библиотек шрифтов. Это позволит использовать SF Mono в качестве шрифта по умолчанию в такие приложения, как BBEdit, TextEdit, iTerm,

Быстрое примечание: SF Mono доступен только в macOS Sierra, macOS High Sierra и более поздних версиях MacOS. Более ранняя версия системного программного обеспечения не включает шрифт SF Mono в приложении Terminal, и, следовательно, это не будет применимо к предыдущим выпускам системного программного обеспечения.

Как установить SF Mono Font в Mac OS

  1. Откройте Finder в Mac OS
  2. Выдвиньте меню «Перейти» и выберите «Перейти к папке», затем введите следующий путь:

Шрифты будут успешно установлены и доступны для использования в других приложениях Mac, таких как BBEdit, TextWrangler и TextEdit.

Шрифт SF Mono в Mac OS

* Обратите внимание, что вы предпочитаете игнорировать уведомления об ошибках шрифта. Маловероятно, что это вызовет какие-либо проблемы, но это может указывать на некоторые трудности с отображением некоторых шрифтов в некоторых ситуациях. Если шрифты выглядят странно, отображать нечетные символы или иначе работать плохо, не используйте их. Шрифт SF Mono должен хорошо работать в любом текстовом редакторе, но может работать не так хорошо, как замена системного шрифта (аналогично замене стандартного системного шрифта в macOS High Sierra на Lucida Grande) и может не отображаться должным образом в некоторых других ситуациях. Вы можете избежать ошибок шрифта, сначала скопировав шрифты на ваш рабочий стол, а затем попытаться их установить.

Стоит отметить, что это фактически то же самое, что вы устанавливаете любой шрифт в Mac OS, причем заметная разница заключается в том, что SF Mono просто скрывается в приложении Terminal до тех пор, пока он не будет установлен как системный шрифт.

Установка SF Mono в Mac OS через терминал

Если вы являетесь продвинутым пользователем, которому нравится оставаться в командной строке, вы можете ускорить установку SF Mono, выполнив одну строку синтаксиса:

cp -R /Applications/Utilities/Terminal.app/Contents/Resources/Fonts/. / Library / Fonts /

Hit Return и содержимое подкаталога Fonts Terminal.app будет скопировано в системный каталог Fonts.

Установка SF Mono через командную строку

Обратите внимание, что шрифты также находятся в Xcode по адресу:

И вы также найдете обычную версию SF Mono в подкаталоге содержимого консоли.

И в случае, если вам интересно, SF Mono НЕ входит в SF-шрифт с веб-сайта Finger Apple Developer.

Читайте также: