安装pytorch时遇到的错误

动态链接库执行栈

Traceback (most recent call last):
  File "main.py", line 7, in <module>
    from train_CLmodel import train_CLmodel
  File "/home/dwpeng/micromamba/envs/comebin/bin/COMEBin/train_CLmodel.py", line 1, in <module>
    import torch
  File "/home/dwpeng/micromamba/envs/comebin/lib/python3.7/site-packages/torch/__init__.py", line 197, in <module>
    from torch._C import *  # noqa: F403
ImportError: libtorch_cpu.so: cannot enable executable stack as shared object requires: Invalid argument

在linux上可以安装一个patchelf(已测试,可行)

sudo apt install patchelf
sudo patchelf --clear-execstack libtorch_cpu.so

或者可以用execstack(Deepseek给的一个解决方法,没有测试)

sudo apt-get install execstack
execstack -c /path/to/libtorch_cpu.so

MKL等级过高

Traceback (most recent call last):
  File "main.py", line 7, in <module>
    from train_CLmodel import train_CLmodel
  File "/home/dwpeng/micromamba/envs/comebin/bin/COMEBin/train_CLmodel.py", line 1, in <module>
    import torch
  File "/home/dwpeng/micromamba/envs/comebin/lib/python3.7/site-packages/torch/__init__.py", line 197, in <module>
    from torch._C import *  # noqa: F403
ImportError: /home/dwpeng/micromamba/envs/comebin/lib/python3.7/site-packages/torch/lib/libtorch_cpu.so: undefined symbol: iJIT_NotifyEvent

是由于MKL这个库版本太高造成的,可以对MKL降级

conda install mkl=2024.0 -c conda-forge -y