Не удалось получить функциональность MacPort после установки Xcode 4.3
у меня возникли проблемы с получением MacPorts для правильной работы. Я только что установил OSX Lion 10.7.3 сначала я загрузил и установил MacPorts, а затем, прочитав требования, я загрузил Xcode4.3 из магазина приложений, а затем установил его. Я запустил Xcode, и он выглядит работоспособным и функциональным. Однако, когда я попытался портировать с MacPorts, он дал мне это сообщение об ошибке (выдержка):
Warning: xcodebuild exists but failed to execute
Warning: Xcode does not appear to be installed; most ports will likely fail to build.
я последовал совету из:
как я установите дополнительные пакеты для Xcode на OSX Lion, чтобы разрешить MacPorts работать
и установлен command_line_tools_for_xcode из настроек в Xcode. Я закрыл Xcode, и снова получил ошибки:
$ sudo port install libsocketsPassword:
Warning: xcodebuild exists but failed to execute
Warning: Xcode does not appear to be installed; most ports will likely fail to build.
---> Computing dependencies for libsockets
---> Dependencies to be installed: openssl zlib
---> Extracting zlib
Error: Couldn't determine your Xcode version (from '/usr/bin/xcodebuild -version').
Error:
Error: If you have not installed Xcode, install it now; see:
Error: http://guide.macports.org/chunked/installing.xcode.html
Error:
Error: Target org.macports.extract returned: unable to find Xcode
Error: Failed to install zlib
Log for zlib is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_zlib/zlib/main.log
Error: The following dependencies were not installed: openssl zlib
Error: Status 1 encountered during processing.
Я не уверен, куда идти дальше с этим. Как мне снять проблемы с интерфейсом Xcode и MacPort?
17 ответов:
теоретически это должно работать, если у Вас установлен Xcode4.3 (в / приложения):
$ sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer/(и вы установили дополнительные инструменты командная строка)
все начнет работать нормально после установки пакета" инструменты командной строки для Xcode". Вы можете получить его отсюда:https://developer.apple.com/downloads/index.action#
смотрите инструкции по миграции MacPorts для Xcode 4.3.
инструкции довольно сложный. Вам нужно бежать
xcode-selectчтобы задать новый путь к инструментам, обновитеdeveloper_dirinmacports.conf(как описано Хенк Полей), повторно установить системы MacPorts (ой), и, наконец, удалить и повторно установить все свои порты (два раза ой).Edit:
libpvxпо-прежнему не будет устанавливать после вышеизложенного. Два дополнительных шага были требуется:
sudo ln -s /Developer /sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs /SDKsYMMV, если у вас установлены разные порты!
и в
/opt/local/etc/macports/macports.confизменить строку сdeveloper_dirуказать/вместо/Developer.
после
sudo xcode-select -switch /Applications/Xcode.appмне тоже пришлось работать
sudo xcodebuild -licenseи принять лицензию
вот решение, которое сработало для меня:
установить инструменты командной строки для Xcode
Xcode -> Preferences -> Downloadsпомогите MacPorts найти нужную папку Xcode
sudo /usr/bin/xcode-select -switch /Applications/Xcode.appсоздать символические ссылки для компиляторов clang, как они теперь живут в другом месте
sudo ln -s `which clang` /Applications/Xcode.app/Contents/Developer/usr/bin/ sudo ln -s `which clang++` /Applications/Xcode.app/Contents/Developer/usr/bin/
установка пути разработчика в /opt/local/etc / macports.conf, который работает для меня,
developer_dir /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchainтак как большинство компиляторов теперь хранятся там вместо /usr / bin под Developer.
ничего из этого не работает для меня. Подождите, пока macports выпустит новую версию, которая официально поддерживает XCode 4.3+
sudo mv /usr/bin/xcodebuild /usr/bin/xcodebuild.old sudo ln -s /Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild /usr/bin/xcodebuild
начиная с Xcode 4.3, средства построения командной строки по умолчанию не устанавливаются. Запустите Xcode, откройте Настройки и перейдите на вкладку Загрузки. Оттуда вы должны иметь возможность установить средства командной строки.
вы также можете скачать их из интернета здесь: https://developer.apple.com/downloads/index.action
отказ от ответственности: я еще не установил Xcode 4.3. Я только читал об этом в интернете.
по состоянию на 27/2/2012 тег официальное предложение из MacPorts, кажется, не использовать XCode 4.3 и вместо этого использовать 4.1 через 4.2.1, которые могут быть загружены из Apple.
есть ошибка билета что может быть полезно для отслеживания эволюции этого.
кстати, и как сообщается в моем комментарии #11 в этом сообщении об ошибке, я am возможность строить порты без предупреждений с помощью 2 наиболее здравомыслящих предложений, найденных в этом вопрос:
sudo /usr/bin/xcode-select -switch /Applications/Xcode.app/Contents/Developerи изменениеdeveloper_dirin/opt/local/etc/macports / macports.conf to/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain
у меня установлен macports без прав администратора/root, поэтому я не смог проверить ответы xcode-select. Однако я заметил, что ответ Пэлла Мелстеда сработал, но не изначально. Что я узнал, так это то, что у меня не было принято лицензионное соглашение Xcode 4.5!
Если вы только что установили Xcode для целей macports, и вы еще не приняли лицензию Xcode, вы можете получить ошибку, представленную в исходном сообщении. Когда я проверил свой Xcode версия с помощью
/usr/bin/xcodebuild -version, Мне было предложено прочитать и принять лицензию. После этого и после внесения изменений, предложенных Pall вmacports.confdeveloper_dir, теперь все работает.
в качестве альтернативы: вы можете сделать понижение Xcode до версии 4.2.1. DMG Xcode 4.2.1 размещен здесь:https://developer.apple.com/downloads/index.action
после этого MacPorts стал отлично работать для меня.
это исправлено в MacPorts 2.0.4.
обновление:
- загрузите MacPorts 2.0.4 из установить сайт или выполните команду
sudo port selfupdate.- запуск системы MacPorts миграции, описанный здесь переустановить все порты. Это болезненно, но необходимо, чтобы вернуться в рабочее состояние.
вы обязательно должны бежать
sudo xcode-select -switch /Applications/Xcode.appкак все здесь говорят, это исправит многие проблемы, но, конечно, не все.Afaik, все остальные проблемы существуют в информации о конфигурации для различных пакетов. Вы можете просто переустановить MacPorts, как описано в инструкции по миграции, но я нашел другое решение.
вы должны начать поиск всех произведенных файлов портов с помощью команд, таких как
grep /Developer/ ..., после выполненияsudo bashиcd /opt/localестественно.вы должны идентифицировать все произведенные порты с помощью
port provides ..., который я пропустил черезsedиsort | uniq. Вы можете просто переустановить все эти порты, используя либоport -n upgrade --force ...или отдельнойport uninstall ...иport install ...команды.Я рекомендую использовать один большой
port -n upgrade --force ...команда, чтобы избежать повторяющихся перестроений зависимостей, используя отдельные команды удаления и установки после этого.есть, конечно, различные порты для который
/Developerсуществует только внутри текстовых конфигурационных файлов, то есть вы можете исправить их вручную с помощьюsed -i -e 's/\/Developer//g' ..., но вы не можете сделать это с бинарниками очевидно.Я боюсь, что вы должны как минимум перестроить все свои установки Python и Perl, что делает это обновление идеальным временем для очистки пакетов, которые зависят от более старых версий, ala
python26иperl5.8.есть несколько технически осуществленных портов, которые я решил не перестраивать, как
fuse4x-kext, которые содержали/DeveloperвнутриLibrary/Extensions/fuse4x.kext/Contents/MacOS/fuse4xа неsshfsработает неправильно.
Я изначально установил xcode 3.2.2, после чего я установил 4.3. Когда я запустил xcode-select, я все еще получил ту же ошибку об отсутствии проекта xcode в /Applications. Затем я углубился в скрипт /usr/bin/xcodebuild и обнаружил, что это работает правильно, а другой экземпляр xcodebuild (тот, который установлен с xcode 4.3, а не в /usr/bin) запускался и возвращал ошибку:
xcodebuild: ошибка: каталог / приложения не содержит Xcode проект.
похоже, что /usr/bin / xcode-select не работает для xcode 4.3 (он скомпилирован, поэтому вы не можете понять, почему он не работает). Строки не дают никаких подсказок. Хорошо, что у osx есть strace.. о, подожди.
в любом случае, лучшее, что я мог сделать, это изменить /opt/local/etc/macports.конф и раскомментируйте строку, содержащую путь к установке xcode. Что, кажется, решить мою проблему, по большей части.
Comments