Python приложение, созданное с отсутствующим py2app _sysconfigdata - PullRequest
0 голосов
/ 02 апреля 2020

Я пытаюсь создать отдельное приложение Python 2.7 на MacOS (оно опирается на какой-то старый код) с использованием py2app. Моя программа использует несколько пакетов, включая pyne. Программа использует среду conda для управления пакетами (которая находится в отдельном каталоге), и я пытаюсь собрать программу с этой средой. Приложение прекрасно собирается с помощью py2app, но когда я запускаю его через терминал, оно выдает следующую ошибку:

  File "material.pyx", line 28, in init pyne.material
  File "tables/__init__.pyc", line 142, in <module>
  File "tables/tests/__init__.pyc", line 22, in <module>
  File "tables/tests/common.pyc", line 27, in <module>
  File "pkg_resources/__init__.pyc", line 959, in <module>
  File "pkg_resources/__init__.pyc", line 963, in Environment
  File "pkg_resources/__init__.pyc", line 190, in get_supported_platform
  File "pkg_resources/__init__.pyc", line 395, in get_build_platform
  File "sysconfig.pyc", line 618, in get_platform
  File "sysconfig.pyc", line 482, in get_config_vars
  File "sysconfig.pyc", line 365, in _init_posix
ImportError: No module named _sysconfigdata

Если посмотреть в моей системе, то похоже, что файл _sysconfigdata находится в вопросе. в

/anaconda3/envs/ENVIRONMENT_NAME/lib/python2.7/_sysconfigdata.py

Мой setup.py файл выглядит следующим образом:

    from setuptools import setup

    APP = ['app.py']
    DATA_FILES = ["file1.csv", "folder1"]
    PACKAGES = ["pyne"]
    OPTIONS = {"packages": PACKAGES}

    setup(
        app=APP,
        data_files=DATA_FILES,
        options={'py2app': OPTIONS},
        setup_requires=['py2app'],
        name="NAME",
        include_package_data=True,
    )

Я все еще довольно плохо знаком с использованием py2app, и у меня возникают проблемы с выяснением, как включить это _sysconfigdata файл в программе. Добавление его в DATA_FILES, похоже, не помогает. Как лучше всего решить эту проблему?

1 Ответ

0 голосов
/ 05 апреля 2020

Я обнаружил, что эта проблема исчезла, если я отредактировал список PACKAGES на

PACKAGES = PACKAGES = ["pyne", "_sysconfigdata"]

Я думаю, py2app иначе не знал, что _sysconfigdata был важным модулем.

...