在我遇到很多问题后,我在Linux Mint 18 Mate x64上安装了Librosa(https://github.com/librosa/librosa)。当我想运行示例脚本时,例如:http://librosa.github.io/librosa/generated/librosa.feature.tempogram.html#librosa.feature.tempogram,它会因“分段错误”错误而崩溃:
private MyCountDownTimmer isTypingTimmer = new MyCountDownTimmer(1000, 1000);
private boolean isTyping = false;
editText_message.addTextChangedListener(new TextWatcher() {
public void afterTextChanged(Editable s) {
}
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
public void onTextChanged(CharSequence s, int start, int before, int count) {
isTypingTimmer.cancel();
isTypingTimmer.start();
if (!isTyping) {
databaseReference.child("room-typing").child(room_name).child(user_id_or_name).setValue("true");
isTyping = true;
}
}
});
我尝试逐行调试,结果是:
$ python librosa-feature-tempogram-1.py
/usr/local/lib/python2.7/dist-packages/matplotlib/backends/backend_qt5.py:140: Warning: g_main_context_push_thread_default: assertion 'acquired_context' failed
qApp = QtWidgets.QApplication([str(" ")])
Segmentation fault
matplotlib库和Qt(5.7.0)可能存在一些问题。此外,我记得我在安装Librosa时遇到了很多问题,包括matplotlib,因此可能会出现一些安装问题。但是,我不知道如何解决它。我希望有人会为我提供有用的线索。
答案 0 :(得分:1)
最后,我通过安装这些软件包解决了这个问题:sudo apt-get install tk-dev libpng-dev libffi-dev dvipng texlive-latex-base
并使用 pip 重新安装 matplotlib 。我还在 TkAgg 上的 matplotlib 中更改了背景。导入语句的代码有一个开头:
import librosa
import matplotlib
matplotlib.use('TkAgg')
import matplotlib.pyplot as plt
现在它完美无缺。