'what openssl' gibt beim Versuch, OpenSSL zu aktualisieren, nichts zurück

Ich habe den letzten Tag oder so daran gearbeitet, openssl auf meinem Rechner zu aktualisieren. Ich habe die Antworten hier und hier verfolgt und jetzt habe ich einige ziemlich lustige Ergebnisse.

Wenn ich tippe which opensslbekomme ich keine Antwort.
Wenn ich tippe, openssl versionbekomme ich -bash: openssl: command not found
Wenn ich tippe, brew install opensslbekomme ichWarning: openssl-1.0.1g already installed.

Warum erkennt Brew eine Installation, aber meine anderen Terminalbefehle deuten darauf hin, dass nichts installiert ist? Was muss ich tun, damit mein System die Installation erkennt, die Brew sieht, oder was muss ich entfernen, damit ich eine Neuinstallation von openssl durchführen kann?

Edit: 'brew doctor' gibt mir folgendes:

Warnung: Ihr XQuartz (2.7.4) ist veraltet Bitte installieren Sie XQuartz 2.7.5: https://xquartz.macosforge.org

Warnung: Python ist unter /Library/Frameworks/Python.framework installiert

Homebrew unterstützt nur das Erstellen gegen das vom System bereitgestellte Python oder ein gebrautes Python. Insbesondere Pythons, die in /Library installiert sind, können andere Softwareinstallationen stören.

Was brew doctorgibt es?
Beitrag so bearbeitet, dass er enthält, was vom Befehl "Brauen des Doktors" bereitgestellt wird.

Antworten (2)

Dieser Befehl sollte Ihnen zeigen, wo sich Openssl-Binärdateien auf Ihrem System befinden können:

locate openssl | grep bin/openssl

Stellen Sie für Homebrew sicher, dass Sie /usr/local/bin und /usr/local/sbin in Ihrem $PATH haben. Sie können Ihre aktuelle Pfadeinstellung überprüfen, indem Sie echo $PATH.

Wenn ich locate ausführe, erhalte ich eine Warnung, dass die Locate-Datenbank nicht erstellt wird.
ah, dann können Sie ausführen: sudo /usr/libexec/locate.updatedbdas führt einen vollständigen Dateisystem-Sweep Ihres Systems durch und speichert alle Informationen über Dateien und Verzeichnisse in einer Locate-Datenbank. Sie können den locateBefehl dann ausführen, nachdem er ausgeführt wurde, um die openssl-Dateien zu finden.
Es gibt natürlich andere Möglichkeiten, dasselbe zu erreichen. Eine andere Möglichkeit besteht darin, den Terminalbefehl von Spotlight zu verwenden:mdfind 'kMDItemFSName=openssl&&kMDItemContentType=public.unix-executable'

Es sieht so aus, als ob openssl in /usr/local/Cellar/openssl/1.0.1g/bin/openssl installiert wurde und mit dem gewünschten Speicherort verknüpft werden musste. Der folgende Befehl hat das für mich erledigt:

ln -s /usr/local/Cellar/openssl/1.0.1g/bin/openssl /usr/local/bin

Nachdem dieser Befehl ausgeführt wurde, gab „which openssl“ „/usr/local/bin/openssl“ zurück und „openssl version“ gab „OpenSSL 1.0.1g 7 Apr 2014“ zurück.