wake-up-neo.com

MacPort-Funktionalität kann nach der Installation von Xcode 4.3 nicht erhalten werden

Ich habe Probleme damit, dass MacPorts ordnungsgemäß funktioniert. Ich habe gerade OSX Lion 10.7.3 installiert. Ich habe zuerst MacPorts heruntergeladen und installiert. Nachdem ich die Anforderungen gelesen hatte, habe ich Xcode4.3 aus dem App Store heruntergeladen und dann installiert. Ich habe Xcode gestartet und es scheint betriebsbereit und funktionsfähig zu sein. Als ich jedoch versuchte, mit MacPorts zu portieren, erhielt ich folgende Fehlermeldung (Auszug):

Warning: xcodebuild exists but failed to execute
Warning: Xcode does not appear to be installed; most ports will likely fail to build.

Ich folgte dem Rat von:

Wie installiere ich zusätzliche Pakete für Xcode unter OSX Lion, damit MacPorts funktioniert

und installierte command_line_tools_for_xcode aus den Einstellungen in Xcode. Ich habe Xcode geschlossen und wieder die Fehler bekommen:

$ 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.

Ich bin mir nicht sicher, wohin ich als nächstes gehen soll. Wie kann ich meine Xcode- und MacPort-Oberfläche fehlerfrei testen?

62
Jason

Theoretisch sollte dies funktionieren, wenn Sie Xcode4.3 installiert haben (in/Applications):

$ Sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer/

(Und Sie haben die optionalen Befehlszeilentools installiert.)

84
geowar

Nach der Installation des Pakets "Command Line Tools for Xcode" funktioniert alles einwandfrei. Sie können es hier herunterladen: https://developer.Apple.com/downloads/index.action#

18
Pavel Ferencz

Bitte lesen Sie die MacPorts Migrationsanweisungen für Xcode 4. .

Die Anweisungen sind ziemlich kompliziert. Sie müssen xcode-select Ausführen, um einen neuen Werkzeugpfad festzulegen, developer_dir In macports.conf Aktualisieren (wie von Henk Poley beschrieben) und MacPorts erneut installieren (autsch), und deinstallieren Sie schließlich alle Ihre Ports und installieren Sie sie erneut (double autsch).

Bearbeiten: libpvx würde nach dem oben genannten immer noch nicht installiert. Zwei zusätzliche Schritte waren erforderlich:

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

YMMV wenn du verschiedene Ports installiert hast!

11
gmcnaughton

Auch in /opt/local/etc/macports/macports.conf Ändern Sie die Zeile mit developer_dir deuten auf / anstatt /Developer.

10
Henk Poley

Nach

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

Ich musste auch rennen

Sudo xcodebuild -license

und akzeptieren Sie die Lizenz

5
Greg Allen

Hier ist eine Lösung, die für mich funktioniert hat:

  1. Installieren Sie die Befehlszeilentools für Xcode

    Xcode -> Preferences -> Downloads
    
  2. Helfen Sie MacPorts, den richtigen Xcode-Ordner zu finden

    Sudo /usr/bin/xcode-select -switch /Applications/Xcode.app
    
  3. Erstellen Sie symbolische Links für Clang-Compiler, da diese jetzt an anderer Stelle leben

    Sudo ln -s `which clang` /Applications/Xcode.app/Contents/Developer/usr/bin/
    Sudo ln -s `which clang++` /Applications/Xcode.app/Contents/Developer/usr/bin/
    
4
Sudo mv /usr/bin/xcodebuild /usr/bin/xcodebuild.old
Sudo ln -s /Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild /usr/bin/xcodebuild 
2
henryse

Versuchen Sie es mit trunk, es gibt noch keine Version, die Xcode 4.3 unterstützt.

2
Clemens Lang

Das Festlegen des Entwicklerpfads in /opt/local/etc/macports.conf funktioniert für mich.

developer_dir /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain

da die meisten compiler dort nun statt/usr/bin unter developer gespeichert sind.

2
Pall Melsted

Nichts davon funktioniert für mich. Warten Sie, bis Macports eine neue Version veröffentlicht hat, die offiziell XCode 4.3+ unterstützt

2

Ab Xcode 4.3 werden die Befehlszeilen-Build-Tools nicht standardmäßig installiert. Starten Sie Xcode, öffnen Sie die Einstellungen und wechseln Sie zur Registerkarte Downloads. Von dort aus sollten Sie die Option haben, die Befehlszeilentools zu installieren.

Sie können sie auch hier aus dem Internet herunterladen: https://developer.Apple.com/downloads/index.action

Haftungsausschluss: Ich habe Xcode 4.3 noch nicht installiert. Ich habe nur im Internet darüber gelesen.

1
rob mayoff

Ab dem 27.2.2012 scheint der offizieller Vorschlag von MacPorts XCode 4.3 nicht zu verwenden und stattdessen 4.1 bis 4.2.1 zu verwenden, die von Apple heruntergeladen werden können.

Es gibt ein Bug-Ticket , das nützlich sein kann, um die Entwicklung zu verfolgen.

