pyroot 2.7でbuildroot経由でsubprocess32をインストールしようとしています。正しくインストールするために登場したが、私は、組込みシステムにインポートするとき、私はエラーを取得する:サブプロセスをインポートする際の問題
>>> import subprocess32
/usr/lib/python2.7/site-packages/subprocess32.py:472: RuntimeWarning: The _posixsubprocess module is not being used. Child process reliability may suffer if your pro
gram uses threads.
"program uses threads.", RuntimeWarning)
私はsubprocess32が、それは独自のバージョンだ持っているようだと、それはだ_posixsubprocess
import _posixsubprocess
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: dynamic module does not define init function (init_posixsubprocess)
をインポートしようとした、このパスに続きこの場合は動作しませんか?ここで
は私のメイクファイルです:
#############################################################
#
# Subprocess32 module for python
#
#############################################################
SUBPROCESS32_VERSION = 3.2.7
SUBPROCESS32_SOURCE = subprocess32-$(SUBPROCESS32_VERSION).tar.gz
SUBPROCESS32_SITE = https://pypi.python.org/pypi/subprocess32
SUBPROCESS32_DEPENDENCIES = python
define SUBPROCESS32_BUILD_CMDS
(cd $(@D); $(HOST_DIR)/usr/bin/python setup.py build)
endef
define SUBPROCESS32_INSTALL_TARGET_CMDS
(cd $(@D); $(HOST_DIR)/usr/bin/python setup.py install --prefix=$(TARGET_DIR)/usr)
endef
$(eval $(call GENTARGETS,package,subprocess32))
答えが死んで、コメント内のリンクであるしかしこのPython Error The _posixsubprocess module is not being usedについて同様の記事があります。私の問題のための任意のアイデア?
setup.py:
#!/usr/bin/python
import os
import sys
from distutils.core import setup, Extension
def main():
if sys.version_info[0] != 2:
sys.stderr.write('This backport is for Python 2.x only.\n')
sys.exit(1)
ext = Extension('_posixsubprocess', ['_posixsubprocess.c'],
depends=['_posixsubprocess_helpers.c'])
if os.name == 'posix':
ext_modules = [ext]
else:
ext_modules = []
setup(
name='subprocess32',
version='3.2.7',
description='A backport of the subprocess module from Python 3.2/3.3 for use on 2.x.',
long_description="""
This is a backport of the subprocess standard library module from
Python 3.2 & 3.3 for use on Python 2.
It includes bugfixes and some new features. On POSIX systems it is
guaranteed to be reliable when used in threaded applications.
It includes timeout support from Python 3.3 but otherwise matches
3.2's API. It has not been tested on Windows.""",
license='PSF license',
maintainer='Gregory P. Smith',
maintainer_email='[email protected]',
url='https://github.com/google/python-subprocess32',
ext_modules=ext_modules,
py_modules=['subprocess32'],
classifiers=[
'Intended Audience :: Developers',
'Topic :: Software Development :: Libraries',
'Development Status :: 5 - Production/Stable',
'License :: OSI Approved :: Python Software Foundation License',
'Operating System :: POSIX',
'Operating System :: POSIX :: BSD',
'Operating System :: POSIX :: Linux',
'Operating System :: POSIX :: SunOS/Solaris',
'Programming Language :: Python :: 2.4',
'Programming Language :: Python :: 2.5',
'Programming Language :: Python :: 2.6',
'Programming Language :: Python :: 2.7',
'Programming Language :: Python :: 2 :: Only',
'Programming Language :: Python :: Implementation :: CPython',
],
)
if __name__ == '__main__':
main()
私もそれははい、それは古いですが、あるbuildrootのバージョンを知っているが、それは今のオプションではありませんアップグレードしません正直に言うと。問題がそれかsubprocess32かどうかはわかりません。その大きな変化は他の場所でも多くの問題が起こるだろうと私は思っています。 – Paul