gpt4 book ai didi

python - 安装 psycopg2 时出错,找不到 -lssl 的库

转载 作者:IT老高 更新时间:2023-10-28 21:32:37 32 4
gpt4 key购买 nike

我跑

sudo pip install psycopg2

我得到一堆看起来像这样的输出:

cc -DNDEBUG -g -fwrapv -Os .....
.....
cc -DNDEBUG -g -fwrapv -Os .....
.....

最后它说:

ld: library not found for -lssl

clang: error: linker command failed with exit code 1 (use -v to see invocation)

error: command 'cc' failed with exit status 1

----------------------------------------
Cleaning up...
Command /usr/bin/python -c "import setuptools, tokenize;__file__='/private/var/folders/bz/pvj1g9xj16d10pjjgbrfl3fw0000gn/T/pip_build_root/psycopg2/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/bz/pvj1g9xj16d10pjjgbrfl3fw0000gn/T/pip-uE3thn-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /private/var/folders/bz/pvj1g9xj16d10pjjgbrfl3fw0000gn/T/pip_build_root/psycopg2
Storing debug log for failure in /Users/Tyler/Library/Logs/pip.log

运行 easy_install从源代码 在最后都给我同样的错误(关于库的部分未找到 -lssl)。


运行 brew install(或升级)openssl 会产生以下结果

$ brew upgrade openssl
Error: openssl-1.0.1h already installed

谁能帮帮我?

最佳答案

对于在 macOS Sierra 10.12(或更高版本,很可能)上寻找解决方案的任何人:我通过安装命令行工具解决了这个问题:

xcode-select --install

之后,pip install psycopg2 应该可以工作了。

如果没有,您也可以尝试链接到 brew 的 openssl:

env LDFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib" pip install psycopg2

通过 brew 安装 openssl。请注意,brew 链接 openssl --force 不再起作用:

$ brew link openssl --force                                                                                 17.5s
Warning: Refusing to link: openssl
Linking keg-only openssl means you may end up linking against the insecure,
deprecated system OpenSSL while using the headers from Homebrew's openssl.
Instead, pass the full include/library paths to your compiler e.g.:
-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib

正如@macho 在下面指出的,如果这仍然不起作用,您可能需要使用 pip 的 --no-cache 选项,例如

env LDFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib" pip --no-cache install psycopg2

如果您在 ARM/Apple M1 Mac 上构建(因为自制软件安装在 /opt/homebrew/ 上),请记住相应地调整这些路径;命令如下:

env LDFLAGS="-I/opt/homebrew/opt/openssl/include -L/opt/homebrew/opt/openssl/lib" pip --no-cache install psycopg2

关于python - 安装 psycopg2 时出错,找不到 -lssl 的库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26288042/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com