🍏 Как запускать приложения Mac на Linux
macOS и Linux имеют общее наследие.
К сожалению, это не означает, что приложения могут плавно переходить между операционными системами.
Для запуска приложений Mac в Linux вам понадобится виртуальная машина или слой перехода.
Запустите виртуальную машину MacOS (все приложения)
Самый надежный способ запуска приложений Mac в Linux — через виртуальную машину.
С помощью бесплатного гипервизора с открытым исходным кодом, такого как VirtualBox, вы можете запускать macOS на виртуальном устройстве на вашем компьютере с Linux.
Правильно установленная виртуализированная среда MacOS без проблем запустит все приложения MacOS.
Подобная виртуализация рабочего стола требует значительного объема оперативной памяти, поэтому она может работать некорректно на устройствах с ограниченными ресурсами.
Для машин с техническими характеристиками наилучшим вариантом является виртуализация операционных систем через виртуальную машину VirtualBox.
Использование Darling Translation Layer (только CLI)
Вы также можете запустить слой перехода под названием Darling.
Он работает как WINE, которая создает среду перевода с Windows на Linux, которая позволяет вам запускать некоторые приложения Windows в системах Linux.
Darling пытается достичь той же цели между macOS и Linux.
Поскольку macOS и Linux совместно используют одну и ту же базу в стиле UNIX, Darling менее ресурсоемок, чем WINE, и в большинстве случаев дает лучшие результаты.
В настоящее время Darling может работать только с очень простыми приложениями с графическим интерфейсом и несколькими приложениями командной строки.
Хотя поддержка приложений с графическим интерфейсом является целью проекта, эта функция еще не реализована.
По сути, вы можете надежно запускать оболочку macOS в Терминале и, возможно, не сможете эффективно запускать другие приложения.
Он также содержит огромное количество кода, требующего около 12 гигабайт дискового пространства после сборки.
По сути, это дублирует функциональность операционной системы MacOS.
Поэтому, если вы беспокоитесь о том, что удаленные исполняемые файлы могут повредить вашу систему, вы можете избегать пакетов такого размера.
Сборка и установка дорогой Darling
1. Следуйте инструкциям по установке, чтобы загрузить правильные зависимости для вашего дистрибутива Linux со страницы установки Darling.
В зависимости от вашего дистрибутива вам может потребоваться выполнить длинную команду.
Например, для Ubuntu выполните следующую команду терминала, чтобы загрузить зависимости Darling:
Запускаем Linux приложения на Mac
Запускаем Linux приложения на Mac
Linux обожают многие пользователи во всем мире ввиду его простоты и шикарным способностям индивидуальной настройки благодаря открытому исходному коду. Кроме того, все это абсолютно бесплатно! Многие пользователи Mac предпочитают запускать его в качестве виртуальной машины на VMWare , Parallels , или даже Virtual Box . Однако, иногда вам может понадобиться запустить Linux -приложения без необходимости постоянной смены системы. Используя SSH инструмент под названием X11 через SSH2, можно удаленно загрузить графическое Linux -приложение и юзать его прямо на вашем Mac .
Что вам понадобится:
>> Linux компьютер или виртуальная машина на Mac
>> Apple X11 ( скачать здесь )
Примечание: Вы можете использовать любой дистрибутив Linux , который вам нравится, но инструкции могут незначительно отличаться в зависимости от выбранного вами дистрибутива. Мы будем использовать Ubuntu , установленный на виртуальную машину.
Первым делом в установке приложения X11 является реализация Apple X Window System . Перед загрузкой и установкой X11 по ссылке выше, убедитесь, что приложение еще не было установлено ранее. Собственно процесс установки программного обеспечения мало отличается от обычной установки программ на МАС OS X .
2. Установка SSH в Ubuntu
Прежде чем мы начнем подключения к нашей машине Ubuntu , мы должны сначала установить SSH. SSH (или Secure Shell) — это способ, благодаря которому можно безопасно удаленно подключаться к вашему компьютеру через командную строку при помощи терминала на вашем Маке. По умолчанию эта функция не установлена.
Чтобы установить SSH в Ubuntu , откройте терминал (находится по пути Приложения> Стандартные ). После открытия терминала, введите команды, которые можно найти ниже, одну за другой, а затем нажмите клавишу ввода. Вам будет предложено ввести пароль после первого ввода команды.
sudo apt-get update sudo apt-get install ssh
После успешного завершения установки, и пока мы все еще в терминале, введите следующую команду, чтобы получить IP-адрес вашей Linux машины:
После ввода этой команды на экран поочередно будет выводиться несколько строк текста. IP-адрес под eth0 в поле “inet addr” и будет являться IP-адресом этого компьютера в вашей локальной сети. Именно его мы будем использовать для подключения через SSH в следующем шаге.
3. Подключение через SSH на вашем Mac
После успешного завершения двух предыдущих шагов, теперь вы можете, наконец, подключиться к Linux машине через SSH. Чтобы сделать это, откройте терминал на вашем Mac (находится в папке / Applications / Utilities ) и введите следующую команду:
ssh Username@IPAddress -X
Замените «Username» вашим именем пользователя на вашей Linux -машине, и замените «IPAddress» на адрес, который вы получили выполняя предыдущий шаг.
После ввода этой команды нажмите клавишу «ввод» , подключение будет открыто, и вы заметите, что приложение X11 также автоматически откроется. Это произошло потому, что мы добавили аргумент «-X» в команду, которая дает «сигнализирует» SSH о том, что мы собираемся использовать систему X Window удаленно.
Запуск Mac OS X софта в linux
сабж. есть аналог wine для запуска под linux софта написанного под макось?
Re: Запуск Mac OS X софта в linux
Re: Запуск Mac OS X софта в linux
Re: Запуск Mac OS X софта в linux
Обсуждалось не так давно..
Вроде бы, нашли всего штук пять программ, которые есть ТОЛЬКО под Мак. Все остальные — и под Винду имеются.
Re: Запуск Mac OS X софта в linux
хочу посмотреть несколько программ
Re: Запуск Mac OS X софта в linux
нет конечно. Есть проект GNUStep, который реализовует Cocoa под линукс, но оно такое старое шописец.
Re: Запуск Mac OS X софта в linux
просто мак в этом смысле еще хуже винды.
там вроде бы три полноценных независимых API
эта игра не стоит свеч
Re: Запуск Mac OS X софта в linux
Не такие они и независимые (X-ы не считаем, они на маке не используются по факту). Cocoa — это суть очень навороченная обертка вокруг Carbon, так что если на ляликсе проэмулировать Carbon, то Cocoa заведется сама. Но «ничего у вас не выйдет», Apple-овские фреймворки изобилуют недокументированными API, которые очевидно тем-же Cocoa используются, а что они из себя должны представлять — никто кроме Apple не знает достоверно.
Re: Запуск Mac OS X софта в linux
>Cocoa — это суть очень навороченная обертка вокруг Carbon
Re: Запуск Mac OS X софта в linux
Вообще там QT(QuickTime)+Quartz+Cocoa. Эмуляции это пока не поддается.
Re: Запуск Mac OS X софта в linux
> Cocoa — это суть очень навороченная обертка вокруг Carbon
Откуда дровишки? А то очень похоже на 4.2.
Re: Запуск Mac OS X софта в linux
cocoa и carbon это разные оперы 🙂
Re: Запуск Mac OS X софта в linux
Re: Запуск Mac OS X софта в linux
А как насчет хакинтоша в vmware?
Re: Запуск Mac OS X софта в linux
>если Cocoa не обертка вокруг Carbon
>Так что не знаючи, не суйтесь рыльцем
Cocoa — тулкит от OSX, а карбон — это обертка для совместимости и запуска старых os9 тулз.
Re: Запуск Mac OS X софта в linux
Точнее проги на classic пойдут на os9
проги на cocoa osX only
проги на carbon — os(9,X)
Re: Запуск Mac OS X софта в linux
Вообще говоря, по слухам в 10.6 уже Carbon не будет — равно как и поддержки PPC: http://www.appleinsider.com/articles/08/06/04/apples_mac_os_x_10_6_code_named.
Adobe еще должны свой софт переделать — и в путь. Но, я думаю, это еще не меньше года.
> И спрашивается, если Cocoa не обертка вокруг Carbon, то какого тогда [NSApplication run] спускается в чисто карбоновский CFRunLoopRun* ?
Если глянуть на http://developer.apple.com/documentation/CoreFoundation/Reference/CFRunLoopRe. видно, что CFRunLoopRun — это Core Foundation (на что как бы намекает префикс CF 😉 ), а вовсе не Carbon.
Слышали, что с окончательным переходом Apple с Carbon на Cocoa, компания Corbina переименуется в Cocoina? 😉
Re: Запуск Mac OS X софта в linux
> Cocoa — тулкит от OSX, а карбон — это обертка для совместимости и запуска старых os9 тулз.
Еще раз повторюсь: не зная, не суйте свое рыло, ыы в том числе.
Вокруг чего простите Carbon обертка, вокруг Mach и BSD API? Carbon это нижний уровень архитектуры OS X, и все вышележащее его использует.
А то, что «а карбон — это обертка для совместимости и запуска старых os9 тулз.» — это да, Apple такими красивыми словами пишет в документации по Cocoa для чайником, дабы расхвалить последнюю. Однако по факту Cocoa целиком и полностью базируется на карбоне, и карбон является такой-же неотемлемой частью OS X, как WinAPI уровень в винде (имеются в виду XP / 2k, про свисту я ничего не знаю): какие-то библиотеки возможно и используют NT Native API, но большая часть всего базируется на WinAPI, при этом можно сколько угодно обзывать WinAPI устаревшим фреймворком, оставленным только для совместимости, умалчивая тот факт что 99% кода системного используют WinAPI. Так и Carbon можно обозвать устаревшим фреймворком, но для этого надо сначала переписать весь код Cocoa, так что-бы Cocoa напрямую использовала BSD и Mach интерфейсы, а до тех пор, пока Cocoa будет использовать Carbon, ни о какой «обертки для совместимости и запуска старых os 9 тулз» речи быть не может.
Если вам мои слова не кажутся убедительными, присмотритесь еще раз к backtrace, вас он не убеждает? Ну тогда вы полный ФГМ, что с вами спорить.
Кстати говоря, чтоб вы знали, Carbon не позволяет напрямую запускать OS 9 тулзы, он лишь облегчает перенос этих приложений на OS X, на уровне исходных кодов. А для запуска OS 9 приложений на PowerPC маках был эмулятор классики, который, что-бы знали, упразднили в Intel версии OS X, так что на новых маках запускать OS 9 тулзы уже никак не получится.
Ну и последний гвоздь в твой гроб: вот у меня стоит iPhone SDK beta5, я иду в каталог /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.0.sdk/System/Li brary
Захожу в каталог Frameworks, и вижу:
Carbon.framework отсутствует, вы могли бы радоватся, однако другие составляющие карбона: CoreFoundation, CoreGraphics, CFNetwork — все это и тут есть, ну и для проверки сделаем:
$ grep -r CFRunLoopRun * 2>/dev/null
Binary file AudioToolbox.framework/AudioCodecs matches
Binary file AudioToolbox.framework/AudioToolbox matches
Спрашивается, зачем на iPhone элементы Carbon-а, что-бы запускать старые OS 9 приложения?