在 macOS 12.3 之后将 Python 2.7 添加到应用程序包中不再包含 Python

发布于 2025-01-18 14:00:00 字数 1073 浏览 1 评论 0原文

去年,我从 Codeweavers 收到了一个PortJump数据包,用于开源 Windows 软件,而不是知道它使用 macOS 提供的 Python 2.7 <仅限 12.3(Python 2.7 到 2020 年已被标记为弃用,Apple 甚至在 2019 年宣布将来不再包含它。)

Termination Reason: Namespace DYLD, Code 1 Library missing. Library not loaded: /System/Library/Frameworks/Python.framework/Versions/2.7/Pyt
Referenced from: /Applications/EasyCash&Tax.app/Contents/MacOS/EasyCash&Tax
Reason: tried: '/System/Library/Frameworks/Python.framework/Versions/2.7/Python' (no such file)
(terminated at launch; ignore backtrace) 

这意味着每个更新到 12.3 的用户将无法再启动该软件。让软件在 macOS 上再次运行的最佳方法是什么(除了再次向 Codeweavers 支付数千美元,只是为了从底层 Crossover 20 转移到 21 之外——考虑到 Codeweavers 已经在 21 中取代了 Python 2.7 参考) )?

更准确地说,回答这些问题中的任何一个都会对我有帮助:

  1. 是否有机会在操作系统级别快速替换丢失的Python解释器,以便内置的Crossover再次工作?
  2. 需要采取哪些步骤才能将 Python 2.7 包含在应用程序包中,例如在哪里引用它?
  3. 有没有一种简单的方法可以迁移到 Python 3?
  4. 据我了解,Python仅用于Crossover GUI,我的软件不需要它。也许 Python 引用可以全部删除?

(我不是 Mac 本地人,所以如果我没有抓住要点,请耐心等待。)

Last year I got a PortJump packet from Codeweavers for an open source Windows software, not knowing that it uses Python 2.7 supplied by macOS < 12.3 only (Python 2.7 was marked deprecated by 2020 and Apple even announced that it wouldn't be included in the future anymore back in 2019.)

Termination Reason: Namespace DYLD, Code 1 Library missing. Library not loaded: /System/Library/Frameworks/Python.framework/Versions/2.7/Pyt
Referenced from: /Applications/EasyCash&Tax.app/Contents/MacOS/EasyCash&Tax
Reason: tried: '/System/Library/Frameworks/Python.framework/Versions/2.7/Python' (no such file)
(terminated at launch; ignore backtrace) 

This means that every user updating to 12.3 won't be able to start the software any longer. What is the best approach to make the software run again on macOS (other than to pay Codeweavers some thousands of $$ again, just to move from the underlying Crossover 20 to 21 -- given that Codeweavers have replaced the Python 2.7 reference already in 21)?

To be more precise, any of these questions answered would help me:

  1. Is there a chance to quickly replace the missing Python interpreter on OS level so the built-in Crossover would work again?
  2. What steps need to be taken to include a Python 2.7 in the app packet, e.g. where is it referenced?
  3. Is there an easy way to move to Python 3?
  4. As I understand, Python is just used for the Crossover GUI, which isn't needed by my software. Maybe the Python reference can be removed alltogether?

(I'm not a Mac-native, so bear with me, if I'm missing the point.)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

你不是我要的菜∠ 2025-01-25 14:00:00

从codeweavers获得了补丁,但

But I stumbled upon 信用文件中的注释关于“来自python.org的站点模块,已修改为忽略/library/python”。如上所述,MacOS中的Python路径似乎存在问题,如上所述在这里 btw。

即使这个答案可能没有完全满足,也许它对某人有帮助。如果您发现更多详细信息,请发表评论。

Got a patch from Codeweavers but the the difference is hard to spot as they just updated the Crossover version from 20.0 to 20.4, including a completely new wine version.

But I stumbled upon a note in the credits file about "the site module from python.org, modified to ignore /Library/Python". There seems to be an issue with python paths in MacOS as mentioned here btw.

Even if this answer may be not fully satisfying, maybe it helps someone. If you discover further details, please leave a comment.

浅唱々樱花落 2025-01-25 14:00:00

Installing python 2.7.18 resolved this issue for me.
Download it from the official site https://www.python.org/ftp/python/2.7.18/python-2.7.18-macosx10.9.pkg

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文