Запуск программ командной строки OS X в Ubuntu
Учитывая, что Mac OS X является производной от UNIX BSD (Berkeley Systems Distribution), я бы предположил, что в той или иной мере можно будет запускать программы OS X из командной строки в Ubuntu. Я действительно говорю о тех скомпилированных программах, которые не используют никаких функций пользовательского интерфейса (в моем случае мне нужно запустить инструмент преобразования исполняемых файлов). Конкретный инструмент, который мне интересен, работает на Mac OS X Mavericks.
Если кто-то знает способ достижения этого, возможно, перекомпилируя ядро Linux или установив какое-либо системное программное обеспечение в Ubuntu, пожалуйста, дайте мне знать. Я использую Ubuntu 12.04.2 LTS, но я также могу обновить систему, если это абсолютно необходимо.
2 ответа
Linux и OS X - две совершенно разные операционные системы, такие как Linux и BSD, OS X и Windows, Windows и Solaris и т. Д. Если у вас нет исходного кода для инструмента, который вы пытаетесь использовать, вы не сможете просто скопируйте его из ОС в ОС и ожидайте, что он будет работать. Хотя для его запуска может потребоваться "ничего от ввода-вывода" (не правда ли, все компьютерные программы - это просто "ничего, кроме ввода-вывода"?), Он был построен определенным компилятором для определенной цепочки инструментов и ожидает определенных библиотек с определенные функции должны быть в определенных местах, чтобы это работало.
Ищите источник и попытайтесь перекомпилировать в Linux, или ищите эквивалент Linux.
Это, вероятно, не поможет в вашей ситуации, но есть три основных способа перемещения команд между юниксами и способ обмана, который может помочь.
найдите тот, который уже был портирован: например, стандартная команда mailx была реализована много раз. Debian и, следовательно, Umbutu имеют как минимум три версии.
Перекомпиляция / порт: если у вас есть доступ к исходному коду, перекомпиляция на другой платформе обычно довольно проста, но иногда возникают некоторые перехваты (что вы имеете в виду, select изменяет / не изменяет свои параметры).
бинарная эмуляция: здесь у вас есть двоичный файл, который был скомпилирован для одной операционной системы, работающей в другой, это усложняется, когда у вас есть динамические библиотеки, и требует конкретной и подробной информации, например, что говорит ldd. Вы, вероятно, хотите сильно опираться на форумы для вашего конкретного эмулятора. Если вы хотите пойти по этому пути, проверьте http://darling.dolezel.info/en/Darling
чит: обмен файлами и ssh. вам нужно общее расположение для файлов, доступных для обоих компьютеров, nfs samba, ftp и т. д. поместите файл туда, где его сможет прочитать mac, используйте ssh для входа в mac из linux, выполните одну команду, возможно перенесите результаты, продолжите с твоим днем.