将cmake与Enthow一起用于python包装
我最近开始尝试从ipython笔记本电脑切换到canopy,我从MATLAB切换到了。我正在努力获得类似matlab的开发和研究经验 我正在跨平台进行这些设置,但我是从OSX开始的 我一直在尝试安装在canopy中使用的软件包,其中一些需要编译,比如SimpleTk和VTK6.0。我已经在常规的python2.7安装中成功地安装了这两个组件,但是在为canopy安装它们时遇到了一些问题。现在,我正在用CMAKE重新编译simpletk/Superbuild,以重新创建python包装器。它要求提供python可执行文件include dir和python库位置。我发现python可以从casopy中的sys.executable执行,include dir带有'mdfind-name python.h,这是默认位置,我使用了默认的python库 这些是 可执行的:/Users/jmerkow/Library/enthund/Canopy_64bit/User/bin/python 包括:/System/Library/Frameworks/Python.framework/Headers Lib:/usr/Lib/libpython2.7.dylib 但我在make时得到以下错误:将cmake与Enthow一起用于python包装,python,python-2.7,cmake,enthought,Python,Python 2.7,Cmake,Enthought,我最近开始尝试从ipython笔记本电脑切换到canopy,我从MATLAB切换到了。我正在努力获得类似matlab的开发和研究经验 我正在跨平台进行这些设置,但我是从OSX开始的 我一直在尝试安装在canopy中使用的软件包,其中一些需要编译,比如SimpleTk和VTK6.0。我已经在常规的python2.7安装中成功地安装了这两个组件,但是在为canopy安装它们时遇到了一些问题。现在,我正在用CMAKE重新编译simpletk/Superbuild,以重新创建python包装器。它要求提
AssertionError: Filename /Applications/Canopy.app/appdata/canopy-1.1.0.1371.macosx-x86_64/Canopy.app/Contents/lib/python2.7/os.py does not start with any of these prefixes: ['/Users/jmerkow/Library/Enthought/Canopy_64bit/User', '/Library/Python/2.7/site-packages', '/Users/jmerkow/Library/Enthought/Canopy_64bit/User/Extras/lib/python', '/Users/jmerkow/Library/Python/2.7/site-packages', '/Users/jmerkow/.local/lib/python/2.7/site-packages', '/Users/jmerkow/Library/Python/2.7/lib/python/site-packages']
ERROR
-- Installing numpy from /Users/jmerkow/Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/numpy to /numpy
ERROR
/bin/sh: ../Testing/Installation/PythonVirtualenv/bin/python: No such file or directory
make[5]: *** [lib/_SimpleITK.so] Error 127
make[4]: *** [Wrapping/CMakeFiles/SimpleITK_PYTHON.dir/all] Error 2
make[3]: *** [all] Error 2
make[2]: *** [SimpleITK-prefix/src/SimpleITK-stamp/SimpleITK-build] Error 2
make[1]: *** [CMakeFiles/SimpleITK.dir/all] Error 2
make: *** [all] Error 2
此外,任何其他帮助我完成这项工作的建议都是非常受欢迎的
编辑如下
因此,我尝试使用以下方法进行编译:
/System/Library/Frameworks/Python.framework/Versions/Current/bin/Python
/System/Library/Frameworks/Python.framework/Versions/Current/include/python2.7/
/System/Library/Frameworks/Python.framework/Versions/Current/lib/libpython2.7.dylib
此文件已编译并创建,文件名为
SimpleTk-0.7.0.dev88_ge297c-py2.7-macosx-10.8-intel.egg
但是当我使用enpkg时,我得到了以下错误
回溯(最近一次呼叫最后一次):
文件“/Users/jmerkow/Library/enthught/Canopy_64bit/User/bin/enpkg”,第10行,在
sys.exit(main())
文件“/Applications/Canopy.app/appdata/Canopy-1.1.0.1371.macosx-x86_64/Canopy.app/Contents/lib/python2.7/site packages/enshiller/main.py”,主文件第702行
请求追加(请求(名称+版本))
文件“/Applications/Canopy.app/appdata/Canopy-1.1.0.1371.macosx-x86_64/Canopy.app/Contents/lib/python2.7/site packages/enshiller/resolve.py”,第32行,ininit
引发异常(“不是有效的要求:%r”%req\u字符串)
例外:无效要求:“SimpleTk 0.7.0.dev88_ge297c-py2.7-macosx-10.8-intel.egg”
使用easy_install,我遇到以下错误:
处理SimpleTk-0.7.0.dev88_ge297c-py2.7-macosx-10.8-intel.egg
删除“/Users/jmerkow/Library/enthught/Canopy_64bit/User/lib/python2.7/site packages/simpletk-0.7.0.dev88_ge297c-py2.7-macosx-10.8-intel.egg”(及其下的所有内容)
创建/Users/jmerkow/Library/enthught/Canopy_64bit/User/lib/python2.7/site-packages/simpletk-0.7.0.dev88_ge297c-py2.7-macosx-10.8-intel.egg
将SimpleTk-0.7.0.dev88_ge297c-py2.7-macosx-10.8-intel.egg提取到/Users/jmerkow/Library/enthught/Canopy_64bit/User/lib/python2.7/site-packages
SimpleTk 0.7.0.dev88-ge297c已经是easy-install.pth中的活动版本
Installed/Users/jmerkow/Library/enthught/Canopy_64bit/User/lib/python2.7/site-packages/simpletk-0.7.0.dev88_ge297c-py2.7-macosx-10.8-intel.egg
SimpleTk的处理依赖项==0.7.0.dev88-ge297c
搜索SimpleTk==0.7.0.dev88-ge297c
阅读超链接
阅读超链接
阅读超链接
找不到SimpleTk==0.7.0.dev88-ge297c的本地包或下载链接
错误:找不到适合Requirement.parse的分发('SimpleTk==0.7.0.dev88-ge297c')
看起来是我安装的,所以我尝试导入:
导入SimpleTk
致命的Python错误:PyThreadState\u Get:没有当前线程
中止陷阱:6
您已经将SimpleTk配置为使用系统python可执行文件、库和包含文件。但是,您正在尝试使用树冠分布。它们不是二进制兼容的,不匹配导致了这种类型的程序终止 已正确找到可执行文件: /Users/jmerkow/Library/enthund/Canopy_64bit/User/bin/python 但是您需要使PYTHON_INCLUDE_DIR和PYTHON_库保持一致。请尝试以下命令以帮助您确定正确的路径: find/Users/jmerkow/Library/enthught/Canopy_64bit/-name Python.h find/Users/jmerkow/Library/enthught/Canopy_64bit/-name lib python*.dylib