Pycharm dyld:Library not loaded

 

ERROR| MAC Pycharm_dyld: Library not loaded

尝试1

Stackoverflow的方法 先安装homebrew,然后 brew install flac

尝试添加库

pic1

File > Invalidate Caches/Restart..

无效

Final solution

整不对了…重新建了一个project好了🙄

FFinal solution

一年之后回头再看这个问题,发现之前完全是因为没有了解原因所以就以为无法解决。之所以出现问题是因为virtualenv出现了问题,而之所以新建一个project能够解决问题,是因为新建一个project可以创建一个新的virtualenv。

Python Interpreter

Pycharm->preference->Project:project_name->Project Interpreter

在这个位置可以看到project interpreter,下面的package相当于用pip安装的包。

当想新建一个python interpreter的时候可以看到两个选项,其中location指的是存放当前virtualenv所需要的环境,base interpreter指的是创建这个虚拟环境需要基于本地的python环境的位置。

所以上面出现这个问题的原因如下:假设之前使用的是3.7.1的版本,现在升级到3.7.3的时候,中间的一些链接会出错,而之所以会升级可能是Python的版本可能在某一次使用brew的时候被更新到了,导致之前创建到的virtualenv损坏。所以需要换用virtualenv才能跑通原先的代码。

Mac Python版本的说明

Mac自带的python版本为2.7,可执行文件的位置在;

/System/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7

/Versions下面可能有多个python版本,其中Current存放系统当前python版本,在Current/bin目录下输入./python --Version,查看到的就是系统当前默认的python版本,其中如果使用python --version命令查看得到的是用户当前的python版本而不是系统的python版本。Homebrew安装python的路径是/usr/local/Cellar,由于我用Homebrew安装的是3.8的版本,所以路径是/usr/local/Cellar/python@3.8

当输入which python的时候返回地址/usr/bin/python 这个地址是一个wrapper的地址,用来选择在com.apple.versioner.python.plist中指定的版本号。这也是系统默认的命令路径。

which python3返回的地址是/usr/local/bin/python3这个地址是用户命令的默认路径。

如果存在相同的命令,会按照/etc/paths文件中的环境变量顺序依次查找,查看环境变量也可以在终端输入echo $PATH,左边路径的优先级优于右边的路径。

对于python2和python3的兼容问题,通常是保留python2,当需要使用3.X版本的时候,输入python3/pip3来区别。

我们可以看到,上面2.7的可执行文件的位置/System/Library/Frameworks/Python.framework/Version并没有3.X的版本。