Не удалось получить функциональность 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?

558   17  

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_dir in macports.conf (как описано Хенк Полей), повторно установить системы MacPorts (ой), и, наконец, удалить и повторно установить все свои порты (два раза ой).

Edit:libpvx по-прежнему не будет устанавливать после вышеизложенного. Два дополнительных шага были требуется:

  1. sudo ln -s /Developer /
  2. sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs /SDKs

YMMV, если у вас установлены разные порты!

и в /opt/local/etc/macports/macports.conf изменить строку с developer_dir указать / вместо /Developer.

после

sudo xcode-select -switch /Applications/Xcode.app

мне тоже пришлось работать

sudo xcodebuild -license

и принять лицензию

вот решение, которое сработало для меня:

  1. установить инструменты командной строки для Xcode

    Xcode -> Preferences -> Downloads
    
  2. помогите MacPorts найти нужную папку Xcode

    sudo /usr/bin/xcode-select -switch /Applications/Xcode.app
    
  3. создать символические ссылки для компиляторов 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/
    

попробуйте использовать trunk, пока нет выпуска, поддерживающего Xcode 4.3.

установка пути разработчика в /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_dir in/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.

обновление:

  1. загрузите MacPorts 2.0.4 из установить сайт или выполните команду sudo port selfupdate.
  2. запуск системы 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

    Ничего не найдено.