pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Pkgsrc python cannot import SemLock on CentOS



On 11/6/18 3:48 PM, Jason Bacon wrote:

Anyone know how to get around this?  It's hit me a couple of times now in applications I'd really
like to deploy via pkgsrc.

Yum's python imports fine, but I've seen this issue with multiple versions of pkgsrc python.

It's not true that the platform lacks a functioning sem_open().

Thanks,

    JB

Pkgsrc python:

Linux centosdev.ceas  bacon ~ 1019: python3.7
Python 3.7.0 (default, Oct 15 2018, 04:47:22)
[GCC 6.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import multiprocessing
>>> from multiprocessing import synchronize
Traceback (most recent call last):
  File "/usr/pkg/lib/python3.7/multiprocessing/synchronize.py", line 29, in <module>
    from _multiprocessing import SemLock, sem_unlink
ImportError: cannot import name 'SemLock' from '_multiprocessing' (/usr/pkg/lib/python3.7/lib-dynload/_multiprocessing.so)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/pkg/lib/python3.7/multiprocessing/synchronize.py", line 33, in <module>
    " synchronization primitives needed will not" +
ImportError: This platform lacks a functioning sem_open implementation, therefore, the required synchronization primitives needed will not function, see issue 3770.
>>>

Yum python:

Linux centosdev.ceas  bacon ~ 1019: /usr/bin/python
Python 2.7.5 (default, Jul 13 2018, 13:06:57)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import multiprocessing
>>> from multiprocessing import synchronize
>>>

Linux centosdev.ceas  bacon ~ 1020: uname -a
Linux centosdev.ceas.uwm.edu 3.10.0-693.11.1.el7.x86_64 #1 SMP Mon Dec 4 23:52:40 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
Linux centosdev.ceas  bacon ~ 1022: cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)

Furthermore, checking the output of "make configure" in python37:

[root@centosdev python37]# grep -i sem log
checking for library containing sem_init... -lpthread
checking for sem_open... yes
checking for sem_timedwait... yes
checking for sem_getvalue... yes
checking for sem_unlink... yes
checking for x64 gcc inline assembler... yes
checking whether we can use gcc inline assembler to get and set x87 control word... yes checking whether we can use gcc inline assembler to get and set mc68881 fpcr... no
checking whether POSIX semaphores are enabled... yes
checking for broken sem_getvalue... no



Home | Main Index | Thread Index | Old Index