Maison > développement back-end > Golang > erreur openssl ld : avertissement : répertoire introuvable pour l'option '-L/usr/local/opt/openssl/lib'

erreur openssl ld : avertissement : répertoire introuvable pour l'option '-L/usr/local/opt/openssl/lib'

王林
Libérer: 2024-02-10 14:24:09
avant
1091 Les gens l'ont consulté

openssl 错误 ld:警告:找不到选项 '-L/usr/local/opt/openssl/lib 的目录

L'éditeur php Banana a rencontré une erreur lors de l'utilisation d'openssl, demandant "ld : Attention : le répertoire de l'option '-L/usr/local/opt/openssl/lib' est introuvable". Cette erreur est généralement causée par une configuration incorrecte du chemin du fichier de la bibliothèque openssl. La solution à ce problème consiste à ajouter le chemin correct du fichier de bibliothèque openssl dans les options de compilation.

Contenu de la question

Une erreur s'est produite lors de la compilation du programme tdlib lié aux appels openssl.

/opt/homebrew/opt/go/libexec/pkg/tool/darwin_arm64/link: running cc failed: exit status 1
ld: warning: directory not found for option '-L/usr/local/opt/openssl/lib'
ld: library not found for -lssl
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Copier après la connexion

openssl est installé avec Brew :

which openssl
/opt/homebrew/bin/openssl
Copier après la connexion
==> openssl@3: stable 3.1.2 (bottled)
Cryptography and SSL/TLS Toolkit
https://openssl.org/
/opt/homebrew/Cellar/openssl@3/3.1.2 (6,495 files, 28.4MB) *
  Poured from bottle using the formulae.brew.sh API on 2023-09-21 at 14:06:03
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/o/[email protected]
License: Apache-2.0
Copier après la connexion

J'ai essayé d'utiliser pkg-config et d'exposer l'environnement suivant pour résoudre ce problème, mais rien n'y fait.

export CGO_CFLAGS=$(pkg-config --cflags openssl)
export CGO_LDFLAGS=$(pkg-config --libs openssl)
Copier après la connexion

Solution de contournement

Pouvez-vous également vérifier ces indicateurs (.~/bashrc ou ~/.zshrc) :

export CGO_CFLAGS="-I/opt/homebrew/include"
export CGO_LDFLAGS="-L/opt/homebrew/lib -lssl -lcrypto"
Copier après la connexion

Ou vous pouvez utiliser pkg-config :

export CGO_CFLAGS="$(pkg-config --cflags openssl)"
export CGO_LDFLAGS="$(pkg-config --libs openssl)"
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:stackoverflow.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal