undefined symbol: PyString_Type

bodybo 2019-05-13 09:09:57
用了boost python,编译好了so文件,在anaconda的lib/python3.6/sige-packages下也建好了link。
可在import对应package的时候却报"undefined symbol: PyString_Type"错误。

网上查了一圈,可能是我的anaconda中python2.7和python3.6并存的原因(有可能编译和使用是python版本不一致)。可我编译c++项目时指定的是连接libboost_python-py36.a,ipython进去看到python版本用的也是3.6.4,使用环境应该没有问题。

该如何解决呢?求高人指点
...全文
573 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
bodybo 2019-05-13
  • 打赏
  • 举报
回复
引用 2 楼 无 妨 的回复:
编译器是可以选择编译环境的,运行前选择好所需环境的文件夹位置


你指编译libboost_python时吗?我编译时这么做的,还不够?该怎么设置呢?
./bootstrap.sh --with-libraries=python --with-toolset=gcc
./b2 cflags='-fPIC' cxxflags='-fPIC' --with-python include="/qp/3rd/anaconda3/include/python3.6m/"
Steven·简谈 2019-05-13
  • 打赏
  • 举报
回复
编译器是可以选择编译环境的,运行前选择好所需环境的文件夹位置
bodybo 2019-05-13
  • 打赏
  • 举报
回复
备份原anaconda文件夹,重新安装anancoda(只带python3.6),import就没有问题了。

求教在python2.7和python3.6并存的情况下该怎么做?

37,720

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