PY2EXE: как вывести & # 8220; * _ D.PYD & # 8221; файл (отладка) и использовать MSVCR80D.DLL?

StackOverflow https://stackoverflow.com/questions/814078

  •  03-07-2019
  •  | 
  •  

Вопрос

Конфигурация отладки моего приложения построена на:

  PYTHON25_D.DLL
  MSVCR80D.DLL

Мы используем файлы Python .PYD в нашем приложении. Некоторые из этих .PYD преобразуются в .PY с помощью PY2EXE в .PYD.

Когда я запускаю PY2EXE на MYSCRIPT.PY, я получаю следующие .PYD и зависимости:

MYSCRIPT.PYD
  PYTHON25.DLL
  MSVCR71.DLL
  KERNEL32.DLL  

То, что я хочу , - это отладочная версия, созданная на основе той же библиотеки времени выполнения C, которую использует мое приложение (MSVCR80D.DLL).

Как я могу конвертировать MYSCRIPT.PY в:

MYSCRIPT_D.PYD                 <-- debug version of .PYD end with "_D"
  PYTHON25_D.DLL               <-- debug version of Python
  MSVCR80D.DLL                 <-- ver 8.0, Debug
  KERNEL32.DLL

Как это можно сделать?

Это было полезно?

Решение

Обратите внимание, что отладочные библиотеки MS не распространяются - вы не должны давать им деньги. Однако py2exe будет правильно собирать отладочные версии всех dll, если вы запускаете отладочную версию Python и отлаженную откомпилированную версию py2exe.

Другие советы

это не будет работать, потому что MSVCR80D - это параллельная среда выполнения

Вам нужно будет либо сказать пользователю, чтобы он непосредственно устанавливал среду выполнения MS, либо вручную скопировать файлы манифеста. Также MSVCR71.DLL не выбран для вас. Это для Python, так что вам, возможно, все равно придется сохранить его.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top