2013-06-22 129 views
0

更新6/25/2013)当我尝试使用pip来安装不同的包时,看到相同的错误,表示该包可能没有任何内容解决这个问题。错误[Errno 89]执行命令时没有执行函数python setup.py egg_info


QNX我一旦运行pip看到下面的错误。

# pip install -U catkin_pkg 
Downloading/unpacking catkin-pkg 
    Running setup.py egg_info for package catkin-pkg 

Requirement already up-to-date: argparse in /usr/pkg/lib/python2.7/site-packages (from catkin-pkg) 
Requirement already up-to-date: docutils in /usr/pkg/lib/python2.7/site-packages (from catkin-pkg) 
Requirement already up-to-date: python-dateutil in /usr/pkg/lib/python2.7/site-packages (from catkin-pkg) 
Requirement already up-to-date: six in /usr/pkg/lib/python2.7/site-packages (from python-dateutil->catkin-pkg) 
Installing collected packages: catkin-pkg 
    Running setup.py install for catkin-pkg 
    Error [Errno 89] Function not implemented while executing command /usr/qnx650/host/qnx6/x86/usr/bin/python -c "import setuptools;__file__='/tmp/pip-build-n130s/catkin-pkg/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-XhRdBe-record/install-record.txt --single-version-externally-managed 
Exception: 
Traceback (most recent call last): 
    File "/usr/pkg/lib/python2.7/site-packages/pip-1.3-py2.7.egg/pip/basecommand.py", line 139, in main 
    status = self.run(options, args) 
    File "/usr/pkg/lib/python2.7/site-packages/pip-1.3-py2.7.egg/pip/commands/install.py", line 271, in run 
    requirement_set.install(install_options, global_options, root=options.root_path) 
    File "/usr/pkg/lib/python2.7/site-packages/pip-1.3-py2.7.egg/pip/req.py", line 1185, in install 
    requirement.install(install_options, global_options, *args, **kwargs) 
    File "/usr/pkg/lib/python2.7/site-packages/pip-1.3-py2.7.egg/pip/req.py", line 592, in install 
    cwd=self.source_dir, filter_stdout=self._filter_install, show_stdout=False) 
    File "/usr/pkg/lib/python2.7/site-packages/pip-1.3-py2.7.egg/pip/util.py", line 627, in call_subprocess 
    cwd=cwd, env=env) 
    File "/usr/pkg/lib/python2.7/subprocess.py", line 711, in __init__ 
    errread, errwrite) 
    File "/usr/pkg/lib/python2.7/subprocess.py", line 1205, in _execute_child 
    self.pid = os.fork() 
OSError: [Errno 89] Function not implemented 
Storing complete log in /root/.pip/pip.log 

第一次我跑时被依赖组分如​​,docutilspython-dateutilsix没有安装该命令,相同的错误发生,但在其中,这些部件需要被检查的部分。现在我已经逐一安装了它们,它似乎发生在我正在安装的pkg上(即catkin_pkg)。

在python的控制台上,os.fork(),我假设原因的来源,行为有所不同。因此我甚至不确定错误是否发生在os.fork()

# python 
Python 2.7.4 (default, Jun 21 2013, 22:33:48) 
[GCC 4.4.2] on qnx6 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import os 
>>> os.fork() 
18804790 
>>> 0 
sem_wait: Invalid argument 

如何避免此错误?谢谢!

使用QNX 6.5.0 SDP SP1,pip版本是1.3(its source on github),也是source of catkin_pkg

回答

0

我以某种方式想通了。运行pip-U选项获取安装的软件包(安装日志位于底部以供参考)。

...但是为什么......?的似乎的pip帮助消息并没有道理给我:安装

$ pip install --help 
: 
Install Options: 
: 
    -U, --upgrade Upgrade all packages to the newest available version. This process is recursive regardless of whether a dependency is already satisfied. 

登录由pip

$ pip install catkin_pkg  
Downloading/unpacking catkin-pkg 
    Running setup.py egg_info for package catkin-pkg 

Requirement already satisfied (use --upgrade to upgrade): argparse in /usr/pkg/lib/python2.7/site-packages (from catkin-pkg) 
Requirement already satisfied (use --upgrade to upgrade): docutils in /usr/pkg/lib/python2.7/site-packages (from catkin-pkg) 
Requirement already satisfied (use --upgrade to upgrade): python-dateutil in /usr/pkg/lib/python2.7/site-packages (from catkin-pkg) 
Requirement already satisfied (use --upgrade to upgrade): six in /usr/pkg/lib/python2.7/site-packages (from python-dateutil->catkin-pkg) 
Installing collected packages: catkin-pkg 
    Running setup.py install for catkin-pkg 
    changing mode of build/scripts-2.7/catkin_create_pkg from 664 to 775 
    changing mode of build/scripts-2.7/catkin_generate_changelog from 664 to 775 
    changing mode of build/scripts-2.7/catkin_tag_changelog from 664 to 775 
    changing mode of build/scripts-2.7/catkin_test_changelog from 664 to 775 

    changing mode of /usr/pkg/bin/catkin_create_pkg to 775 
    changing mode of /usr/pkg/bin/catkin_generate_changelog to 775 
    changing mode of /usr/pkg/bin/catkin_tag_changelog to 775 
    changing mode of /usr/pkg/bin/catkin_test_changelog to 775 
Successfully installed catkin-pkg 
Cleaning up...