【问题标题】:OpenSSL / libcrypto.dylib Problem with Package Control in Sublime Text 3Sublime Text 3 中包控制的 OpenSSL / libcrypto.dylib 问题
【发布时间】:2020-12-08 15:58:48
【问题描述】:

在 MacOS、Catalina 10.15.6 上运行的 Sublime Text 3 中未加载包控制。

命令面板中不显示任何包控制命令。

我检查了 Package Control 不在 ignored_packages 中,手动重新安装了 Package Control(多次),甚至卸载并重新安装了 Sublime Text 3。

当我启动 Sublime Text 3 时,当它尝试加载 Package Control 时,控制台中会显示以下错误。看起来这个问题在某种程度上与 OpenSSL 有关,特别是与 libcrypto.dylib 文件有关。

我最近使用 Homebrew 更新/升级了我的系统,并怀疑在更新过程中发生了导致问题的问题。

reloading plugin Package Control.Package Control
Traceback (most recent call last):
  File "/Applications/Sublime Text.app/Contents/MacOS/sublime_plugin.py", line 125, in reload_plugin
    m = importlib.import_module(modulename)
  File "./python3.3/importlib/__init__.py", line 90, in import_module
  File "<frozen importlib._bootstrap>", line 1584, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1565, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1532, in _find_and_load_unlocked
  File "/Applications/Sublime Text.app/Contents/MacOS/sublime_plugin.py", line 1199, in load_module
    exec(compile(source, source_path, 'exec'), mod.__dict__)
  File "/Users/bader/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package/Package Control.py", line 89, in <module>
  File "<frozen importlib._bootstrap>", line 1565, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1532, in _find_and_load_unlocked
  File "/Applications/Sublime Text.app/Contents/MacOS/sublime_plugin.py", line 1199, in load_module
    exec(compile(source, source_path, 'exec'), mod.__dict__)
  File "/Users/bader/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package/package_control/commands/__init__.py", line 3, in <module>
  File "<frozen importlib._bootstrap>", line 1565, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1532, in _find_and_load_unlocked
  File "/Applications/Sublime Text.app/Contents/MacOS/sublime_plugin.py", line 1199, in load_module
    exec(compile(source, source_path, 'exec'), mod.__dict__)
  File "/Users/bader/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package/package_control/commands/advanced_install_package_command.py", line 10, in <module>
  File "<frozen importlib._bootstrap>", line 1565, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1532, in _find_and_load_unlocked
  File "/Applications/Sublime Text.app/Contents/MacOS/sublime_plugin.py", line 1199, in load_module
    exec(compile(source, source_path, 'exec'), mod.__dict__)
  File "/Users/bader/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package/package_control/package_manager.py", line 34, in <module>
  File "<frozen importlib._bootstrap>", line 1565, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1532, in _find_and_load_unlocked
  File "/Applications/Sublime Text.app/Contents/MacOS/sublime_plugin.py", line 1199, in load_module
    exec(compile(source, source_path, 'exec'), mod.__dict__)
  File "/Users/bader/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package/package_control/downloaders/__init__.py", line 20, in <module>
  File "<frozen importlib._bootstrap>", line 1565, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1532, in _find_and_load_unlocked
  File "/Applications/Sublime Text.app/Contents/MacOS/sublime_plugin.py", line 1199, in load_module
    exec(compile(source, source_path, 'exec'), mod.__dict__)
  File "/Users/bader/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package/package_control/downloaders/oscrypto_downloader.py", line 44, in <module>
  File "<frozen importlib._bootstrap>", line 1565, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1532, in _find_and_load_unlocked
  File "/Applications/Sublime Text.app/Contents/MacOS/sublime_plugin.py", line 1199, in load_module
    exec(compile(source, source_path, 'exec'), mod.__dict__)
  File "/Users/bader/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package/package_control/deps/oscrypto/tls.py", line 11, in <module>
  File "<frozen importlib._bootstrap>", line 1565, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1532, in _find_and_load_unlocked
  File "/Applications/Sublime Text.app/Contents/MacOS/sublime_plugin.py", line 1199, in load_module
    exec(compile(source, source_path, 'exec'), mod.__dict__)
  File "/Users/bader/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package/package_control/deps/oscrypto/_mac/tls.py", line 39, in <module>
  File "<frozen importlib._bootstrap>", line 1565, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1532, in _find_and_load_unlocked
  File "/Applications/Sublime Text.app/Contents/MacOS/sublime_plugin.py", line 1199, in load_module
    exec(compile(source, source_path, 'exec'), mod.__dict__)
  File "/Users/bader/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package/package_control/deps/oscrypto/_mac/util.py", line 208, in <module>
  File "<frozen importlib._bootstrap>", line 1565, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1532, in _find_and_load_unlocked
  File "/Applications/Sublime Text.app/Contents/MacOS/sublime_plugin.py", line 1199, in load_module
    exec(compile(source, source_path, 'exec'), mod.__dict__)
  File "/Users/bader/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package/package_control/deps/oscrypto/_openssl/_libcrypto.py", line 15, in <module>
  File "<frozen importlib._bootstrap>", line 1565, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1532, in _find_and_load_unlocked
  File "/Applications/Sublime Text.app/Contents/MacOS/sublime_plugin.py", line 1199, in load_module
    exec(compile(source, source_path, 'exec'), mod.__dict__)
  File "/Users/bader/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package/package_control/deps/oscrypto/_openssl/_libcrypto_ctypes.py", line 30, in <module>
  File "./python3.3/ctypes/__init__.py", line 353, in __init__
OSError: dlopen(/usr/local/lib/libcrypto.dylib, 6): no suitable image found.  Did find:
    /usr/local/lib/libcrypto.dylib: mach-o, but wrong architecture
    /usr/local/lib/libcrypto.dylib: mach-o, but wrong architecture

【问题讨论】:

  • 如果您真的很着急,请查看 Discord 上的 Sublime Text #support channel。 Package Control 的创建者 Will Bond 实际上现在就在那里。他或其他人应该能够帮助你。不过,这看起来确实是您的 Homebrew 升级的问题 - 有什么方法可以降级/重新安装拥有 libcryptoopenssl,或者检查以确保它没有意外安装 Apple Silicon 的文件而不是x86_64?
  • 更有可能的是,它安装了 32 位文件而不是 64 位文件,反之亦然。尝试删除(您可能需要 --force 它)并重新安装 openssl - 这可能会成功。或者,您可以只使用 MacPorts :P
  • 您也可以在 Sublime 总部的Technical Support 论坛中提问,您可以添加@wbond 以提醒 Will Bond,但其他人也可以提供帮助。如果您在其他地方找到解决方案,请花时间将其写下来并将其作为答案添加到此页面上 - 如果您不知道可以发送至 answer your own question

标签: sublimetext3 sublimetext sublime-text-plugin


【解决方案1】:

@MattDMo,你说得对,这是一个 32 位与 64 位的问题,而 Will Bond 会有所帮助。在 Package Control 上发布 ticket 后,@wbond 立即回复建议我移动文件 /usr/local/lib/libcrypto.dylib

为了完整起见,@wbond 要求提供终端命令的输出:

file /usr/local/lib/libcrypto.dylib

返回

/usr/local/lib/libcrypto.dylib: Mach-O dynamically linked shared library i386

他写道:

嗯,我认为没有 macOS 11 的 32 位版本。我会移动该文件并重新启动 Sublime Text。

他是对的,而且效果很好。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-20
    • 1970-01-01
    • 2014-06-29
    • 2015-12-17
    • 1970-01-01
    相关资源
    最近更新 更多