在 macOS 上,Python 查找 dylib 的顺序大致如下:
首先搜索 Python 内部 dylib,例如 libpython3.9.dylib,这些 dylib 存放在 Python 安装路径下的 Frameworks 目录中。
如果第一步没有找到需要的 dylib,则继续搜索系统默认的 dylib 路径,这些路径包括:
- /usr/lib
- /usr/local/lib
- /usr/lib/system
- /System/Library/Frameworks
- /Library/Frameworks
如果第二步没有找到需要的 dylib,则会搜索环境变量 DYLD_LIBRARY_PATH 指定的路径。DYLD_LIBRARY_PATH 变量包含一个或多个路径,这些路径指定了 Python 可以搜索的自定义 dylib 路径。
最后,Python 会搜索一些其他的标准路径,例如 /usr/local/mysql/lib 和 /usr/local/ssl/lib,这些路径包含了一些常见的第三方 dylib 库。
总之,Python 会按照上述顺序搜索可用的 dylib,如果找到了对应的 dylib,就会将其加载到内存中。如果所有路径都没有找到对应的 dylib,则会报错。