如何解决pyenv virtualenv 的 pycharm 错误:SDK 似乎无效
在尝试选择通过 pyenv virtualenv 创建的 python bin 作为解释器时,我遇到了 pycharm 问题。
var csrf = document.querySelector('meta[name="csrf-token"]').content;
我想提供更多细节,但 pycharm 不提供任何额外的输出。
更奇怪的是,我不使用 python 3.10,virtualenv 是用 python 3.8.5 创建的。
当使用 Cannot set up a python SDK
at Python 3.10 (remote_maax) ($HOME/.pyenv/versions/remote_maax/bin/python).
The SDK seems invalid.
从 shell 手动激活时,virtualenv 似乎也可以工作。我可以 pip 安装包并正确使用它们。
我正在新安装 pop os 20.10 (ubuntu)、内核 5.8.0-7642-generic、pyenv 1.2.22、pycharm community 2020.3.3,通过 flatpak 安装。
有谁知道这是什么原因造成的?
编辑:通过从 shell 启动 pycharm 发现了更多细节
pyenv activate
不幸的是,我确实安装了 libc 2.32,所以现在我更加困惑了。
com.jetbrains.python.sdk.InvalidSdkException: Failed to determine Python's sys.path value:
STDOUT:
STDERR: /home/gio/.pyenv/versions/remote_maax/bin/python3.8: /usr/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by /home/gio/.pyenv/versions/remote_maax/bin/python3.8)
at com.jetbrains.python.sdk.PythonSdkType.getSysPathsFromScript(PythonSdkType.java:457)
at com.jetbrains.python.sdk.PythonSdkType.getSysPath(PythonSdkType.java:439)
at com.jetbrains.python.sdk.PythonSdkUpdater.evaluateSysPath(PythonSdkUpdater.java:576)
at com.jetbrains.python.sdk.PythonSdkUpdater.getLocalSdkPaths(PythonSdkUpdater.java:436)
at com.jetbrains.python.sdk.PythonSdkUpdater.updateLocalSdkPaths(PythonSdkUpdater.java:400)
at com.jetbrains.python.sdk.PythonSdkUpdater.updateLocalSdkVersionAndPaths(PythonSdkUpdater.java:370)
at com.jetbrains.python.sdk.PythonSdkUpdater.lambda$updateVersionAndPathsSynchronouslyAndScheduleRemaining$0(PythonSdkUpdater.java:267)
at com.intellij.openapi.progress.impl.CoreProgressManager$1.run(CoreProgressManager.java:275)
at com.intellij.openapi.progress.impl.CoreProgressManager$TaskRunnable.run(CoreProgressManager.java:962)
at com.intellij.openapi.progress.impl.CoreProgressManager$4.run(CoreProgressManager.java:520)
at com.intellij.openapi.progress.impl.ProgressRunner.lambda$new$0(ProgressRunner.java:79)
at com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$3(ProgressRunner.java:235)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:178)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:658)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:610)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:65)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:165)
at com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$4(ProgressRunner.java:235)
at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1700)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
at java.base/java.lang.Thread.run(Thread.java:834)
解决方法
Pycharm 的 flatpack 版本似乎有问题。我遇到了完全相同的问题(PopOS、Pycharm Professional 2020.3)。最后,我用独立版本替换了 flatpack 版本(我从 Jetbrains 站点下载了 Pycharm)并且在完全相同的环境中工作得很好。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。