Ubuntu16.04+Anaconda环境下Python3导入gammu模块失败求助
解决Anaconda环境下无法导入gammu的问题
我之前在Ubuntu 16.04的Anaconda环境里也碰到过完全一样的问题!核心原因是Anaconda会创建独立的Python环境,默认不会加载系统级的Python包目录,所以你通过apt安装的gammu虽然在/usr/lib/python3/dist-packages里,但Anaconda的Python根本找不到它。下面给你几个可行的解决方案:
方案1:临时添加路径(快速测试用)
如果只是临时测试功能,可以直接在Python控制台里手动把系统包目录加入sys.path:
import sys # 把系统的gammu包目录添加到路径里 sys.path.append('/usr/lib/python3/dist-packages') # 现在就能正常导入了 import gammu
不过这个方法只在当前控制台会话生效,关闭后就需要重新执行。
方案2:永久添加系统包路径(适合长期使用)
想要让Anaconda环境永久识别系统级的包,可以通过.pth文件实现:
- 找到你Anaconda环境的
site-packages目录,比如默认的base环境路径大概是:
(注意替换成你环境实际的Python版本号)~/anaconda3/lib/python3.6/site-packages - 在这个目录下创建一个新文件,比如
system-packages.pth,内容只需要一行:/usr/lib/python3/dist-packages - 保存文件后,重启Python控制台,现在
import gammu就能直接生效了。
方案3:在Anaconda环境内重新安装gammu(最稳妥,避免版本冲突)
如果不想依赖系统包,推荐直接在Anaconda环境里编译安装gammu,这样能保证包和环境的兼容性:
- 先安装系统级的依赖库:
sudo apt install gammu libgammu-dev - 激活你的Anaconda环境(比如base环境):
conda activate base - 使用环境内的pip安装gammu:
安装完成后,gammu会直接存放在Anaconda环境的pip install gammusite-packages里,无需额外配置路径就能正常导入。
内容的提问来源于stack exchange,提问作者bcag2
相关产品推荐
相关产品推荐

