Python SEM_OPEN Error



我正在尝试使用与RabbitMQ和Django一起运行的Celery。到目前为止,我已经在我的服务器上安装了RabbitMQ 2.7,以及python 2.7、Django 1.3、芹菜2.4.6和Django-芹菜2.4.2

我遵循了这里的简单说明http://django-celery.readthedocs.org/en/latest/introduction.html

然后我试着通过运行来启动芹菜

$ python manage.py celeryd

但它给了我这个错误

Unrecoverable error: ImportError('This platform lacks a functioning sem_open implementation, therefore, the required synchronization primitives needed will not function, see issue 3770.

我做了一些研究,在这里发现了错误http://bugs.python.org/issue3770,并且它被认为是固定的,但我想不是针对python 2.7。

此外,我的操作系统是CentOS 4.9版(最终版)。我从源头构建了python。

我启动了python shell并运行:

import multiprocessing

没有任何错误,但我随后运行:

from multiprocessing import synchronize

我得到了错误(如上)。

感谢您的帮助。

我在OpenVZ下运行的CentOS 6上遇到了同样的问题。我不得不装载/dev/shm,因为它不见了。将以下内容添加到/etc/fstab:

tmpfs   /dev/shm    tmpfs   defaults        0   0

然后运行sudo mount /dev/shm,看看它是否有效。我有自己的自定义Python 2.7.3,在构建时也需要使用此设备,否则Python将无法使用sem_open支持进行构建。运行./configure:时检查以下输出

checking for sem_open... yes

相关内容

  • 没有找到相关文章

最新更新