导入 subprocess32 时出现问题

2024-06-22

我正在尝试通过 buildroot 安装 python 2.7 安装 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)

按照这条路径,我尝试导入 _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 似乎有它自己的版本,但在这种情况下不起作用?

这是我的制作文件:

#############################################################
#
# 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 错误 _posixsubprocess 模块未使用 https://stackoverflow.com/questions/12508243/python-error-the-posixsubprocess-module-is-not-being-used然而答案是评论中的一个链接,该链接已失效。对我的问题有什么想法吗?

设置.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] /cdn-cgi/l/email-protection',
      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 版本,但如果它仍然是使用GENTARGETS宏并且没有python-package基础设施,那么它一定是一个非常非常非常旧的版本。请先升级,因为近年来在 Python 支持方面进行了很多很多修复。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

导入 subprocess32 时出现问题 的相关文章

随机推荐

  • 是否可以以相反的顺序遍历 Firebase 节点的子节点?

    我正在考虑实现 in firebase 索引 如下所述 https stackoverflow com a 10559689 534086 https stackoverflow com a 10559689 534086 并试图弄清楚如何
  • 仅当活动暂停时才会收到待处理的意图附加信息

    我正在发送额外的字符串 并从我的待定意图StateCh java to MainActivity 我的期望是显示对话框MainActivity当到达额外的待处理意图时 单击通知 问题是当我打开MainActivity然后我单击通知 待处理的
  • sql - oracle - 选择特定组/sku的第一条和最后一条记录

    我一直在尝试寻找答案 但没有成功 需要得到 首次购买的价格和最后一次购买的价格并按 SKU 分组 查询结果应该是这样的 sku first purchase price Last purchase price BC123 3 09 6 68
  • 如何翻转 UIImageView?

    如何翻转 UIImageView 创建两个 UIImageView frontImageView 和 backImageView 创建一个 UIView 容器视图来包含 UIImageView 在开头显示 frontImageView 翻转
  • 暂时停止竞价实例

    这是关于最近的公告 https aws amazon com about aws whats new 2020 01 amazon ec2 spot instances stopped started similar to on deman
  • 为什么我的 NSFontPanel 没有调用 changeFont: ?

    我正在创建一个NSFontPanel但选择字体并不会调用changeFont method 我在一个中定义了这些方法NSWindowController子类 IBAction showFontPanel id sender NSFontPa
  • 在 WPF 中创建一个漂亮的 GUI

    我需要创建一个桌面 CAD 应用程序 它本质上应该有一个漂亮的现代 GUI 我正在考虑创建一个 WPF 应用程序 以便拥有丰富的用户界面 有人能给我推荐一个设计良好的 WPF 桌面应用程序 GUI 框架吗 我在这个视频中发现了一些很酷的 G
  • SQLDeveloper:执行当前行而不突出显示

    在 Toad 中 我们可以轻松执行当前行 而无需突出显示它 假设您有一个这样的工作表 select from item cursor here select from product 当我点击CTRL Enter我只想要要执行光标的行 在
  • 从 application.properties 文件中读取 spring @Retryable 的 maxAttempts

    Retryable value Exception class maxAttempts 3 public Boolean sendMessageService Request request maxAttempts 参数 Retryable
  • MVVM light 中的异步命令执行

    我想知道为什么 MVVM light 缺少异步执行命令 我相信在很多情况下这都是有用的 所以让我举一个例子 假设我们的 UI 包含一个包含多个屏幕的容器 用户可以关闭特定屏幕或具有多个屏幕的容器 假设用户已对容器发出关闭命令 容器反过来在每
  • 如何从 Android 应用程序中调用 Mono for Android 类?

    我在 Mono for Android 项目中创建了一个相当简单的 Activity Activity Label AndroidApplication1 MainLauncher true Icon drawable icon publi
  • Liquibase 未找到且未创建 Spring Boot H2 数据库

    我正在尝试创建一个带有嵌入式数据库 H2 的 Spring Boot 应用程序 并在应用程序启动时使用 liquibase 创建数据 但绝对没有任何效果 当我转到 http localhost 8080 h2 console 并尝试登录 j
  • Android 复选框在更改之前监听点击

    我有一个要求 为特定设置显示一个复选框 当用户点击复选框时 我想显示一个警报对话框 只有当用户点击确认按钮 或类似按钮 时 复选框才会发生变化 我的观点是OnCheckedChanged侦听器仅在复选框更改状态后触发 而我想在更改状态之前侦
  • 如何使用 jira-ruby gem 更改 ruby​​ 中问题的转换?

    我正在尝试使用 Jira ruby gem 访问 ruby 中的 jira https rubygems org gems jira ruby https rubygems org gems jira ruby 但我找不到如何更改转换 我只
  • 变量查找:为什么变量的 ** 比值的慢得多

    我读过关于math sqrt比 今天我尝试了 但有趣的不是两者之间的时差 而是两者之间的时差 与变量和 具有值 value1 10 1 value2 0 5 timeit value1 value2 1000000 loops best o
  • 如何在 .NET 中对单个对象进行数据绑定?

    我想使用一个公开数据源属性的组件 但我只想使用简单的对象 而不是向数据源提供整个对象列表 有什么办法可以做到这一点吗 提到的组件是 DevExpress XtraDataLayout DataLayoutControl 但这与问题完全无关
  • 将 django 项目从 1.3.7 升级到 1.6 或 1.7 的最佳方法是什么

    我有一个 Django 项目需要升级 我应该在 1 6 上创建一个新项目并将 Django 1 3 逐一转换到 1 6 还是有其他简单的方法 什么是文档建议 https docs djangoproject com en 1 6 howto
  • 单击创建暗淡背景

    希望不要太模糊 我想做的就是在单击链接后使整个页面变暗 我会想象有div style height 100 width 100 具有高z index 以覆盖网页 我的问题是切换这个div 我不确定我应该用什么来完成这个任务 Demos 使用
  • 仅使用 ExecutorService 中的线程子集

    在典型的JAVA应用程序中 配置一个全局ExecutorService来管理全局线程池 假设我配置了一个包含 100 个线程的固定线程池 ExecutorService threadPool Executors newFixedThread
  • 导入 subprocess32 时出现问题

    我正在尝试通过 buildroot 安装 python 2 7 安装 subprocess32 它似乎安装正确 但当我将其导入嵌入式系统时 出现错误 gt gt gt import subprocess32 usr lib python2