Py2App не удается подписать MacOS на liblzma.5.dylib - PullRequest
1 голос
/ 30 мая 2020

Я обновляю проект с Python2 .7 до Python3 .8, одновременно решая проблемы развертывания / подписания в MacOS Mojave и Catalina.

Приложение Python построить с использованием Py2app, а затем подписать, но при подписании не удается выполнить ровно один файл:

codesign --sign "${IDENTITY}"  --entitlements ../entitleme.plist  --deep "demo.app/"          --force    --options runtime
demo.app/: main executable failed strict validation
In subcomponent: /demo.app/Contents/Frameworks/liblzma.5.dylib

и без строгого:

codesign --sign "${IDENTITY}" --entitlements ../entitleme.plist  --deep "demo.app/" --no-strict --force  --options runtime
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate: the __LINKEDIT segment does not cover the end of the file (can't be processed) in: demo.app/Contents/Frameworks/liblzma.5.dylib
demo.app/: the codesign_allocate helper tool cannot be found or used
In subcomponent: demo.app/Contents/Frameworks/liblzma.5.dylib

Другой вопрос здесь указывает, что PyInstaller или в других системах были подобные проблемы, и это неполное решение исправило их. Однако фактическое решение (если оно найдено) кажется непригодным для правок или изменений связанного материала. Кроме того, я отмечаю, что codesign_allocate указан как не найденный, но он находится в пути и работает нормально, поэтому я подозреваю, что его использование в файле с ошибкой сегмента __LINKEDIT является плохим.

Похоже, что liblzma исходит из сжатых алгоритмов, включенных библиотекой во время сборки py2app, и попытки продолжить обновление до сих пор были безрезультатными - хотя я начал задаваться вопросом, исправит ли перекомпиляция исходного материала на последней версии MacOS эти ошибки.

Есть ли известный путь решения этой проблемы?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...