首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何安装控制台的NodeBox

如何安装控制台的NodeBox
EN

Stack Overflow用户
提问于 2014-06-19 09:35:59
回答 1查看 989关注 0票数 7

我正在研究,并希望在Python中使用NodeBox模块。

关于如何安装控制台模块的文章是从2009年开始的,不再起作用了,因为这是1.9.x版本(当前为3.0.40)。而且SVN源已经不在那里了。这些资源可以在GitHub上获得。

通过克隆项目并运行:

代码语言:javascript
复制
ant run

我得到的只是桌面版本的构建。

如何在Python中正确安装和运行最新的NodeBox模块?

EN

回答 1

Stack Overflow用户

发布于 2014-06-24 10:20:36

如docs 这里2节中所述。安装NodeBox模块

如果您想从命令行使用NodeBox,则必须安装它。我们目前建议使用Subversion获取副本: svn co http://dev.nodebox.net/svn/nodebox/trunk/ nodebox ... cd src python setup.py install

我们应该从源代码中安装通常的方式,但是正如您所说的,这个过程已经相当过时了。正如在GitHub上提到的那样,源显然从SVN迁移到了https://github.com/nodebox/nodebox-pyobjchttps://github.com/nodebox/nodebox-pyobjc,源包结构也发生了变化。

让我们获取源代码并尝试安装它:

代码语言:javascript
复制
$ git clone https://github.com/nodebox/nodebox-pyobjc.git
$ cd nodebox-pyobjc
$ python nodebox/setup.py install

Traceback (most recent call last):
  File "nodebox/setup.py", line 17, in <module>
    import nodebox
ImportError: No module named nodebox

因此,setup.py需要导入nodebox包,让我们将项目根dir添加到Python,以便找到nodebox包,然后再试一次:

代码语言:javascript
复制
$ export PYTHONPATH=$PYTHONPATH:.
$ python nodebox/setup.py install

...
clang: error: no such file or directory: 'nodebox/ext/cGeo.c'
clang: error: no input files
error: command 'clang' failed with exit status 1

现在发现setup.py中的一些库路径是错误的,在库迁移期间可能没有人使用它,但是我们可以修复它:

代码语言:javascript
复制
# ext_modules = [
#     Extension('cGeo', ['nodebox/ext/cGeo.c']),
#     Extension('cPathmatics', ['nodebox/ext/cPathmatics.c']),
#     Extension('cPolymagic', ['nodebox/ext/gpc.c', 'nodebox/ext/cPolymagic.m'], extra_link_args=['-framework', 'AppKit', '-framework', 'Foundation'])
#     ]

ext_modules = [
    Extension('cGeo', ['libs/cGeo/cGeo.c']),
    Extension('cPathmatics', ['libs/pathmatics/pathmatics.c']),
    Extension('cPolymagic', ['libs/polymagic/gpc.c', 'libs/polymagic/polymagic.m'], extra_link_args=['-framework', 'AppKit', '-framework', 'Foundation'])
    ]

重试安装:

代码语言:javascript
复制
$ python nodebox/setup.py install
...
running install_egg_info
Writing <python>/lib/python2.7/site-packages/NodeBox-1.9.7rc2-py2.7.egg-info

$ pip list
...
NodeBox (1.9.7rc2)
...

现在成功安装了软件包,我们应该能够使用它:

代码语言:javascript
复制
$ python
>>> import nodebox
>>> dir(nodebox)
['__builtins__', '__doc__', '__file__', '__name__', '__package__', '__path__', '__version__', 'get_version']
>>> nodebox.__version__
'1.9.7rc2'

此外,您可能仍然需要手动安装某些依赖项才能正常工作,正如setup.py本身所指出的:

代码语言:javascript
复制
# We require some dependencies:
# - PyObjC
# - psyco
# - py2app
# - cPathMatics (included in the "libs" folder)
# - polymagic (included in the "libs" folder)
# - Numeric (included in the "libs" folder)
# - Numpy (installable using "easy_install numpy")

我已经用固定的setup.py库路径创建了一个拉请求,参见这里

在OS小牛(系统版本: OS 10.9.3 (13D65),内核版本:达尔文13.2.0)上使用HomebreePython2.7.6进行测试。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24303383

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档