VS2015 配置python3.6配置 3.6 TCl/TK模块 重新生成时出现这样的报错怎么解决?

查看: 12640|回复: 10
解决python多版本时,import第三方模块出错的问题
马上注册加入鱼C,享用更多服务吧^_^
才可以下载或查看,没有帐号?
本帖最后由 Minken 于
23:16 编辑
由于学校导师要求需要使用 斯坦福大学的网络分析平台(SNAP),所以需要在python中导入第三方snap模块,
但是我电脑安装了python2.6,python2.7, python3.4三个版本,
按照 http://snap.stanford.edu/index.html 这个网址的指导,顺利安装snap.py,
但是每次启动python导入snap的时候,都会报下面的错误:
Fatal Python error: PyThreadState_Get: no current threadAbort trap: 6
网上google了一下,很多人倒入第三方模块的时候,经常会出现上面的错误,由于现在python2和python3一般都会在我们的电脑中同时存在,存在多版本。出现这个错误的原因是,第三方模块配置的时候默认会关联系统层面的python命令(特别是OS X和Linux),所以我们如果自己安装过的话,需要重新关联第三方模块和自己使用的python命令。
所以我们可以使用下面命令来重新关联:install_name_tool -change /System/Library/Frameworks/Python.framework/Versions/2.7/Python /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/libpython2.7.dylib _snap.so
sudo cp _snap.so /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/
otool -L&&/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/_snap.so
以我的电脑为例,我的是OS X Yosemite,系统层级的python在/System/Library的文件夹下,然后我自己用的就放在/opt/local/Library/下,然后_snap.so是第三方模块的相关配置文件,所以第一条命令是install_name_tool -change来重新关联,第二条命令是将相关配置文件放入当前使用python命令的目录下,最后一条命令时用otool 来检查dylib下面使用的第三方库是否还有其他依赖。
之后,使用/opt/local/Library/下面的python命令再执行import snap等第三方模块,那么就不会再出现错误了!
PS:这些小问题很少出现,属于小众问题,但是要是真遇到,弄起来得花上不少时间,这里给大家分享一下,希望能帮助到大家
最新更新():
有些朋友给我反应,通过上面的方法之后,import snap时依然报错,同样也是
Fatal Python error: PyThreadState_Get: no current threadAbort trap: 6
我建议如果能看错误details的话,看看是不是因为libpython2.7.dylib crash了,这种错误因为不同版本的python会找不同路径下的libpython2.7.dylib。
比如我的python可能会默认找/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/libpython2.7.dylib然后我的python可能去找自己建立的目录/sw/lib/libpython2.7.dylib,这种情况会导致lib冲突
解决方法是:看错误详细信息,看看是哪个目录下的lib冲突了,我的例子是系统报了/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/libpython2.7.dylib冲突,那么我的python去找/sw/lib/libpython2.7.dylib了,而snap就去找前面opt的路径,这样两个lib会冲突,那么我们可以用opt里面的libpython2.7.dylib 去将/sw/lib/libpython2.7.dylib覆盖掉,那么你会发现可以import snap了
感谢楼主无私奉献!
非常赞,支持一个~
支持学习了^_^
感谢分享,相信可以帮助到不少鱼油~
楼主你好,我的系统也是Yosemite,我自己的python安装在/Library/Frameworks/Python.framework/Versions/2.7/ 下面。按照楼主的方法敲代码之后,第三条代码的结果里面有如下输出:
bogon:snap-1.1-2.3-macosx10.7.5-x64-py2.7 stevehuang$ otool -L /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/_snap.so
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/_snap.so:
& & & & _snap.so (compatibility version 0.0.0, current version 0.0.0)
& & & & /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/libpython2.7.dylib (compatibility version 2.7.0, current version 2.7.1)
& & & & /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 52.0.0)
& & & & /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 159.1.0)
请问楼主该如何解决好呢?
非常有用!多谢楼主!
楼主你好,我的系统也是Yosemite,我自己的python安装在/Library/Frameworks/Python.framework/Versions/2. ...
抱歉,最近比较忙,没怎么上论坛,出现你这些提示是没错的,只要你现在当前库的版本比他需要兼容的版本都高就可以的了。我的也是会弹出你这类的信息。如果你成功关联了2.7的python的话,你在python里面应该可以import snap的,你可以试试
感谢楼主分享
小甲鱼强烈推荐 /1
新的视频新的面貌,希望大家喜欢 (≧∇≦)ノ
- - - - - - - - - - - -
新课程,新体验!
Powered by相关内容推荐
about echojb.com爱脚本网(www.echojb.com)为你提供软件编程和硬件技术方面资料,信息,方法,是你完成项目及工作的好帮手。在 SegmentFault,学习技能、解决问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。
问题对人有帮助,内容完整,我也想知道答案
问题没有实际价值,缺少关键内容,没有改进余地
如图,从第一列开始手写wait_for_user()这个函数一点代码提示都没有,而一旦前面有a=这样类似的代码就能有提示。如何才能让上一个wait_for_user()有提示呢?
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
先保存就有了吧
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
pycharm不错
就是还不知道怎么免费注册呢
分享到微博?
关闭理由:
删除理由:
忽略理由:
推广(招聘、广告、SEO 等)方面的内容
与已有问题重复(请编辑该提问指向已有相同问题)
答非所问,不符合答题要求
宜作评论而非答案
带有人身攻击、辱骂、仇恨等违反条款的内容
无法获得确切结果的问题
非开发直接相关的问题
非技术提问的讨论型问题
其他原因(请补充说明)
我要该,理由是:
在 SegmentFault,学习技能、解决问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。一蓑烟雨任平生 也无风雨也无晴
VS2015打开VS2010项目出现的问题解决方法
电脑升级为win10,安装了vs2015。
但是用vs2015打开之前由vs2010创建的项目时,出现了一些问题,错误如下:
MSB8020 The build tools for Visual Studio 2010 (Platform Toolset = 'v100') cannot be found. To build using the v100 build tools, please install Visual Studio 2010 build tools.
Alternatively, you may upgrade to the current Visual Studio tools by selecting the Project menu or right-click the solution, and then selecting "Retarget solution".
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.Cpp.Platform.targets
解决方法:
在对应的项目上右键选择属性,配置属性,常规,我们看到如图所示:
其中,平台工具集显示的是 Visual Studio )(未安装)
因此我们对此进行修改,选为:Visual Studio 2015 (v140)
并点击应用。
没有更多推荐了,import Tkinter的时候报错
在看到图形界面编程的时候,需要导入Tkinter模块,从而在解释器中进行import Tkinter,然后。。。报错如下:
&&& from tkinter import *
Traceback (most recent call last):
File "&stdin&", line 1, in &module&
File "/usr/local/lib/python2.7/tkinter/__init__.py", line 39, in &module&
import _tkinter # If this fails your Python may not be configured for Tk
ImportError: No module named _tkinter从报错信息来看,就是导入的时候出错,没有找到tkinter模块,主要是由于在进行编译python的时候,没有对Tk进行做相应的配置。
解决方案如下:
查询操作系统中安装的tk包:
rpm -qa|grep ^tk
#表示查询以tk开头的安装包 在结果中,只有一个tk包安装了,从而缺少了一个tk-devel的安装包没进行安装。
从而,需要安装tk-devel包,如下所示:(也可以使用其他的方法来进行安装,例如rpm安装,但是yum是最方便的)
yum -y install tk-devel #安装tk-devel安装包
安装好之后,必须进行重新编译python
1 ./configure --prefix=/usr/local/python
2 make && make install测试:直接导入模块,不出现任何错误即可。
没有更多推荐了,}

我要回帖

更多关于 python3.6.5环境配置 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信