Übrigens und wie in meinem Kommentar Nr. 11 in diesem Fehlerbericht berichtet, bin ich in der Lage , Ports ohne Warnungen zu erstellen, indem ich die 2 am vernünftigsten aussehenden Vorschläge verwende gefunden in dieser Frage: Sudo /usr/bin/xcode-select -switch /Applications/Xcode.app/Contents/Developer und Ändern von developer_dir in /opt/local/etc/macports/macports.conf zu /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain

1
hmijail

Ich habe Macports ohne Administrator-/Root-Rechte installiert, daher konnte ich die Antworten von xcode-select nicht testen. Ich bemerkte jedoch, dass Pall Melsteds Antwort funktionierte, aber zunächst nicht. Was ich herausfand, war, dass ich nicht akzeptierte die Xcode 4.5-Lizenzvereinbarung!

Wenn Sie Xcode gerade für Macports installiert haben und die Xcode-Lizenz noch nicht akzeptiert haben, wird der Fehler möglicherweise durch den ursprünglichen Beitrag angezeigt. Als ich meine Xcode-Version mit /usr/bin/xcodebuild -version Überprüfte, wurde ich aufgefordert, die Lizenz zu lesen und zu akzeptieren. Nachdem Sie dies getan haben und die von Pall vorgeschlagenen Änderungen am macports.confdeveloper_dir Vorgenommen haben, funktioniert jetzt alles.

1
svohara

Dies ist in MacPorts 2.0.4 behoben.

Upgraden:

  1. Laden Sie MacPorts 2.0.4 von der Installationssite herunter , oder führen Sie Sudo port selfupdate Aus.
  2. Führen Sie die hier beschriebene MacPorts-Migration aus , um alle Ports neu zu installieren. Dies ist schmerzhaft, aber erforderlich, um in einen Arbeitszustand zurückzukehren.
0
Adam

Ich hatte zuerst xcode 3.2.2 installiert, danach 4.3. Als ich den xcode-select ausgeführt habe, habe ich immer noch den gleichen Fehler über kein xcode-Projekt in/Applications. Ich habe mich dann im Skript/usr/bin/xcodebuild umgesehen und herausgefunden, dass dies korrekt funktioniert, und eine andere Instanz von xcodebuild (die mit xcode 4.3 installiert wurde, nicht die in/usr/bin) wurde ausgeführt und gab den Fehler zurück :

xcodebuild: error: Das Verzeichnis/Applications enthält kein Xcode-Projekt.

Es scheint, dass/usr/bin/xcode-select für xcode 4.3 nicht funktioniert (es wurde kompiliert, sodass Sie nicht wirklich erkennen können, warum es nicht funktioniert). Strings geben keine Hinweise. Gut, dass osx Probleme hat .. oh warte.

Das Beste, was ich tun konnte, war, /opt/local/etc/macports.conf zu ändern und die Zeile mit dem Pfad zur xcode-Installation zu entfernen. Das scheint mein Problem zum größten Teil zu beheben.

0
siesta

Sie sollten auf jeden Fall Sudo xcode-select -switch /Applications/Xcode.app Ausführen, wie jeder hier sagt, das behebt viele Probleme, aber sicherlich nicht alle.

Afaik, alle verbleibenden Probleme bestehen in den Konfigurationsinformationen für verschiedene Pakete. Sie könnten MacPorts einfach neu installieren, wie in Migrationsanweisungen beschrieben, aber ich habe eine andere Lösung gefunden.


Sie sollten alle betroffenen Portdateien mit Befehlen wie grep /Developer/ ... Suchen, nachdem Sie Sudo bash Und cd /opt/local Auf natürliche Weise ausgeführt haben.

Sie sollten alle betroffenen Ports mit port provides ... Identifizieren, das ich durch sed und sort | uniq Geleitet habe. Sie können einfach alle diese Ports mit den Befehlen port -n upgrade --force ... Oder mit den Befehlen port uninstall ... Und port install ... Neu installieren.

Ich empfehle die Verwendung eines großen Befehls port -n upgrade --force ..., Um doppelte Neuerstellungen von Abhängigkeiten zu vermeiden. Verwenden Sie anschließend die separaten Befehle uninstall und install.

Es gibt natürlich verschiedene Ports, für die /Developer Nur in Textkonfigurationsdateien existiert, was bedeutet, dass Sie sie manuell mit sed -i -e 's/\/Developer//g' ... Reparieren können, aber Sie können dies natürlich nicht mit Binärdateien tun.

Ich befürchte, Sie müssen mindestens alle Ihre Python und Perl-Installationen neu erstellen, damit dieses Upgrade eine ideale Zeit ist, um Pakete zu bereinigen, die von älteren Versionen abhängen, unter anderem python26 Und Perl5.8.

Es gibt mehrere technisch bedingte Ports, die ich gegen eine Neuerstellung entschieden habe, wie Fuse4x-kext, Die /Developer In Library/Extensions/Fuse4x.kext/Contents/MacOS/Fuse4x Enthielten, aber die korrekte Funktion von sshfs nicht verhinderten.

0
Jeff Burdges

Alternativ: Sie können ein Downgrade von Xcode auf die Version 4.2.1 durchführen. DMG von Xcode 4.2.1 hier platziert: https://developer.Apple.com/downloads/index.action

Danach funktionierte MacPorts für mich einwandfrei.

0
Kwinto