Замена xcode программным обеспечением macports - PullRequest
0 голосов
/ 03 января 2011

Я пытался заменить все в xcode на то, что я могу получить из macports.До сих пор я устанавливал xcode, затем macports, затем использовал macports для установки gcc, gcc_select, gmake, elf-bintools, bintools, arm-bintools (просто чтобы убедиться, что я заменил все bintools), а затем удалил весь xcode.Затем я связал / usr / bin / make с / opt / local / bin / gmake и использовал gcc_select, чтобы выбрать gcc44 - тот из macports.Я также экспортировал все пути исполняемых файлов bintool в путь .profile.

Я был уверен, что это сработает (хотя я должен был знать лучше, работая над ним 48 часов подряд), но ничего не настроил, иВсе файлы журналов имеют общую ошибку:: info: configure configure: error: Компилятор C не может создавать исполняемые файлы

У меня такое ощущение, что это как-то связано с библиотеками, но я действительно не уверен.

Я использую Mac 10.5.8.

Если это действительно «невозможно», какие части xcode мне нужны для работы macports?Например, я могу удалить папку xcode без проблем.

Ответы [ 4 ]

4 голосов
/ 03 января 2011

Если вы действительно имеете в виду « все в Xcode», это невозможно.Однако, если вы просто говорите об инструментах командной строки (что более вероятно), это может быть возможно, но это звучит как ужасная идея.Если вы не пишете приложения для Mac или iOS, само приложение XCode может вас не заинтересовать.

Разъяснение того, чего вы на самом деле надеетесь достичь с помощью минимального набора инструментов, который вы планируете использоватьпоможет нам дать лучший ответ.Тот факт, что вы упомянули arm-bintools, заставляет меня догадываться, что вы, возможно, надеетесь разработать приложения для iOS - и я повторю предупреждения из комментариев, которые вы просите о боли и не получаете ничего заметного.Я понимаю, что хочу уменьшить использование диска, но выделение большего жесткого диска будет намного дешевле, чем дополнительное время, которое вы потратите, просто пытаясь сделать то, что делает Xcode.(Не только стоимость установки, но и потеря производительности при ежедневном использовании.)

Кстати, одна из причин того, что версия gcc в Xcode может отставать от версии в MacPorts, заключается в том, что Apple крайне инвестирует в замену gccс clang-llvm, который вы найдете значительно быстрее и в более активном развитии.


Редактировать в ответ на OP:

Учитывая разъяснение, что целью является только разработка научного вычислительного кода, есть еще один вариант.Вы по-прежнему хотите установить XCode, чтобы получить все инструменты командной строки, но вы можете избавиться от XCode и других приложений с графическим интерфейсом, которые вам не нужны.

При запуске установщика XCode,Пауза на экране Тип установки - установите флажок «Разработка UNIX» и снимите все, что вы можете.Это установит компоненты в /System/Library и /usr.(Вы можете просмотреть полный список файлов, выбрав Файл> Показать файлы в установщике и развернув подпакет разработки UNIX.) Пакет Essentials (который является обязательной установкой) будет установлен в расположениеваш выбор (по умолчанию /Developer), который можно удалить после завершения установки.Дополнительные компоненты, связанные с Mac, установленные в /System/Library, достаточно малы (на порядок меньше, чем пакет Essentials), поэтому я бы рекомендовал просто оставить /System в покое.

Это должно оставить вас сПредоставленные Xcode артефакты в /usr/bin, /usr/lib, /usr/include, /usr/share/man и т. Д. Позволяют создавать любые необходимые инструменты.Я рекомендую встроить их в /usr/local/*, чтобы они не конфликтовали с существующими инструментами.Удачи!

0 голосов
/ 05 января 2011

Другой способ - использовать Префикс Gentoo в качестве системы портов. Он пытается использовать только код из себя, поэтому вы в конечном итоге используете меньше кода Apple, который, кажется, вам нужен /

0 голосов
/ 04 января 2011

Одна из проблем, с которой вы можете столкнуться, заключается в том, что OSX не использует двоичные файлы ELF, поэтому, вероятно, elf-bintools мало чем поможет ...

0 голосов
/ 03 января 2011

Вы не можете сделать это, так как macports требует Xcode.

Есть некоторые macports, которые используют macports gcc - но большинство используют инструменты Apple.

...